stdsquare²
🎓 Kelas
stdsquare / materi / slides / pertemuan-12
Tema
Japan
Arcade
Dark Retro
Font
‹ Daftar slide Pertemuan 12: Logistic Regression, Decision Tree, dan Random Forest
Program Studi Bisnis Digital • FEB UNDIP

Machine Learning in Finance

Pertemuan 12 — Logistic Regression, Decision Tree, dan Random Forest

Dari regresi klasifikasi biner hingga ensemble pohon keputusan: tiga model supervised learning untuk memprediksi gagal bayar, klasifikasi risiko, dan keputusan kredit di dunia keuangan.

RPS MINGGU 13 • 2 × 50 MENIT

Tujuan Pembelajaran Hari Ini

Sub-CPMK: mahasiswa mampu menerapkan teknik supervised learning untuk klasifikasi data keuangan.

TUJUAN 1
PAHAMI KLASIFIKASI
Membedakan masalah klasifikasi (kategori: ya/tidak) dari regresi (angka kontinu) dalam konteks keuangan.
TUJUAN 2
TIGA MODEL INTI
Menjelaskan cara kerja logistic regression, decision tree, dan random forest serta kapan masing-masing dipakai.
TUJUAN 3
HITUNG MANUAL
Menghitung probabilitas logistic regression dan Gini impurity pohon keputusan secara manual dari data kecil.
TUJUAN 4
EVALUASI MODEL
Membaca metrik akurasi, confusion matrix, dan memahami mengapa random forest lebih stabil dari satu pohon tunggal.

Mengapa Klasifikasi Penting di Dunia Keuangan?

Banyak keputusan finansial sebenarnya adalah pertanyaan ya/tidak, bukan "berapa".

KREDIT
GAGAL BAYAR?
Bank BRI menilai ribuan pengajuan KUR harian — layak atau tidak layak disetujui.
FRAUD
TRANSAKSI MENCURIGAKAN?
GoPay/OVO mendeteksi transaksi tidak wajar dalam hitungan detik dari jutaan transaksi.
SAHAM
NAIK ATAU TURUN?
Trader algoritmik memprediksi arah harga BBCA besok: naik atau turun, bukan angka pastinya.
Ketiga model hari ini — logistic regression, decision tree, random forest — adalah "mesin" paling umum di balik keputusan otomatis semacam ini di industri fintech dan perbankan Indonesia.

Klasifikasi vs Regresi: Mengingat Kembali

Anda sudah bertemu regresi (OLS) di awal semester. Klasifikasi mirip tapi outputnya berbeda.

AspekRegresi (mis. OLS)Klasifikasi (hari ini)
OutputAngka kontinu (mis. harga saham Rp 8.750)Kategori/kelas (mis. "gagal bayar" / "lancar")
Contoh kasusMemprediksi return portofolio bulan depanMemprediksi status kredit nasabah
Ukuran kesalahanRMSE, MAE (jarak angka)Akurasi, confusion matrix
Model hari iniLogistic regression, decision tree, random forest
Bagian 1 dari 4
Logistic Regression
Model klasifikasi biner paling fundamental — mengubah probabilitas menjadi keputusan ya/tidak menggunakan kurva berbentuk S.

Apa itu Logistic Regression?

Model yang memprediksi probabilitas suatu kejadian (0 sampai 1), lalu diklasifikasi jadi kelas biner.

Masalah dengan Regresi Linear Biasa

Jika kita pakai OLS untuk memprediksi "gagal bayar" (0/1), hasil prediksinya bisa di bawah 0 atau di atas 1 — tidak masuk akal sebagai probabilitas.

Solusi: Fungsi Sigmoid

Logistic regression membungkus hasil linear dengan fungsi sigmoid (kurva-S) sehingga output selalu berada di rentang 0–1, valid sebagai probabilitas.

P(y=1) = 1 / (1 + e−(β₀ + β₁x))

Kurva Sigmoid: Dari Skor Mentah ke Probabilitas

Berapa pun nilai skor mentah (sumbu-x), sigmoid selalu memetakannya ke rentang 0–1 (sumbu-y).

Skor mentah (β₀ + β₁x)P=1P=0skor = 0P = 0,50 (titik potong)Diklasifikasi: 1Diklasifikasi: 0
Ambang batas (threshold) default biasanya P ≥ 0,50 → diklasifikasikan kelas 1 (mis. "berpotensi gagal bayar").

Hitung dari Nol #1 — Probabilitas Logistic Regression

Kasus: bank menilai gagal bayar dari rasio utang. Model: β₀ = −3, β₁ = 4, x = rasio utang terhadap pendapatan = 0,9.

LangkahPerhitunganNilai
1. Skor mentah (z)−3 + (4 × 0,9)z = 0,6
2. Pangkat e−ze−0,6≈ 0,5488
3. Penyebut (1 + e−z)1 + 0,54881,5488
4. Probabilitas P(y=1)1 ÷ 1,5488P ≈ 0,646
Karena P (0,646) > ambang 0,50 → nasabah ini diklasifikasikan berpotensi gagal bayar.

Membaca Koefisien: Arah, Bukan Cuma Besaran

Tanda koefisien (β) menunjukkan arah pengaruh variabel terhadap probabilitas kelas 1.

β POSITIF
MENAIKKAN P
Rasio utang naik → probabilitas gagal bayar naik. Contoh: β₁ = 4 pada slide sebelumnya.
β NEGATIF
MENURUNKAN P
Lama menjadi nasabah (tahun) naik → probabilitas gagal bayar biasanya turun (nasabah loyal lebih terpercaya).
Berbeda dari OLS, besaran β logistic regression tidak langsung berarti "kenaikan probabilitas sekian persen" — itu perlu transformasi tambahan (odds ratio), di luar cakupan hari ini.
Bagian 2 dari 4
Decision Tree
Model yang meniru cara manusia mengambil keputusan: serangkaian pertanyaan ya/tidak yang bercabang seperti pohon.

Anatomi Sebuah Decision Tree

Pohon terdiri dari node (pertanyaan), cabang (jawaban), dan leaf/daun (keputusan akhir).

Root nodePenghasilan > Rp 5jt?YaTidakInternal nodeRiwayat macet?Leaf (daun)TolakYaTidakLeaf (daun)TolakLeaf (daun)Setujui

Bagaimana Pohon Memilih Pertanyaan Terbaik?

Pohon memilih pertanyaan (split) yang membuat kelompok hasil paling "murni" (seragam kelasnya) — diukur dengan Gini impurity.

Gini = 1 − (p₁)² − (p₂)²
GINI = 0
MURNI SEMPURNA
Semua anggota kelompok satu kelas saja (mis. semua "lancar"). Split ideal.
GINI = 0,50
PALING CAMPUR
Kelompok terbagi 50:50 antara dua kelas — split ini tidak informatif.

Hitung dari Nol #2 — Gini Impurity

Kasus: kelompok 10 nasabah setelah split "penghasilan > Rp 5 juta = ya" → 8 lancar, 2 gagal bayar.

LangkahPerhitunganNilai
1. Proporsi kelas "lancar" (p₁)8 ÷ 10p₁ = 0,80
2. Proporsi kelas "gagal bayar" (p₂)2 ÷ 10p₂ = 0,20
3. Kuadrat tiap proporsi0,80² = 0,64  &  0,20² = 0,040,64 dan 0,04
4. Gini = 1 − jumlah kuadrat1 − (0,64 + 0,04)Gini = 0,32
Gini 0,32 jauh di bawah 0,50 → split ini cukup baik memisahkan nasabah lancar dari gagal bayar.

Coba Sendiri: Uji Split Terbaik lewat Gini

Coba beberapa titik split berbeda pada data nasabah dan amati bagaimana nilai Gini impurity berubah untuk menentukan split mana yang terbaik.

Bahaya Decision Tree: Overfitting

Pohon yang dibiarkan tumbuh tanpa batas akan "menghafal" data latih, bukan mempelajari pola umum.

POHON TERLALU DALAM
HAFAL, TIDAK BELAJAR
Akurasi data latih bisa 100%, tapi meleset jauh pada data baru — seperti mahasiswa yang menghafal soal ujian tahun lalu persis, gagal saat soal diubah sedikit.
SOLUSI UMUM
BATASI KEDALAMAN
Tetapkan max depth (kedalaman maksimum) atau jumlah minimum sampel per daun agar pohon tidak terlalu spesifik ke data latih.
Overfitting adalah alasan utama mengapa satu decision tree jarang dipakai sendirian di produksi — solusinya ada di bagian berikutnya: random forest.
Bagian 3 dari 4
Random Forest
"Kebijaksanaan orang banyak" diterapkan ke machine learning — ratusan pohon keputusan yang saling melengkapi kelemahan satu sama lain.

Random Forest: Banyak Pohon, Satu Keputusan

Membangun banyak decision tree yang masing-masing sedikit berbeda, lalu menggabungkan hasilnya lewat voting.

Dua Sumber "Keacakan" (Random)
  • Bootstrap sampling — tiap pohon dilatih dengan sampel data yang diambil acak (dengan pengembalian) dari data asli, bukan data yang sama persis.
  • Random feature selection — tiap pertanyaan/split hanya boleh memilih dari subset variabel acak, bukan semua variabel sekaligus.
Hasil akhir klasifikasi = voting mayoritas dari semua pohon. Jika 70 dari 100 pohon memprediksi "gagal bayar", maka keputusan akhir = gagal bayar.

Walkthrough — Mengapa Voting Mengurangi Overfitting?

Ikuti alur berikut untuk memahami intuisi "kesalahan saling menetralkan" dalam random forest.

TahapApa yang terjadi
1. Satu pohon tunggalOverfitting ke pola khusus di data latihnya sendiri → rentan salah pada data baru.
2. 100 pohon dilatih beda-bedaTiap pohon overfitting ke arah berbeda-beda (karena bootstrap + fitur acak) — kesalahannya tidak seragam.
3. Voting mayoritasKesalahan acak antar-pohon saling "membatalkan" saat divoting; pola sungguhan yang konsisten tetap menang.
4. Hasil forestPrediksi lebih stabil & akurat pada data baru dibanding satu pohon mana pun.

Walkthrough — Membaca Feature Importance

Bonus random forest: ia bisa memberi tahu variabel mana yang paling berpengaruh terhadap prediksi.

TahapApa yang terjadi
1. Tiap pohon mencatatSetiap kali sebuah variabel dipakai untuk split, dicatat seberapa besar penurunan Gini yang dihasilkan.
2. Dirata-rata seluruh forestPenurunan Gini dari satu variabel dirata-rata di ratusan pohon → skor "feature importance".
3. DiurutkanVariabel dengan skor tertinggi = paling berpengaruh terhadap keputusan model (mis. rasio utang sering di puncak).
4. Manfaat bisnisBank bisa menjelaskan ke OJK/nasabah variabel apa yang paling menentukan keputusan kredit.

Perbandingan Tiga Model

AspekLogistic RegressionDecision TreeRandom Forest
InterpretasiMudah (koefisien & arah)Sangat mudah (jalur pertanyaan)Sedang (feature importance)
Akurasi tipikalSedangSedang, rawan overfitTinggi & stabil
Kecepatan hitungSangat cepatCepatLebih lambat (banyak pohon)
Cocok untukBaseline, laporan ke regulatorAturan bisnis sederhanaProduksi, akurasi prioritas
Bagian 4 dari 4
Evaluasi Model & Latihan
Model yang akurat di atas kertas belum tentu berguna — kita perlu cara membaca performa model dengan benar.

Confusion Matrix: Melihat Lebih dari Sekadar Akurasi

Tabel yang memecah prediksi model menjadi empat kemungkinan — penting karena akurasi saja bisa menipu.

Prediksi: LancarPrediksi: Gagal Bayar
Aktual: LancarTrue Negative (benar)False Positive (salah tolak)
Aktual: Gagal BayarFalse Negative (salah, bahaya!)True Positive (benar)
False Negative paling berbahaya di kredit: model bilang "lancar" padahal nasabah sebenarnya akan gagal bayar → bank rugi.

Jebakan Akurasi: Kasus Data Tidak Seimbang

Deteksi fraud: dari 1.000 transaksi, hanya 10 yang benar-benar fraud (1%).

MODEL "MALAS"
99% AKURASI
Model yang selalu menebak "bukan fraud" untuk semua transaksi → benar 990 dari 1.000 kali, tapi gagal total mendeteksi fraud sungguhan.
PELAJARAN
AKURASI SAJA TIDAK CUKUP
Untuk kasus data tidak seimbang (fraud, gagal bayar langka), lihat juga recall pada kelas minoritas — bukan hanya akurasi keseluruhan.

Latihan Kelas — Diskusikan Berpasangan (10 menit)

Soal 1 — Hitung Manual

Sebuah split menghasilkan kelompok 20 nasabah: 15 lancar, 5 gagal bayar. Hitung Gini impurity kelompok ini. Bandingkan dengan hasil slide "Hitung dari Nol #2" (Gini = 0,32) — mana yang lebih murni?

Soal 2 — Konseptual

Sebuah fintech P2P lending ingin melaporkan model credit scoring-nya ke OJK dengan penjelasan yang transparan, tapi juga ingin akurasi setinggi mungkin untuk mengurangi kredit macet. Model mana yang Anda rekomendasikan, dan mengapa? Pertimbangkan trade-off interpretasi vs akurasi.

Rangkuman: Cheat Sheet Tiga Model

ModelInti Cara KerjaKata Kunci
Logistic RegressionSkor linear → sigmoid → probabilitas 0–1Sigmoid, threshold, koefisien
Decision TreePertanyaan bercabang, pilih split ber-Gini rendahNode, leaf, Gini impurity
Random ForestBanyak tree acak → voting mayoritasBootstrap, feature importance, voting
Evaluasi model klasifikasi selalu pakai confusion matrix, bukan akurasi saja — terutama untuk kasus data tidak seimbang seperti fraud/gagal bayar.

Sebelum Pertemuan Berikutnya

Minggu Depan

Melanjutkan ke teknik supervised learning lain: K-Nearest Neighbors (KNN) untuk klasifikasi berbasis kedekatan data, serta praktik implementasi Python untuk ketiga model hari ini.

TUGAS PERSIAPAN
BACA & SIAPKAN
Instal Python (scikit-learn) sebelum pertemuan berikutnya; ulangi perhitungan manual sigmoid & Gini di slide 8 dan 13 sampai lancar tanpa melihat catatan.