Machine Learning Fundamental 4
π Pertemuan 4: Supervised Learning β Regresi
π― Tujuan Pembelajaran
Setelah mengikuti pertemuan ini, mahasiswa mampu:
- Memahami konsep Supervised Learning
- Memahami perbedaan regresi dan klasifikasi
- Memahami konsep Linear Regression
- Mengimplementasikan Linear Regression dengan scikit-learn
- Mengevaluasi model regresi menggunakan metrik yang tepat
- Menginterpretasikan hasil model
π§ 1. Apa itu Supervised Learning?
Supervised Learning adalah metode machine learning yang menggunakan data berlabel.
Struktur dataset:
Fitur (X) β Target (y)
Contoh:
- Prediksi harga rumah
- Prediksi penjualan
- Prediksi suhu
- Prediksi nilai saham
π Jenis Supervised Learning
| Tipe | Target |
|---|---|
| Regresi | Numerik (kontinu) |
| Klasifikasi | Kategori (diskrit) |
Hari ini fokus: Regresi
π 2. Konsep Regresi
Regresi digunakan untuk memprediksi nilai kontinu.
Contoh:
- Harga rumah
- Pendapatan
- Skor ujian
- Jumlah penjualan
π 3. Linear Regression
Model regresi paling dasar.
Persamaan:1
y = \beta_0 + \beta_1 x
Untuk multiple feature:1
y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + ... + \beta_n x_n
Dimana:
Ξ²β = intercept
Ξ²ββ¦Ξ²n = koefisien
x = fitur
y = target
π 4. Implementasi Linear Regression (Praktik)
Gunakan dataset bawaan scikit-learn.
π Import Library
1 | import pandas as pd |
π Load Dataset
1 | data = fetch_california_housing() |
π Train-Test Split
1 | X_train, X_test, y_train, y_test = train_test_split( |
π Training Model
1 | model = LinearRegression() |
π Prediksi
1 | y_pred = model.predict(X_test) |
π 5. Evaluasi Model Regresi
π― Mean Squared Error (MSE)
1 | MSE = \frac{1}{n} \sum (y - \hat{y})^2 |
1 | mse = mean_squared_error(y_test, y_pred) |
Semakin kecil β semakin baik.
π― Root Mean Squared Error (RMSE)
1 | rmse = np.sqrt(mse) |
π― RΒ² Score (Coefficient of Determination)
1 | R^2 = 1 - \frac{SS_{res}}{SS_{tot}} |
1 | r2 = r2_score(y_test, y_pred) |
Interpretasi:
- 1 β sempurna
- 0 β tidak lebih baik dari rata-rata
- < 0 β buruk
π 6. Visualisasi Hasil Prediksi
1 | plt.figure() |
Semakin mendekati garis diagonal β semakin baik.
π 7. Interpretasi Koefisien
1 | coefficients = pd.DataFrame({ |
Koefisien positif β fitur meningkatkan nilai target
Koefisien negatif β fitur menurunkan nilai target
β οΈ 8. Overfitting & Underfitting
Kondisi Ciri:
- Overfitting Akurasi train tinggi, test rendah
- Underfitting Akurasi train & test rendah
Linear Regression sederhana biasanya cenderung underfit pada data kompleks.
π§ͺ Praktikum Ringkas (Full Pipeline)
1 | data = fetch_california_housing() |
π Tugas Mandiri
- Jalankan Linear Regression pada dataset California Housing.
- Laporkan:
- Nilai MSE
- RMSE
- RΒ² Score
- Interpretasikan:
- Apakah model sudah cukup baik?
- Fitur mana paling berpengaruh?
- Dokumentasikan menggunakan template: https://github.com/AzharRizkiZ/Template-DS-ML
- Upload ke GitHub.
π Tugas Tambahan
- Ambil dataset regresi dari Kaggle.
- Lakukan:
- EDA
- Preprocessing
- Linear Regression
- Evaluasi
- Buat laporan lengkap.
- Upload ke GitHub.
π Target Kompetensi Setelah Pertemuan 4
Mahasiswa mampu:
- Mengimplementasikan regresi
- Mengevaluasi model regresi
- Menginterpretasikan hasil model
- Menghubungkan teori dengan praktik



