Center of Data Science UII

Media Pembelajaran Interaktif Fundamental Sains Data (FSD)

Center of Data Science (CDS) – Informatika, Universitas Islam Indonesia

Continuous Optimization & Parametric Regression

Linear Regression & Gradient Descent: Optimasi Parameter Model

1 Model Hipotesis Linear
\[h_\theta(x) = \theta_0 + \theta_1 x\]

\(\theta_0\) adalah Intercept (titik potong sumbu Y saat \(x=0\)), dan \(\theta_1\) adalah Slope (kemiringan garis).

2 Fungsi Biaya MSE \(J(\theta)\)
\[J(\theta) = \frac{1}{2m} \sum_{i=1}^m (h_\theta(x^{(i)}) - y^{(i)})^2\]

Mengukur rata-rata kuadrat selisih antara tebakan model dan nilai asli data. Bentuk kurva mangkok konveks (selalu memiliki 1 minimum global).

3 Pembaruan Gradien Simultan
\[\theta_j := \theta_j - \alpha \frac{\partial J}{\partial \theta_j}\]

Parameter digeser berlawanan arah vektor gradien secara simultan dengan laju belajar \(\alpha\) (Learning Rate).

Dataset:
Learning Rate \(\alpha\): 0.050
Epoch: 0
Cost J(θ): 0.000
Slope θ₁: 0.000
Intercept θ₀: 0.000
Ruang Data: Garis Regresi & Residual Error Garis Merah Putus-putus = Error \((h - y)\)
Eksplorasi Manual Parameter:
Slope \(\theta_1\):
Intercept \(\theta_0\):
Uji Prediksi Model:
Input \(x\): ➔ Prediksi \(\hat{y}\): 3.00

Menghitung \(\hat{y} = \theta_0 + \theta_1 x\) secara live mengikuti parameter garis saat ini.

Lembah Kontur Biaya \(J(\theta_0, \theta_1)\) Minimum Global
Kurva Penurunan Biaya \(J(\theta)\) per Epoch: Konvergen Stabil
Kalkulasi Matematika Sinkron Real-time

Papan Perhitungan Step-by-Step Gradient Descent

Data \(i\) Fitur \(x^{(i)}\) Aktual \(y^{(i)}\) Prediksi \(h_\theta(x) = \theta_0 + \theta_1 x\) Error \((h - y)\) Kuadrat Error \((h - y)^2\) Gradien \(\theta_0\): \((h - y)\) Gradien \(\theta_1\): \((h - y)x\)
1. Nilai Cost Function \(J(\theta)\):
2. Pembaruan Intercept \(\theta_0\):
3. Pembaruan Slope \(\theta_1\):
Parameter \(\theta_0\): 0.00 ➔ 0.25
Parameter \(\theta_1\): 1.00 ➔ 1.55
Cost Function \(J(\theta)\): 4.50 ➔ 0.58
Penurunan Biaya: -87.1%
Penurunan Kalkulus Matematis (Derivation via Chain Rule)

Teori Turunan Parsial Gradient Descent: Dari Mana Rumus Pembaruan Berasal?

Chain Rule & Gradient Vector
1 Turunan Parsial terhadap Intercept \(\theta_0\) \(\partial J / \partial \theta_0\)

Fungsi biaya kuadrat: \(J(\theta) = \frac{1}{2m} \sum_{i=1}^m \Big( (\theta_0 + \theta_1 x^{(i)}) - y^{(i)} \Big)^2\). Misalkan bagian dalam kuadrat adalah \(u = \theta_0 + \theta_1 x^{(i)} - y^{(i)}\).

// Terapkan Aturan Rantai (Chain Rule):
\[\frac{\partial J}{\partial \theta_0} = \frac{1}{2m} \sum_{i=1}^m \frac{\partial (u^2)}{\partial u} \cdot \frac{\partial u}{\partial \theta_0}\]
Karena \(\frac{\partial (u^2)}{\partial u} = 2u\) dan \(\frac{\partial u}{\partial \theta_0} = 1\):
\[\frac{\partial J}{\partial \theta_0} = \frac{1}{2m} \sum_{i=1}^m 2(h_\theta(x^{(i)}) - y^{(i)}) \cdot 1 = \mathbf{\frac{1}{m} \sum_{i=1}^m (h_\theta(x^{(i)}) - y^{(i)})}\]

Catatan Matematis: Angka 2 dari turunan pangkat membatalkan konstanta \(\frac{1}{2}\) pada fungsi biaya secara eksak (\(2 \times \frac{1}{2} = 1\)).

2 Turunan Parsial terhadap Slope \(\theta_1\) \(\partial J / \partial \theta_1\)

Dengan langkah yang sama, turunkan suku kuadrat \(u = \theta_0 + \theta_1 x^{(i)} - y^{(i)}\) terhadap parameter kemiringan \(\theta_1\).

// Terapkan Aturan Rantai (Chain Rule):
\[\frac{\partial J}{\partial \theta_1} = \frac{1}{2m} \sum_{i=1}^m \frac{\partial (u^2)}{\partial u} \cdot \frac{\partial u}{\partial \theta_1}\]
Karena \(\frac{\partial (u^2)}{\partial u} = 2u\) dan \(\frac{\partial u}{\partial \theta_1} = x^{(i)}\):
\[\frac{\partial J}{\partial \theta_1} = \frac{1}{2m} \sum_{i=1}^m 2(h_\theta(x^{(i)}) - y^{(i)}) \cdot x^{(i)} = \mathbf{\frac{1}{m} \sum_{i=1}^m (h_\theta(x^{(i)}) - y^{(i)}) \cdot x^{(i)}}\]

Inti Fisis: Faktor pengali \(x^{(i)}\) muncul karena sensitivitas slope (\(\theta_1\)) berbanding lurus dengan besaran nilai input \(x\).

Hubungan Formula Slide Perkuliahan UII vs Standar Buku Teks Machine Learning

Pada slide perkuliahan UII, formulasi disajikan dalam bentuk jumlah kuadrat murni tanpa pembagi \(m\), yaitu \(J(\theta) = \frac{1}{2} \sum (h - y)^2\) dan gradien \(\sum (h - y) x_j\). Sedangkan pada textbook machine learning standar (Andrew Ng, Scikit-learn), formulasi dinormalisasi terhadap jumlah sampel \(m\) (\(\frac{1}{2m} \sum\)). Keduanya identik dalam arah penurunan gradien; perbedaannya hanya pada skala efektif laju belajar \(\alpha\). Anda dapat mencoba kedua metode di atas lewat tombol toggle: "Slide UII \(\frac{1}{2}\sum\)" atau "Standar MSE \(\frac{1}{2m}\sum\)".

Referensi Formal: 4 Langkah Prosedur & Implementasi Bahasa R ▼
4 Langkah Prosedur Regresi Linear:
  1. Define model structure: Tentukan variabel prediktor \(X\) dan target \(Y\).
  2. Initialize parameters: Mulai dari tebakan sembarang (misal \(\theta_0 = 0, \theta_1 = 1\)).
  3. Optimize parameters: Terapkan algoritma Gradient Descent untuk meminimalkan fungsi biaya MSE.
  4. Evaluate & Predict: Gunakan model terlatih untuk memprediksi data baru.
Sintaks Komputasi Bahasa R:
# Data 3 titik Slide
x <- c(1, 2, 3)
y <- c(2, 4, 5)

# Pemodelan Regresi Linear
model <- lm(y ~ x)
summary(model)

# Prediksi data baru
predict(model, newdata = data.frame(x = 3.5))