HomepageBlogOverfitting vs Underfitting: Penyebab dan Perbedaannya
5 min read

Overfitting vs Underfitting: Penyebab dan Perbedaannya

Tayang 25 Maret 2025 Diperbarui: 25 Maret 2025
Ditulis oleh:
digitalskola

Digital Skola Content Team

Share


overfitting vs underfitting

Pernahkah kamu merasa model pembelajaran mesin yang kamu buat bekerja sempurna saat diuji dengan data latihan tetapi gagal saat diuji dengan data baru? Atau justru modelmu terlalu sederhana hingga gagal menangkap pola dalam data? Inilah dua masalah umum dalam machine learning, yaitu overfitting vs underfitting. 

Kedua kondisi ini bisa membuat model tidak bekerja secara optimal, sehingga penting untuk memahami penyebab dan cara mengatasinya. Yuk simak selengkapnya di bawah ini.

Memahami Apa itu Overfitting

Overfitting adalah kondisi di mana model pembelajaran mesin terlalu kompleks dan terlalu menyesuaikan diri dengan data pelatihan, termasuk menangkap noise atau pola yang sebenarnya tidak relevan. Akibatnya, model memiliki kinerja sangat baik pada data pelatihan tetapi gagal menggeneralisasi saat diuji dengan data baru.

Penyebab utama overfitting meliputi:

  • Model dengan kompleksitas tinggi: Model yang terlalu kompleks memiliki terlalu banyak parameter, sehingga dapat menangkap pola yang tidak relevan.
  • Jumlah fitur yang terlalu banyak: Semakin banyak fitur dalam dataset, semakin besar kemungkinan model akan menemukan korelasi acak yang tidak berguna.
  • Jumlah data pelatihan yang terbatas: Dengan data yang sedikit, model cenderung “menghafal” data alih-alih belajar pola yang lebih umum.

Baca Juga: Data Security: Definisi, Jenis, dan Manfaatnya untuk Bisnis

Dampak overfitting yaitu model tampak sangat akurat pada data pelatihan tetapi memiliki performa buruk saat digunakan pada data uji atau data baru. Ini karena model tidak dapat menggeneralisasi dengan baik terhadap pola yang tidak dikenalnya.

Ilustrasi visual yang sering digunakan untuk menggambarkan overfitting adalah grafik yang menunjukkan kurva model yang terlalu menyesuaikan diri dengan titik-titik data pelatihan, menghasilkan prediksi yang tidak akurat saat diaplikasikan ke data lain.

Memahami Apa itu Underfitting

Underfitting adalah kondisi di mana model pembelajaran mesin terlalu sederhana sehingga gagal menangkap pola yang mendasari dalam data. Akibatnya, model memiliki kinerja yang buruk baik pada data pelatihan maupun data uji, karena tidak mampu merepresentasikan hubungan yang ada dalam dataset.

Penyebab utama underfitting meliputi:

  • Model dengan kompleksitas rendah: Model terlalu sederhana, sehingga tidak cukup fleksibel untuk mengenali pola yang kompleks dalam data.
  • Jumlah fitur yang terlalu sedikit: Data yang kurang kaya akan informasi membuat model kesulitan dalam menemukan hubungan yang penting.
  • Pelatihan model yang tidak memadai: Model mungkin belum cukup dilatih, misalnya dengan jumlah epoch yang terlalu sedikit dalam pembelajaran mendalam.

Dampak underfitting salah satunya model memiliki akurasi rendah baik pada data pelatihan maupun data uji, karena tidak cukup belajar dari data yang diberikan. Model seperti ini tidak dapat memberikan prediksi yang akurat dalam situasi nyata.

Ilustrasi visual yang sering digunakan untuk menggambarkan underfitting adalah grafik yang menunjukkan model dengan garis lurus atau sangat sederhana yang gagal mengikuti pola dalam data, menyebabkan kesalahan prediksi yang tinggi.

Perbedaan Overfitting dan Underfitting

overfitting vs underfitting

Dalam pembelajaran mesin, menemukan keseimbangan antara kompleksitas model dan kinerjanya adalah kunci keberhasilan. Overfitting dan underfitting merupakan dua masalah utama yang dapat terjadi jika model tidak disesuaikan dengan baik. Berikut perbedaan utama di antara keduanya:

1. Kompleksitas Model

  • Overfitting terjadi ketika model terlalu kompleks, dengan terlalu banyak parameter atau fitur. Model ini cenderung “menghafal” data pelatihan hingga menangkap noise yang tidak relevan.
  • Underfitting terjadi ketika model terlalu sederhana, sehingga gagal menangkap pola penting dalam data. Model ini sering kali menggunakan algoritma yang terlalu mendasar atau jumlah fitur yang terlalu sedikit.

2. Kinerja pada Data Pelatihan dan Uji

  • Overfitting memiliki kinerja tinggi pada data pelatihan tetapi buruk pada data uji. Model ini bekerja sangat baik pada data yang telah dilihat sebelumnya tetapi gagal menggeneralisasi ke data baru.
  • Underfitting memiliki kinerja rendah baik pada data pelatihan maupun data uji. Model ini bahkan tidak mampu mempelajari pola dalam data pelatihan, sehingga akurasinya rendah di semua skenario.

3. Bias dan Variance

  • Overfitting memiliki variance tinggi dan bias rendah, artinya model sangat sensitif terhadap perubahan kecil dalam data pelatihan dan sulit untuk digunakan pada data baru.
  • Underfitting memiliki bias tinggi dan variance rendah, yang berarti model membuat asumsi yang terlalu sederhana dan tidak cukup fleksibel untuk menangkap hubungan dalam data.

4. Cara Mengatasi

  • Overfitting dapat diatasi dengan teknik seperti regularisasi, pruning, cross-validation, dan menambah data pelatihan agar model tidak terlalu spesifik terhadap data yang ada.
  • Underfitting dapat diatasi dengan menambah kompleksitas model, menggunakan lebih banyak fitur, atau melatih model lebih lama agar mampu memahami pola dalam data.

Baca Juga: Data Pipeline: Definisi, Jenis, dan Cara Kerjanya

Tabel Komparatif Overfitting vs Underfitting

FaktorOverfittingUnderfitting
Training ErrorRendahTinggi
Validation ErrorTinggiTinggi
Model ComplexityTinggiRendah
GeneralizationRendahTinggi

Teknik untuk Mengatasi Overfitting

Overfitting terjadi ketika model terlalu menyesuaikan diri dengan data pelatihan, sehingga gagal menggeneralisasi dengan baik pada data baru. Untuk mengatasi masalah ini, terdapat beberapa teknik yang dapat digunakan agar model menjadi lebih seimbang dan akurat sebagai berikut:

1. Regularisasi

Regularisasi adalah teknik yang menambahkan penalti terhadap parameter model yang besar untuk mencegah model menjadi terlalu kompleks. Beberapa metode regularisasi yang umum digunakan adalah L1 (Lasso) dan L2 (Ridge), yang membantu mengurangi nilai koefisien parameter sehingga model lebih sederhana dan tidak terlalu spesifik terhadap data pelatihan.

2. Pruning

Pruning merupakan teknik yang digunakan pada algoritma pohon keputusan untuk memangkas cabang yang tidak terlalu penting. Dengan memangkas bagian yang kurang relevan, model menjadi lebih sederhana dan tidak terlalu mengikuti noise dalam data. Ini membantu mengurangi kemungkinan overfitting tanpa mengorbankan terlalu banyak akurasi.

3. Cross-Validation

Teknik cross-validation, khususnya k-fold cross-validation, memastikan bahwa model tidak hanya bekerja dengan baik pada subset tertentu dari data pelatihan. Dengan membagi dataset menjadi beberapa bagian dan melatih model pada berbagai kombinasi subset, kita dapat menghindari ketergantungan berlebihan terhadap satu set data tertentu.

4. Penggunaan Data yang Lebih Banyak

Menambah jumlah data pelatihan dapat membantu model memahami pola yang lebih umum dan tidak hanya menyesuaikan diri dengan outlier atau noise dalam dataset kecil. Dengan lebih banyak data, model dapat belajar lebih baik tanpa perlu menangkap pola yang tidak relevan.

Teknik untuk Mengatasi Underfitting

overfitting vs underfitting

Underfitting terjadi ketika model terlalu sederhana sehingga gagal menangkap pola dalam data. Hal ini menyebabkan performa buruk baik pada data pelatihan maupun data uji. Berikut beberapa teknik untuk mengatasi underfitting agar model dapat mempelajari pola yang lebih kompleks dengan lebih baik.

1. Menambah Kompleksitas Model

Jika model terlalu sederhana, meningkatkan kompleksitasnya dapat membantu. Ini bisa dilakukan dengan menggunakan model yang lebih canggih, seperti mengganti linear regression dengan polynomial regression, atau meningkatkan jumlah parameter dalam jaringan saraf. Dengan lebih banyak parameter, model dapat menangkap pola yang lebih kompleks dalam data.

2. Feature Engineering

Menambah atau menciptakan fitur baru yang lebih relevan dapat membantu model memahami pola yang lebih baik. Teknik ini mencakup ekstraksi fitur, transformasi data, atau penggunaan teknik dimensionality expansion seperti polynomial features untuk membuat hubungan antar variabel lebih jelas bagi model.

3. Mengurangi Regularisasi

Regularisasi berfungsi untuk mencegah overfitting, tetapi jika terlalu kuat, model justru bisa mengalami underfitting. Dengan mengurangi nilai regularization parameter (λ) dalam metode seperti L1/L2 regularization, model diberikan fleksibilitas lebih untuk belajar dari data tanpa terlalu banyak pembatasan.

Kesimpulan

Menemukan keseimbangan antara bias dan variance sangat penting dalam membangun model pembelajaran mesin yang optimal. Model yang terlalu kompleks dapat mengalami overfitting, sementara model yang terlalu sederhana dapat mengalami underfitting, keduanya berdampak negatif pada kemampuan model dalam menggeneralisasi data baru. 

Untuk mengatasi masalah ini, berbagai teknik seperti regularisasi, pruning, cross-validation, dan penambahan data dapat digunakan untuk mengurangi overfitting, sementara menambah kompleksitas model, feature engineering, dan mengurangi regularisasi dapat membantu mengatasi underfitting

Dengan memahami penyebab serta cara mengatasinya, kita dapat membangun model yang memiliki keseimbangan optimal dan kinerja yang lebih baik pada data nyata.

Baca Juga: Siklus Hidup Data Science: Pengertian dan Rangkaiannya

Hindari Overfitting & Underfitting! Kuasai Teknik Machine Learning di Bootcamp Data Science

Ingin membangun model machine learning yang akurat tanpa terjebak dalam overfitting atau underfitting? Di Bootcamp Data Science bersama Digital Skola, kamu akan belajar teknik terbaik untuk mengoptimalkan model, mulai dari regularisasi, feature engineering, hingga cross-validation. Dapatkan pengalaman langsung dengan bimbingan mentor ahli dan praktik berbasis proyek nyata. Bergabung sekarang dan tingkatkan skill data science-mu ke level berikutnya. Hubungi Digital Skola untuk konsultasi.