Mengenal Overfitting dan Underfitting di Machine Learning


Ilustrasi Machine Learning

Ilustrasi Machine Learning

Di era kecerdasan buatan atau Artificial Intelligence (AI), machine learning menjadi teknologi yang semakin penting dalam kehidupan sehari-hari. Teknologi ini digunakan dalam berbagai bidang, mulai dari rekomendasi film di layanan streaming, deteksi penipuan transaksi keuangan, diagnosa penyakit, hingga prediksi cuaca dan harga saham. Namun, di balik kecanggihan tersebut, terdapat tantangan besar yang sering dihadapi para ilmuwan data dan insinyur AI, yaitu overfitting dan underfitting.

Kedua istilah ini terdengar teknis, tetapi sebenarnya sangat penting dipahami karena berkaitan langsung dengan kualitas sebuah model machine learning. Model yang terlalu sederhana akan gagal memahami pola data, sedangkan model yang terlalu rumit justru akan “menghafal” data tanpa benar-benar memahami pola umumnya. Akibatnya, sistem AI menjadi tidak akurat ketika menghadapi data baru.

Karena itu, memahami konsep overfitting dan underfitting merupakan dasar penting dalam pengembangan sistem AI yang andal, akurat, dan mampu bekerja di dunia nyata. Artikel ini akan membahas secara lengkap mengenai pengertian, penyebab, contoh, cara mengenali, hingga metode mengatasinya dengan bahasa yang mudah dipahami.

 
Apa Itu Overfitting dan Underfitting?

Dalam machine learning, model dilatih menggunakan data agar mampu mengenali pola tertentu. Setelah proses pelatihan selesai, model diharapkan dapat menggunakan pola tersebut untuk memprediksi data baru yang belum pernah dilihat sebelumnya.

Namun, proses ini tidak selalu berjalan sempurna. Ada dua masalah utama yang sering muncul:

Underfitting: model terlalu sederhana sehingga gagal memahami pola penting dalam data.
Overfitting: model terlalu kompleks sehingga justru menghafal data pelatihan secara detail, termasuk noise atau gangguan yang sebenarnya tidak penting.
Keduanya dapat menyebabkan performa model menjadi buruk.

 
Memahami Underfitting

Underfitting terjadi ketika model machine learning tidak mampu menangkap hubungan dasar dalam data. Model menjadi terlalu sederhana sehingga gagal memahami pola yang sebenarnya ada.

Bayangkan seorang siswa yang hanya membaca ringkasan singkat sebelum ujian. Karena pemahamannya dangkal, ia kesulitan menjawab berbagai pertanyaan, baik soal latihan maupun soal ujian sebenarnya. Kondisi ini mirip dengan underfitting.

Ciri-Ciri Underfitting
Beberapa tanda umum underfitting antara lain:

  • Akurasi rendah pada data pelatihan.
  • Akurasi juga rendah pada data pengujian.
  • Tingkat kesalahan tinggi secara konsisten.
  • Model terlihat “tidak belajar” dari data.

Dalam grafik kurva pembelajaran, underfitting biasanya menunjukkan loss atau kesalahan yang tetap tinggi baik pada data training maupun validation.

 

Penyebab Underfitting
Ada beberapa faktor yang dapat menyebabkan underfitting:

  • Model Terlalu Sederhana
    Contohnya menggunakan regresi linier sederhana untuk data yang sebenarnya memiliki pola kompleks dan nonlinier.
  • Fitur Kurang Lengkap
    Jika data penting tidak dimasukkan, model tidak memiliki cukup informasi untuk belajar.
  • Regularisasi Berlebihan
    Regularisasi memang penting untuk mencegah overfitting, tetapi jika terlalu kuat justru membuat model terlalu kaku.
  • Waktu Pelatihan Terlalu Singkat
    Model yang belum cukup lama dilatih belum sempat memahami pola data.
  • Data Pelatihan Kurang Memadai
    Jumlah data yang sedikit membuat model sulit mengenali variasi pola.

 

Contoh Underfitting dalam Dunia Nyata

  • Prediksi Harga Rumah
    Bayangkan sebuah model machine learning hanya menggunakan luas bangunan untuk memprediksi harga rumah. Sekilas cara ini terlihat masuk akal karena ukuran rumah memang memengaruhi harga properti.

    Namun, kenyataannya harga rumah dipengaruhi oleh banyak faktor lain seperti lokasi, jumlah kamar tidur, kondisi bangunan, akses transportasi, lingkungan sekitar, hingga fasilitas umum yang tersedia.Karena model hanya memanfaatkan sedikit informasi, sistem gagal memahami hubungan kompleks yang sebenarnya terjadi di pasar properti.

    Akibatnya, prediksi harga menjadi kurang akurat baik pada data pelatihan maupun data baru. Kondisi ini merupakan contoh nyata underfitting karena model terlalu sederhana untuk menangkap pola penting dalam data.

  • Perkiraan Cuaca
    Dalam sistem prakiraan cuaca, penggunaan model yang terlalu sederhana juga dapat menyebabkan underfitting. Misalnya, model hanya menggunakan data suhu dan kelembapan untuk memprediksi kemungkinan hujan.

    Padahal, cuaca dipengaruhi oleh banyak faktor lain seperti tekanan udara, arah angin, kecepatan angin, awan, pola musim, dan kondisi atmosfer lainnya. Karena tidak memiliki cukup informasi untuk mempelajari hubungan yang lebih kompleks, model menjadi sulit menghasilkan prediksi yang akurat.

    Akibatnya, sistem cuaca sering memberikan hasil yang meleset dan tidak mampu mengenali pola perubahan cuaca secara efektif.

  • Pengenalan Gambar
    Contoh underfitting lainnya dapat ditemukan pada sistem pengenalan gambar.

    Misalnya, sebuah decision tree sederhana digunakan untuk membedakan gambar kucing dan anjing.Karena model terlalu dangkal dan memiliki kemampuan terbatas, sistem gagal mengenali detail penting seperti bentuk telinga, pola wajah, tekstur bulu, ukuran tubuh, atau bentuk mata. Model hanya memahami pola dasar yang sangat sederhana sehingga sering salah mengklasifikasikan gambar.

    Akibatnya, performa sistem menjadi buruk baik pada gambar pelatihan maupun gambar baru yang belum pernah dilihat sebelumnya.
     

Apa Itu Overfitting?

Berbeda dengan underfitting, overfitting terjadi ketika model terlalu kompleks dan terlalu fokus pada data pelatihan. Model tidak hanya mempelajari pola penting, tetapi juga menghafal noise, kesalahan, dan detail acak dalam data.

Akibatnya, performa model terlihat sangat bagus saat diuji menggunakan data pelatihan, tetapi buruk ketika menghadapi data baru.

Analogi sederhananya seperti siswa yang menghafal semua jawaban latihan tanpa memahami konsep. Ketika soal ujian sedikit berbeda, ia langsung kesulitan.

 
Ciri-Ciri Overfitting
Beberapa tanda umum overfitting antara lain:

  • Akurasi sangat tinggi pada data pelatihan.
  • Akurasi rendah pada data pengujian.
  • Terdapat selisih besar antara performa training dan testing.
  • Loss training sangat kecil, tetapi loss validation meningkat.

Dalam kurva pembelajaran, overfitting biasanya terlihat ketika model semakin baik pada data training tetapi semakin buruk pada data validasi.

 

Penyebab Overfitting

  • Model Terlalu Kompleks
    Neural network dengan terlalu banyak lapisan atau parameter dapat membuat model terlalu fleksibel.
  • Data Pelatihan Terlalu Sedikit
    Model kompleks yang dilatih menggunakan data kecil cenderung menghafal data.
  • Banyak Noise dalam Data
    Jika data mengandung kesalahan atau ketidakkonsistenan, model bisa salah menganggapnya sebagai pola penting.
  • Terlalu Banyak Fitur
    Semakin banyak fitur, semakin besar kemungkinan model menangkap pola acak yang sebenarnya tidak relevan.
  • Training Terlalu Lama
    Model yang dilatih terlalu lama terkadang mulai menghafal data dibanding memahami pola umum.

 

Bias dan Varians dalam Machine Learning

Untuk memahami overfitting dan underfitting dengan lebih mudah, kita perlu mengenal dua konsep penting dalam machine learning, yaitu bias dan varians. Keduanya berperan besar dalam menentukan apakah sebuah model AI mampu bekerja dengan baik atau justru menghasilkan prediksi yang kurang akurat.

  • Bias
    Bias menggambarkan bagaimana sebuah model membuat asumsi terhadap data yang dipelajari. Model dengan bias tinggi biasanya terlalu sederhana sehingga tidak mampu memahami pola yang rumit dalam data.

    Bayangkan seorang siswa yang hanya mempelajari dasar-dasar materi tanpa mencoba memahami detail atau variasi soal. Ketika menghadapi pertanyaan yang sedikit berbeda, ia akan kesulitan menjawab karena pengetahuannya terlalu terbatas.

    Hal serupa terjadi pada machine learning. Model dengan bias tinggi cenderung melihat segala sesuatu secara terlalu sederhana. Akibatnya, banyak pola penting dalam data yang terlewat sehingga model menghasilkan prediksi yang kurang akurat.Kondisi ini sering menyebabkan underfitting, yaitu saat model gagal memahami hubungan sebenarnya dalam data baik pada data pelatihan maupun data baru.

  • Varians
    Varians menunjukkan seberapa sensitif model terhadap data pelatihan yang digunakan. Model dengan varians tinggi biasanya terlalu fleksibel. Model ini mencoba mempelajari hampir semua detail dalam data, termasuk gangguan kecil atau noise yang sebenarnya tidak penting.

    Bayangkan seorang siswa yang menghafal semua jawaban latihan kata demi kata tanpa memahami konsep utamanya. Ketika soal ujian berubah sedikit saja, ia langsung bingung karena hanya mengingat contoh tertentu, bukan memahami pola umum.

    Dalam machine learning, kondisi ini disebut overfitting. Model terlihat sangat pintar saat diuji menggunakan data pelatihan karena berhasil “menghafal” data tersebut. Namun ketika menghadapi data baru, performanya justru menurun drastis.

Tradeoff Bias dan Varians
Dalam machine learning terdapat konsep penting yang disebut tradeoff bias dan varians. Artinya, ilmuwan data harus mencari keseimbangan antara model yang terlalu sederhana dan model yang terlalu kompleks.

Jika bias terlalu tinggi, model menjadi terlalu sederhana dan mengalami underfitting.
Jika varians terlalu tinggi, model menjadi terlalu sensitif dan mengalami overfitting.
Tujuan utama pengembangan machine learning adalah menemukan titik tengah terbaik di antara keduanya.

Model yang ideal harus:

  • cukup pintar untuk memahami pola penting,
  • tetapi tidak terlalu rumit hingga menghafal semua detail kecil dalam data.

Mencapai keseimbangan ini merupakan salah satu tantangan terbesar dalam pengembangan sistem kecerdasan buatan modern.

Dalam machine learning, tujuan utama sebenarnya bukan sekadar mendapatkan hasil sempurna pada data pelatihan. Yang jauh lebih penting adalah kemampuan generalisasi. Generalisasi adalah kemampuan model untuk menerapkan pengetahuan yang telah dipelajari ke data baru yang belum pernah dilihat sebelumnya.

Sebagai contoh, sistem AI pengenal wajah tidak hanya harus mengenali foto yang digunakan saat pelatihan, tetapi juga mampu mengenali wajah baru dengan pencahayaan, sudut, atau kualitas gambar yang berbeda.

Model yang memiliki generalisasi baik akan tetap memberikan prediksi akurat meskipun kondisi data berubah. Inilah yang membuat sistem AI benar-benar berguna di dunia nyata.

Karena itu, para ilmuwan data selalu berusaha menciptakan model yang seimbang: tidak terlalu sederhana, tetapi juga tidak terlalu rumit.

 

Contoh Overfitting dalam Dunia Nyata

  • Diagnosa Medis
    Model AI dilatih menggunakan sedikit gambar medis. Karena jumlah data terbatas, model menghafal gambar tertentu dan gagal mengenali penyakit pada gambar baru. Akibatnya, sistem terlihat sangat akurat saat pelatihan tetapi tidak dapat diandalkan di rumah sakit.
  • Prediksi Harga Saham
    Neural network kompleks mempelajari fluktuasi acak harga saham masa lalu. Padahal pasar saham sangat dinamis dan penuh noise. Model akhirnya gagal memprediksi kondisi pasar masa depan.
  • Prediksi Churn Pelanggan
    Model retensi pelanggan menggunakan terlalu banyak data demografi rinci. Akibatnya, model terlalu spesifik terhadap kelompok tertentu dan gagal bekerja baik pada populasi pelanggan yang lebih luas.

 

Cara Mengatasi Overfitting dan Underfitting dalam Machine Learning

Dalam pengembangan machine learning, salah satu tantangan terbesar adalah memastikan model dapat bekerja secara akurat pada data baru. Model yang terlalu sederhana akan mengalami underfitting, sedangkan model yang terlalu rumit berisiko mengalami overfitting. Karena itu, para ilmuwan data perlu menggunakan berbagai teknik agar model tetap seimbang dan mampu melakukan generalisasi dengan baik. Berikut adalah berbagai cara mengatasi overfitting dan underfitting.

 
Cara Mengatasi Overfitting

Overfitting terjadi ketika model terlalu fokus pada data pelatihan hingga menghafal detail kecil dan noise yang sebenarnya tidak penting. Akibatnya, model terlihat sangat akurat saat pelatihan, tetapi gagal bekerja baik pada data baru.

  1. Regularisasi
    Regularisasi adalah teknik untuk mengurangi kompleksitas model agar tidak terlalu “pintar” dalam menghafal data pelatihan.Bayangkan seorang siswa yang diminta belajar dengan lebih fokus pada konsep utama daripada menghafal semua detail kecil. Regularisasi bekerja dengan cara serupa, yaitu membantu model mempelajari pola penting tanpa terlalu terpaku pada hal-hal yang tidak relevan.

    • Regularisasi L1
      Teknik ini membantu model memilih hanya fitur-fitur yang paling penting. Beberapa informasi yang dianggap kurang berguna akan diabaikan sehingga model menjadi lebih sederhana.
    • Regularisasi L2
      Berbeda dengan L1, metode ini tidak menghapus fitur, tetapi mengurangi pengaruh semua fitur agar model tidak terlalu agresif saat belajar.

    Kedua teknik ini sangat membantu dalam mengurangi risiko overfitting.

  2. Dropout pada Neural Network
    Dropout merupakan teknik populer dalam deep learning. Saat proses pelatihan berlangsung, beberapa neuron dalam neural network dimatikan secara acak untuk sementara. Tujuannya agar model tidak terlalu bergantung pada pola tertentu saja.

    Analogi sederhananya seperti siswa yang belajar dalam berbagai kondisi berbeda sehingga tidak hanya menghafal satu jenis soal. Dengan cara ini, model menjadi lebih fleksibel dan mampu mengenali pola yang lebih umum.

  3. Data Augmentation
    Dalam computer vision atau pengolahan gambar, jumlah data sering kali terbatas. Untuk mengatasi hal tersebut, data dapat diperbanyak secara artifisial melalui teknik data augmentation. Contohnya:

    • gambar diputar,
    • dibalik,
    • dipotong,
    • atau diubah pencahayaannya.

    Walaupun gambar terlihat sedikit berbeda, objek utamanya tetap sama. Teknik ini membantu model mengenali variasi kondisi dunia nyata sehingga tidak mudah overfitting.Sebagai contoh, sistem pengenal wajah akan lebih siap mengenali wajah dari berbagai sudut dan pencahayaan.

  4. Menyederhanakan Model
    Kadang-kadang masalah overfitting muncul karena model terlalu rumit. Neural network dengan terlalu banyak lapisan atau parameter dapat membuat model terlalu sensitif terhadap data pelatihan. Oleh karena itu, mengurangi jumlah lapisan atau parameter dapat membantu model menjadi lebih stabil. Model yang lebih sederhana biasanya lebih mudah melakukan generalisasi terhadap data baru.

  5. K-Fold Cross Validation
    Teknik ini digunakan untuk memastikan model benar-benar bekerja baik pada berbagai bagian data. Caranya dengan membagi data menjadi beberapa kelompok. Model kemudian dilatih dan diuji secara bergantian menggunakan kelompok-kelompok tersebut. Dengan metode ini, ilmuwan data dapat mengetahui apakah model benar-benar memahami pola umum atau hanya menghafal sebagian data tertentu.

  6. Early Stopping
    Kadang model sebenarnya sudah cukup baik, tetapi pelatihan terus dilanjutkan hingga akhirnya mulai menghafal data. Early stopping digunakan untuk menghentikan proses pelatihan ketika performa model pada data validasi mulai menurun. Teknik ini membantu menjaga agar model tidak belajar terlalu jauh hingga mengalami overfitting.

  7. Ensemble Method
    Ensemble method adalah teknik menggabungkan beberapa model sekaligus agar hasil prediksi menjadi lebih stabil dan akurat. Contoh metode ensemble yang populer antara lain:

    • Random Forest
    • Bagging
    • Boosting

    Random Forest misalnya menggunakan banyak decision tree sekaligus, kemudian menggabungkan hasil prediksinya. Cara ini membantu menyeimbangkan kelemahan masing-masing model sehingga performa keseluruhan menjadi lebih baik.

 
Cara Mengatasi Underfitting
Underfitting terjadi ketika model terlalu sederhana dan gagal memahami pola penting dalam data. Model seperti ini biasanya memberikan hasil buruk baik pada data pelatihan maupun data baru.

  1. Menggunakan Model yang Lebih Kompleks
    Jika model terlalu sederhana, ilmuwan data dapat menggunakan model yang lebih canggih agar mampu menangkap hubungan yang lebih rumit. Sebagai contoh, hubungan dalam data dunia nyata sering kali tidak lurus atau sederhana. Karena itu, model yang lebih kompleks dibutuhkan agar dapat memahami pola tersebut dengan lebih baik. Namun, peningkatan kompleksitas tetap harus dikontrol agar tidak berubah menjadi overfitting.

  2. Menambah Fitur
    Semakin banyak informasi relevan yang diberikan kepada model, semakin besar peluang model memahami data dengan benar. Contohnya dalam prediksi harga rumah:

    • lokasi,
    • jumlah kamar,
    • usia bangunan,
    • akses transportasi,
    • dan fasilitas sekitar
    • dapat membantu model menghasilkan prediksi lebih akurat.

    Fitur yang tepat membantu model mengenali pola tersembunyi dalam data.

  3. Mengurangi Regularisasi
    Walaupun regularisasi berguna untuk mencegah overfitting, penggunaan yang terlalu kuat justru membuat model terlalu kaku. Jika model mengalami underfitting, mengurangi tingkat regularisasi dapat memberi model lebih banyak kebebasan untuk belajar dari data.

  4. Menambah Waktu Pelatihan
    Terkadang model belum cukup lama belajar sehingga belum memahami pola data dengan baik. Menambah jumlah epoch atau waktu pelatihan memungkinkan model mempelajari hubungan dalam data secara lebih mendalam. Namun, proses ini tetap perlu dipantau agar tidak berujung pada overfitting.

  5. Menambah Data Pelatihan
    Data yang lebih banyak membantu model memahami variasi kondisi dunia nyata. Semakin kaya dan beragam data pelatihan, semakin baik kemampuan model untuk melakukan generalisasi. Model juga menjadi lebih tahan terhadap perubahan atau variasi data baru.

 
Pentingnya Kualitas Data

Machine learning sangat bergantung pada kualitas data. Bahkan model terbaik sekalipun akan menghasilkan prediksi buruk jika data yang digunakan bermasalah.

Data yang buruk dapat menyebabkan:

  • overfitting,
  • underfitting,
  • dan prediksi yang tidak akurat.

Karena itu, data perlu:

  • dibersihkan,
  • diperiksa,
  • dinormalisasi,
  • dan diverifikasi.

Normalisasi membantu menyamakan skala data agar tidak ada variabel yang terlalu dominan. Sedangkan standardisasi membantu membuat distribusi data menjadi lebih stabil. Proses ini sangat penting agar model dapat belajar secara adil dari seluruh data.

 
Data Drift dan Tantangan Dunia Nyata

Data dunia nyata terus berubah dari waktu ke waktu. Kondisi ini dikenal sebagai data drift. Contohnya:

  • perubahan perilaku pelanggan,
  • tren pasar baru,
  • perubahan cuaca,
  • hingga munculnya penyakit baru.

Karena itu, model AI tidak bisa dibiarkan berjalan tanpa pengawasan. Model perlu:

  • dipantau secara rutin,
  • diperbarui,
  • dan dilatih ulang menggunakan data terbaru.

Tanpa proses ini, akurasi model dapat menurun seiring waktu.

 
AutoML Membantu Pengembangan AI

Saat ini banyak perusahaan menggunakan AutoML untuk mempermudah pengembangan machine learning. AutoML dapat membantu:

  • memilih model terbaik,
  • menyetel parameter,
  • mengevaluasi performa,
  • hingga mengotomatisasi pelatihan.

Teknologi ini membantu mempercepat proses pengembangan AI dan mengurangi risiko kesalahan manusia. Dengan AutoML, pengembang dapat lebih fokus pada analisis dan pengambilan keputusan.

 
Pentingnya Pengetahuan Domain

Selain teknologi, pemahaman terhadap bidang masalah juga sangat penting. Dalam dunia kesehatan misalnya, dokter dapat membantu menentukan data medis yang relevan. Di bidang keuangan, analis memahami indikator ekonomi yang paling berpengaruh. Pengetahuan domain membantu ilmuwan data:

  • memilih fitur penting,
  • membersihkan data dengan tepat,
  • dan menentukan model yang paling sesuai.

Tanpa pemahaman konteks dunia nyata, model AI bisa menghasilkan kesimpulan yang keliru.


Kesimpulan

Overfitting dan underfitting merupakan dua tantangan terbesar dalam pengembangan machine learning dan kecerdasan buatan. Underfitting terjadi ketika model terlalu sederhana sehingga gagal memahami pola data, sedangkan overfitting muncul ketika model terlalu kompleks dan justru menghafal data pelatihan.

Kunci utama dalam membangun model AI yang andal adalah menemukan keseimbangan antara bias dan varians. Model yang baik harus mampu melakukan generalisasi dengan baik terhadap data baru tanpa kehilangan kemampuan memahami pola penting.

Berbagai teknik seperti regularisasi, validasi silang, ensemble learning, data augmentation, hingga rekayasa fitur membantu para insinyur mencapai keseimbangan tersebut. Selain itu, kualitas data dan pemahaman domain juga memegang peran sangat penting dalam menentukan keberhasilan sebuah sistem AI.

Dengan memahami konsep overfitting dan underfitting secara mendalam, para pengembang dan pelajar machine learning dapat membangun sistem yang lebih akurat, efisien, dan bermanfaat dalam berbagai aplikasi dunia nyata, mulai dari kesehatan hingga keuangan dan teknologi modern lainnya.

Bagikan artikel ini

Komentar ()

Video Terkait