Materi 04 · Core ML

Supervised Learning

Tipe ML paling banyak dipakai di industri. Belajar dari data berlabel untuk memprediksi nilai (regresi) atau kategori (klasifikasi). Pondasi yang harus kamu kuasai.

⏱ 30 Menit🎯 Beginner-Intermediate📚 Module 4/15

1. Apa Itu Supervised Learning?

Pembelajaran dari pasangan (input, output) di mana output sudah dilabel manusia. Model belajar memetakan input ke output, lalu bisa prediksi output untuk input baru yang belum pernah dilihat.

Analogi Sederhana

Bayangkan mengajari anak membedakan kucing & anjing. Kamu tunjuk ratusan foto: "ini kucing", "ini anjing", "ini kucing lagi". Setelah cukup banyak contoh, anak bisa mengidentifikasi binatang baru. Itu supervised learning.

2. Dua Jenis Utama

📈

Regresi (Regression)

Prediksi nilai kontinu. Output: angka. Contoh: harga rumah, suhu besok, demand 30 hari ke depan.

🎯

Klasifikasi (Classification)

Prediksi kategori. Output: kelas. Contoh: spam/bukan, sentimen positif/negatif, gambar kucing/anjing.

AspekRegresiKlasifikasi
OutputBilangan kontinuLabel diskrit (kelas)
Loss FunctionMSE, MAE, RMSECross-entropy, log-loss
MetricR², MAE, MAPEAccuracy, F1, AUC
AlgoritmaLinear Reg, Polynomial, TreeLogistic, SVM, RF, NN
ContohForecast revenueDeteksi fraud

3. Linear Regression

Model paling sederhana — fit garis lurus melalui data. Tetap relevan karena interpretable dan jadi baseline.

Linear Regression ŷ = w·x + b
// untuk multivariate:
ŷ = w₁·x₁ + w₂·x₂ + ... + wₙ·xₙ + b
// w = weights (slope), b = bias (intercept)
Loss Function — Mean Squared Error MSE = (1/n) · Σ (yᵢ − ŷᵢ)²
// Goal training: minimize MSE

4. Logistic Regression

Walau namanya "regression", ini algoritma klasifikasi binary. Output di-pass ke fungsi sigmoid → probabilitas kelas (0-1).

Sigmoid Activation σ(z) = 1 / (1 + e^(−z))
// z = w·x + b. Output range: 0 ke 1
Decision Rule if σ(z) ≥ 0.5: predict class 1
else: predict class 0
// Threshold 0.5 bisa di-adjust untuk tradeoff precision/recall

5. Workflow Supervised Learning

7 Tahap Standar

1. Frame Problem — definisikan input, output, dan apakah regresi/klasifikasi.
2. Collect Data — kumpulkan dataset berlabel berkualitas (garbage in, garbage out).
3. Explore & Clean — EDA, handle missing, outlier, duplikat.
4. Feature Engineering — encoding, scaling, feature creation.
5. Split Data — train (70%), validation (15%), test (15%).
6. Train & Tune — pilih algoritma, hyperparameter tuning.
7. Evaluate & Deploy — metric pada test set, deploy ke production.

6. Pitfalls yang Sering Terjadi

⚠️ Hati-hati

Data Leakage

Jangan masukkan informasi yang tidak akan tersedia saat prediksi. Contoh: prediksi gagal bayar tapi feature-nya termasuk "tunggakan bulan terakhir" yang baru ada setelah event terjadi. Model akan terlihat "sangat akurat" di training tapi gagal total di production.

7. Studi Kasus

🌟 Real World

Kredivo: Credit Scoring dengan ML

Fintech Kredivo memakai supervised learning untuk predict gagal bayar (klasifikasi) dan credit limit (regresi) berdasarkan ratusan feature: histori transaksi, demografi, behavior aplikasi, alternative data dari smartphone.

Model tradisional bank butuh slip gaji + agunan. Model ML Kredivo bisa setujui aplikasi dalam 2 menit dengan default rate kompetitif. Pelajaran: supervised learning + alternative data = financial inclusion untuk segmen unbanked.

📝 Tugas

Build Pertama Pakai Scikit-learn

  1. Buka Google Colab. Install scikit-learn (sudah preinstalled).
  2. Load dataset iris dari sklearn.datasets — klasifikasi 3 jenis bunga.
  3. Split data 80% train / 20% test.
  4. Train Logistic Regression dan Random Forest. Bandingkan accuracy.
  5. Plot confusion matrix dan analisis: kelas mana yang paling sulit di-classify?
  6. Coba dataset Boston housing — regresi harga rumah. Pakai LinearRegression. Hitung R² dan MAE.

Rangkuman