Machine Learning Fundamental 7
📘 Pertemuan 7 – Model Evaluation & Cross Validation
🎯 Tujuan Pembelajaran
Setelah mengikuti pertemuan ini mahasiswa mampu:
- Memahami pentingnya evaluasi model
- Memahami berbagai metrik evaluasi klasifikasi
- Memahami confusion matrix secara mendalam
- Memahami konsep cross validation
- Mengimplementasikan evaluasi model dengan benar
- Menghindari overfitting dan underfitting
1️⃣ Mengapa Evaluasi Model Penting?
Model tidak cukup hanya “jalan”, tetapi harus:
- Akurat
- Generalisasi baik
- Tidak overfitting
Kesalahan umum:
❌ Hanya melihat accuracy
❌ Tidak menggunakan data testing dengan benar
2️⃣ Confusion Matrix
Confusion Matrix adalah tabel untuk mengevaluasi model klasifikasi.
| Predicted Negative | Predicted Positive | |
|---|---|---|
| Actual Negative | TN | FP |
| Actual Positive | FN | TP |
📊 Implementasi
1 | from sklearn.metrics import confusion_matrix |
3️⃣ Metric Evaluasi
Accuracy
1 | from sklearn.metrics import accuracy_score |
Precision
1 | from sklearn.metrics import precision_score |
Recall
1 | from sklearn.metrics import recall_score |
F1 Score
1 | from sklearn.metrics import f1_score |
Classification Report
1 | from sklearn.metrics import classification_report |
4️⃣ Visualisasi Confusion Matrix
1 | import seaborn as sns |
5️⃣ Overfitting vs Underfitting
| Kondisi | Ciri |
|---|---|
| Overfitting | Akurasi train tinggi, test rendah |
| Underfitting | Akurasi train & test rendah |
Solusi:
- Tambah data
- Gunakan model lebih sederhana
- Gunakan regularisasi
- Gunakan cross validation
6️⃣ Cross Validation
Cross Validation digunakan untuk mengevaluasi model secara lebih stabil.
📌 K-Fold Cross Validation
Data dibagi menjadi K bagian:
1 | Fold 1 → test, sisanya train |
📊 Implementasi K-Fold
1 | from sklearn.model_selection import cross_val_score |
7️⃣ Stratified K-Fold
Digunakan untuk menjaga distribusi kelas tetap seimbang.
1 | from sklearn.model_selection import StratifiedKFold |
8️⃣ Pipeline Evaluation (Best Practice)
Urutan yang benar:
1 | Preprocessing → Split → Training → Evaluation → Cross Validation |
🧪 Praktikum Lengkap
1 | from sklearn.linear_model import LogisticRegression |
📝 Tugas Praktikum
- Gunakan model:
- Logistic Regression
- Decision Tree
- Hitung:
- Accuracy
- Precision
- Recall
- F1 Score
- Bandingkan hasil model.
📝 Tugas Mandiri
- Gunakan dataset dari Kaggle.
- Lakukan:
- Training model
- Evaluasi lengkap
- Cross validation
- Analisis:
- Model mana terbaik?
- Apakah terjadi overfitting?
Gunakan template laporan:
https://github.com/AzharRizkiZ/Template-DS-ML
Upload ke GitHub.
🎓 Target Kompetensi
Mahasiswa mampu:
- mengevaluasi model secara benar
- memahami berbagai metrik evaluasi
- menggunakan cross validation
- memilih model terbaik secara objektif
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
Comments



