Contoh bisnis: Memprediksi nilai transaksi harian pengguna GoPay berdasarkan frekuensi login, usia akun, dan riwayat top-up.
Komponen
Makna
β₀ (intercept)
Nilai Y saat semua X = 0
β₁...βₙ (koefisien)
Perubahan Y per unit X
ε (error)
Residual / gangguan acak
R² (R-squared)
Proporsi variansi Y yang dijelaskan model (0–1)
Estimasi parameter via Ordinary Least Squares (OLS): meminimalkan jumlah kuadrat residual.
Coba Sendiri: Geser Garis Regresi, Lihat Koefisiennya
Geser titik data dan amati bagaimana garis regresi serta nilai β₀ (intercept) dan β₁ (slope) berubah mengikuti pola data.
Regresi Non-Linear: Menangkap Pola Kompleks
Polynomial Regression
Menambah term X², X³ dll.
Cocok untuk hubungan kurvilinear
Contoh: pertumbuhan pengguna platform e-commerce pada tahap awal vs. saturasi
Ridge & Lasso Regression
Regularisasi mencegah overfitting pada data berdimensi tinggi
Lasso: seleksi fitur otomatis (koefisien → 0)
Ridge: menyusutkan koefisien secara merata
Regression Tree / Gradient Boosting
Menangkap interaksi non-linear kompleks
XGBoost banyak dipakai tim data science Tokopedia & Shopee
Interpretasi via SHAP values
Kapan memilih non-linear? Ketika plot residual regresi linear menunjukkan pola sistematis, atau ketika domain knowledge mengindikasikan hubungan kurvilinear (mis. efek diminishing returns pada anggaran iklan digital).
Formulasi Masalah Bisnis ke Regresi
Permasalahan Bisnis
Variabel Target (Y)
Prediktor Utama (X)
Model Awal
Prediksi pendapatan iklan Gojek Ads bulan depan
Revenue (Rp)
Jumlah pengguna aktif, CPM historis, seasonality
Multiple Linear
Estimasi lifetime value pelanggan Tokopedia
CLV 12 bulan (Rp)
Frekuensi transaksi, kategori produk, metode bayar
Gradient Boosting
Prediksi volume transaksi BCA Mobile per hari
Jumlah transaksi
Hari kerja/libur, promosi aktif, jumlah pengguna login
Polynomial / Ridge
Estimasi harga properti di Semarang
Harga (Rp)
Luas tanah, lokasi kecamatan, akses jalan, tahun bangun
Multiple Linear + interaksi
Coba Sendiri: Bobot Tiap Prediktor pada Regresi Berganda
Ubah nilai beberapa prediktor sekaligus (misal frekuensi login, usia akun, riwayat top-up) lalu amati kontribusi masing-masing koefisien β terhadap prediksi Y.
Topik 2
Teknik Klasifikasi untuk Prediksi
Memprediksi kategori atau kelas dari suatu observasi
Logistic Regression & Decision Tree
Logistic Regression
Memprediksi probabilitas kelas menggunakan fungsi sigmoid:
P(Y=1) = 1 / (1 + e−(β₀ + β₁X₁ + ...))
Output: probabilitas 0–1, threshold 0.5 untuk klasifikasi biner
Interpretasi: odds ratio dari setiap koefisien
Contoh: prediksi pengajuan kredit BRI disetujui/ditolak
Decision Tree
Membagi data secara rekursif menggunakan aturan if-then berdasarkan fitur terbaik
Kriteria pemisahan: Gini Impurity atau Information Gain (Entropy)
Mudah diinterpretasikan — dapat divisualisasikan sebagai pohon keputusan
Risiko: overfitting jika kedalaman pohon tidak dibatasi (pruning diperlukan)
Contoh: segmentasi risiko nasabah KUR Telkom
Coba Sendiri: Geser Threshold pada Kurva Sigmoid
Ubah nilai X lalu amati bagaimana kurva sigmoid mengubahnya menjadi probabilitas 0-1, dan bagaimana threshold 0,5 menentukan kelas akhir.
Coba Sendiri: Bangun Split Decision Tree dengan Gini Impurity
Pilih fitur pemisah lalu amati bagaimana nilai Gini Impurity berubah setelah data terbagi menjadi cabang kiri dan kanan.
Random Forest & Naive Bayes
Random Forest
Ensemble dari banyak decision tree yang dilatih pada subset data acak (bagging)
Prediksi final: voting mayoritas (klasifikasi) atau rata-rata (regresi)
Lebih robust terhadap overfitting dibanding single decision tree
Feature importance: mengidentifikasi variabel paling prediktif
Contoh: deteksi fraud transaksi kartu kredit BCA — ~>10 juta transaksi/hari
Naive Bayes
Berdasarkan Teorema Bayes dengan asumsi independensi antar fitur
P(Y|X) ∝ P(X|Y) × P(Y)
Sangat cepat dan efisien untuk data teks atau kategorikal
Cocok untuk klasifikasi sentimen ulasan produk Tokopedia / Shopee
Performanya menurun ketika fitur berkorelasi kuat
Coba Sendiri: Klasifikasi Teks dengan Naive Bayes
Masukkan kata-kata dalam ulasan produk lalu amati bagaimana Naive Bayes menghitung probabilitas positif/negatif dari tiap kata.
Perbandingan Algoritma Klasifikasi
Algoritma
Kelebihan
Keterbatasan
Kasus Cocok
Logistic Regression
Interpretabel, cepat, probabilitas eksplisit
Hanya linear boundary
Credit scoring, churn biner
Decision Tree
Visualisasi jelas, non-linear
Overfitting, tidak stabil
Segmentasi pelanggan, rules bisnis
Random Forest
Akurasi tinggi, robust, feature importance
Kurang interpretabel, lambat pada data raksasa
Deteksi fraud, prediksi churn
Naive Bayes
Sangat cepat, efektif teks
Asumsi independensi sering dilanggar
Klasifikasi teks, spam filter
Panduan praktis: Tidak ada algoritma terbaik secara universal. Mulai dari model sederhana (Logistic Regression), ukur performa, lalu tingkatkan kompleksitas hanya jika diperlukan — prinsip Occam's Razor dalam machine learning.
Topik 3
Evaluasi Model Prediktif & Studi Kasus
Mengukur dan memvalidasi kualitas model secara objektif
Metrik Evaluasi: Model Regresi
Metrik
Formula
Interpretasi
MAE
Mean |yᵢ − ŷᵢ| / n
Rata-rata kesalahan absolut; skala sama dengan Y
RMSE
√(Mean (yᵢ − ŷᵢ)²)
Menghukum error besar; sensitif outlier
R²
1 − SS_res/SS_tot
0–1; proporsi variansi yang dijelaskan model
MAPE
Mean |yᵢ − ŷᵢ|/|yᵢ| × 100%
Error dalam %, mudah dikomunikasikan ke bisnis
Contoh interpretasi: Model prediksi pendapatan iklan Gojek menghasilkan RMSE = Rp 12 juta dan MAPE = 8,3%. Artinya, rata-rata prediksi meleset sekitar 8,3% dari nilai aktual — cukup baik untuk perencanaan anggaran kampanye iklan.
Train/Test Split: Selalu evaluasi pada data uji yang terpisah (biasanya 80:20 atau 70:30). Model dengan R² = 0,98 pada data latih tapi 0,45 pada data uji = overfitting.
Coba Sendiri: Amati R² Naik Turun Sesuai Kecocokan Model
Geser titik data menjauh atau mendekati garis regresi lalu amati bagaimana nilai R² berubah sebagai ukuran proporsi variansi yang dijelaskan model.
AUC-ROC: Mengukur kemampuan model membedakan kelas terlepas dari threshold. AUC = 0.5 (acak), AUC = 1.0 (sempurna). Umumnya model produksi baik memiliki AUC > 0.80.
Coba Sendiri: Ubah TP/FP/FN/TN, Lihat Dampak ke Precision-Recall
Ubah angka pada confusion matrix lalu amati bagaimana accuracy, precision, recall, F1-score, dan AUC-ROC berubah bersamaan.
Cross-Validation & Overfitting
k-Fold Cross-Validation
Data dibagi k bagian (fold) — biasanya k = 5 atau 10
Model dilatih k kali, setiap kali satu fold menjadi data uji
Melaporkan rata-rata dan standar deviasi metrik
Memberikan estimasi performa lebih andal dibanding satu split
Bias-Variance Tradeoff: Model terlalu sederhana → underfitting (bias tinggi) Model terlalu kompleks → overfitting (varians tinggi) Target: titik optimal di antara keduanya
Gejala
Train Error
Test Error
Solusi
Underfitting
Tinggi
Tinggi
Tambah fitur, model kompleks
Overfitting
Rendah
Tinggi
Regularisasi, pruning, lebih banyak data
Good fit
Rendah
Rendah
Deploy model
Praktik terbaik: gunakan validation set terpisah untuk tuning hyperparameter, simpan test set hanya untuk evaluasi akhir — jangan "peek" sebelum model final.
Coba Sendiri: Bias vs Error — Analogi Menembak Target
Geser bias (sistematis meleset) dan error (sebaran acak) lalu amati pola 30 tembakan pada target — analogi visual untuk intuisi bias-variance tradeoff yang baru dibahas.
Studi Kasus: Prediksi Churn Pelanggan BRImo
Konteks Bisnis
BRImo (Super App BRI) melayani >35 juta pengguna terdaftar (data publik 2024). Biaya akuisisi pelanggan baru ~5–7x lebih mahal daripada retensi. Tim data science perlu mengidentifikasi pelanggan berisiko churn 30 hari ke depan untuk intervensi proaktif.
Label: Churn = pengguna tidak melakukan transaksi selama 90 hari Target bisnis: Recall > 75%, Precision > 60% (minimize missed churners)
Fitur Prediktor
Tipe
Frekuensi login 30 hari terakhir
Numerik
Jumlah transaksi bulan ini vs. bulan lalu
Numerik (delta)
Produk yang digunakan (tabungan, pinjaman, investasi)
Kategorikal
Saldo rata-rata 3 bulan
Numerik
Waktu sejak transaksi terakhir (recency)
Numerik
Keluhan / tiket CS terbuka
Biner
Pipeline Model BRImo Churn
1. Persiapan Data
Ekstraksi dari data warehouse BRI
Handle missing values (median imputation untuk saldo)
Encoding fitur kategorikal (one-hot encoding)
Normalisasi fitur numerik (StandardScaler)
SMOTE untuk mengatasi class imbalance (~5% churn)
2. Pemodelan & Tuning
Baseline: Logistic Regression
Kandidat: Random Forest, XGBoost
Hyperparameter tuning via GridSearchCV (5-fold CV)
Seleksi model berdasarkan F1-Score & AUC-ROC
Feature importance analysis
3. Deployment & Monitoring
Threshold tuning sesuai biaya bisnis (cost-sensitive)
Model disimpan sebagai API endpoint (Flask/FastAPI)
Output: daftar pelanggan berisiko tinggi untuk tim CRM
Monitoring drift data bulanan
Retrain model setiap kuartal
Diagram: Alur Teknik Prediktif
Rangkuman
5 Key Takeaway Pertemuan 6
Formulasi masalah lebih penting dari pilihan algoritma — tentukan dulu apakah target Anda kontinu (regresi) atau kategorikal (klasifikasi) sebelum menulis kode.
Regresi linear masih relevan — interpretabel, cepat, dan seringkali cukup baik; non-linear (Ridge, XGBoost) hanya jika diperlukan dan terbukti lebih baik.
Tidak ada algoritma terbaik universal — pilih berdasarkan karakteristik data, kebutuhan interpretabilitas, dan konteks bisnis (mis. regulasi OJK untuk explainability).
Evaluasi model harus sesuai tujuan bisnis — accuracy bisa menyesatkan; gunakan recall untuk fraud/churn detection, precision untuk spam filter, F1 untuk keseimbangan.
Deploy dan monitor — model machine learning bukan produk sekali jadi; drift data dan perubahan perilaku pelanggan memerlukan retrain berkala.
Tugas & Diskusi Kelompok
Tugas Individu (deadline: P7)
Pilih satu permasalahan bisnis digital dari perusahaan Indonesia (e-commerce, fintech, atau telco)
Tentukan apakah masalah tersebut adalah regresi atau klasifikasi — jelaskan alasannya
Identifikasi minimal 5 fitur prediktor yang relevan beserta justifikasi bisnis
Pilih satu algoritma yang paling cocok dan jelaskan mengapa
Tuliskan metrik evaluasi yang akan Anda gunakan dan targetnya
Diskusi Kelompok (30 menit)
Skenario: Tim Anda dipekerjakan oleh Telkom Indonesia untuk memprediksi pelanggan IndiHome yang akan downgrade paket dalam 60 hari ke depan.
Apakah ini masalah regresi atau klasifikasi?
Fitur prediktor apa saja yang tersedia dari sistem Telkom?
Algoritma mana yang Anda rekomendasikan dan mengapa?
Metrik evaluasi apa yang paling relevan?
Bagaimana model ini digunakan tim marketing?
Q&A & Preview Pertemuan 7
Pertanyaan yang sering muncul:
Bagaimana memilih threshold optimal selain 0.5?
Apa perbedaan praktis Lasso vs. Ridge dalam konteks bisnis?
Kapan harus menggunakan teknik oversampling seperti SMOTE?
Bagaimana cara menjelaskan model ke manajemen yang bukan data scientist?
Preview P7: Teknik Prediktif Lanjut & Clustering
Support Vector Machine (SVM) untuk data berdimensi tinggi
Neural Network dasar: perceptron & multi-layer
Unsupervised learning: K-Means clustering untuk segmentasi pelanggan
Hierarchical clustering & DBSCAN
Studi kasus: segmentasi pengguna GoPay untuk personalisasi promosi
Persiapan: Install scikit-learn 1.4+, matplotlib, dan seaborn di environment Python Anda.