Lompat ke konten utama
←

Machine Learning Dasar dengan Python

Pelajaran 12 dari 16

Model yang andal dan data tanpa label

Overfitting dan underfitting

Setelah pelajaran ini kamu bisa mengenali overfitting dan underfitting dari selisih skor latih dan skor uji.

±13 menitDiperiksa 27 Sep 2026

Materi

Model overfitting menghafal data latih, termasuk kebetulan dan galatnya, sehingga skor latihnya tinggi tetapi skor ujinya jauh lebih rendah. Model underfitting terlalu sederhana untuk polanya, sehingga skor latih dan skor ujinya sama-sama rendah. Contoh resmi scikit-learn "Underfitting vs. Overfitting" menunjukkannya dengan polinomial: derajat 1 tidak cukup mengikuti kurva, derajat 15 mengikuti setiap titik latih dan meleset jauh di antara titik.

Pada pohon keputusan, pengaturnya max_depth. Tanpa batas, pohon bercabang sampai setiap daun murni, dan skor latihnya 1,0. Halaman Validation curves di User Guide menjelaskan cara membacanya: bandingkan skor latih dan skor validasi untuk beberapa nilai pengatur, lalu pilih nilai tempat skor validasi tertinggi.

# pola membaca skor latih vs skor uji
for kedalaman in [1, 3, None]:
    m = DecisionTreeClassifier(max_depth=kedalaman, random_state=0)
    m.fit(X_latih, y_latih)
    print(kedalaman, m.score(X_latih, y_latih), m.score(X_uji, y_uji))

Kedalaman terbaik dipilih dari skor data yang tidak dipakai untuk fit. Memilihnya berulang kali dari data uji yang sama pelan-pelan membuat data uji ikut "dihafal"; pelajaran berikutnya memakai validasi silang untuk itu.

Latihan

0/3 lulus

Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Latihan 1 dari 3

Pohon keputusan mendapat skor latih 1,00 dan skor uji 0,62. Pohon lain yang lebih dangkal mendapat 0,85 dan 0,83. Apa diagnosis pohon pertama?

Pilih satu jawaban

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke