Regresi Linear Berganda secara mendalam
Pada artikel sebelumnya, kami mendefinisikan konsep dasar regresi linier, termasuk regresi linier sederhana, fungsi biaya, matematika, dan persamaan direktrik garis lurus. Jika Anda melewatkan artikel itu, lihat tautan di bawah untuk informasi lebih lanjut.
Regresi Linear secara mendalamPada artikel ini, kami akan fokus pada jenis regresi linier lain yang disebut regresi linier berganda. Regresi linier berganda adalah teknik statistik yang digunakan untuk memodelkan hubungan antara variabel respons dan variabel prediktor berganda. Variabel respon juga dikenal sebagai variabel dependen dan variabel prediktor dikenal sebagai variabel independen. Regresi linier berganda dapat digunakan untuk membuat prediksi tentang variabel respon berdasarkan variabel prediktor.
Namun, penting untuk dicatat bahwa asumsi linearitas dan independensi kesalahan harus dipenuhi agar model menjadi valid. Regresi linier berganda sangat mirip dengan regresi linier sederhana kecuali beberapa perbedaan, yang akan kita bahas dalam artikel ini. Tujuan dari regresi linier berganda adalah untuk menemukan garis yang paling pas (atau hyperplane dalam berbagai dimensi) yang menggambarkan hubungan antara variabel respon dan variabel prediktor. Hubungan antara variabel respon dan variabel prediktor dapat digambarkan sebagai persamaan matematis:
Di mana:
- y adalah respon atau variabel dependen,
- x_1, x_2, …, x_n adalah prediktor atau variabel independen,
- x_0 adalah perpotongan y atau dikenal sebagai bias,
- dan w_1, w_2, …, w_n adalah koefisien untuk setiap variabel prediktor,
- suku kiri persamaan (yhat) mewakili nilai yang kita perkirakan berdasarkan variabel masukan (prediktor) x.
Di mana:
- w^T adalah transpose dari vektor koefisien w (juga dikenal sebagai “bobot”),
- x adalah vektor variabel prediktor,
- b adalah y-intercept atau dikenal sebagai bias,
- Σ menunjukkan jumlah dari semua pengamatan,
- dan suku kiri persamaan (yhat) merepresentasikan nilai yang kita perkirakan berdasarkan variabel masukan (prediktor) x.
Proses regresi linier berganda melibatkan pencarian nilai w's dan b. Untuk menemukan nilainya, kita perlu mendefinisikan fungsi biaya untuk regresi linier berganda dan perhatikan bahwa label fungsi biaya dinyatakan dengan huruf E. Fungsi biaya didefinisikan sebagai:
Mirip dengan regresi linier sederhana, kita perlu melakukan turunan parsial dari fungsi biaya untuk menemukan nilai optimal dari w dan b. Namun, untuk mendapatkan ekspresi untuk menemukan nilai optimal, akan lebih mudah bagi kita untuk melakukan derivasi menggunakan teknik optimasi seperti gradient descent (GD), stochastic gradient descent (SGD), atau metode Newton (NM). Jika Anda ingin mengetahui lebih lanjut tentang teknik pengoptimalan, periksa artikel ini.
Fungsi biaya penurunan gradien untuk regresi linier berganda didefinisikan sebagai:
Di mana:
- (y — Xw — b) adalah (nx 1) vektor residu,
- (ekspresi)^T menunjukkan transpos vektor atau matriks.
Setelah penurunan ini, kami dapat memperoleh ekspresi untuk menemukan koefisien.
Penting untuk dicatat bahwa untuk mengimplementasikan ini, diperlukan invers dari matriks X^TX, dan jika tidak dapat dibalik maka seseorang dapat menggunakan teknik regularisasi seperti ridge atau laso untuk mengatasi masalah non-invertibilitas. Selain mencari nilai optimal untuk variabel w, kita perlu mencari ekspresi untuk mencari nilai bias yang optimal. Namun, nilai bias biasanya adalah 1. Untuk melengkapi artikel ini, kami akan melakukan turunan parsial dari fungsi biaya sehubungan dengan parameter b untuk menemukan nilai optimal.
Di mana:
- (1) adalah vektor (D x 1) satu,
- D adalah jumlah satu dalam vektor.
import numpy as np
X = [[1, 2, 1], [2, 4, 1], [1, 2, 1], [1, 2, 1], [1, 4, 1]]
Y = [1, 2, 3, 4, 7]
X = np.array(X)
Y = np.array(Y)
w = np.linalg.solve(np.dot(X.T, X), np.dot(X.T, Y))
Yhat = np.dot(X, w)
d1 = Y - Yhat
d2 = Y - Y.mean()
r2 = 1 - d1.dot(d1) / d2.dot(d2)
from sklearn import linear_model
import numpy as np
Y = [1, 2, 3, 4, 7]
X = [[1, 2, 1], [2, 4, 1], [1, 2, 1], [1, 2, 1], [1, 4, 1]]
X = np.array(X)
Y = np.array(Y)
regr = linear_model.LinearRegression()
regr.fit(X, Y)
regr.score(X,Y)
predictedValue = regr.predict([[4, 5, 1]])
Regresi logistik
Jika Anda menyukai artikelnya, pastikan untuk mengikuti saya untuk mengetahui artikel baru saya.

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































