Ketika para ilmuwan dan insinyur data melatih model machine learning (ML), mereka berisiko menggunakan algoritma yang terlalu sederhana untuk menangkap pola yang mendasari data, yang mengarah ke underfitting, atau yang terlalu kompleks, yang mengarah ke overfitting. Mengelola overfitting dan underfitting merupakan tantangan utama dalam alur kerja ilmu data dan mengembangkan sistem kecerdasan buatan (AI) yang andal.
Bias dan varians menjelaskan keseimbangan yang perlu dilakukan oleh para insinyur untuk membantu memastikan kecocokan yang baik dalam model machine learning mereka. Dengan demikian, tradeoff bias-variance sangat penting untuk mengatasi underfitting dan overfitting.
Model yang bias cenderung membuat asumsi kuat tentang data pelatihan untuk menyederhanakan proses pembelajaran, sehingga mengabaikan detail atau pola kompleks yang sulit dijelaskan. Sementara itu, varians menggambarkan sejauh mana model merespons perubahan dalam data pelatihan.
Contoh model bias tinggi termasuk algoritma regresi atau decision trees, yang mengasumsikan hubungan linier atau biner sederhana bahkan ketika pola data lebih kompleks.
Menggunakan model regresi linier untuk data yang memiliki hubungan kuadratik akan menghasilkan keterbatasan, karena model ini tidak dapat menangkap pola nonlinier. Akibatnya, model akan berkinerja buruk baik pada data pelatihan maupun data uji, karena gagal menggeneralisasi dengan baik terhadap data baru.
Generalisasi mengacu kepada kemampuan model untuk mengenali dan menerapkan pola yang dipelajari pada data baru yang belum pernah dilihat sebelumnya. Model dengan varians rendah cenderung mengalami underfitting karena terlalu sederhana untuk menangkap pola yang kompleks. Sebaliknya, model dengan bias rendah berisiko mengalami overfitting jika terlalu fleksibel.
Varians yang tinggi menunjukkan bahwa model terlalu sensitif terhadap noise dan pola acak dalam data pelatihan. Model semacam ini cenderung terlalu fleksibel, menghasilkan kesalahan yang rendah pada data pelatihan tetapi gagal menggeneralisasi saat diuji dengan data baru, sehingga menyebabkan kesalahan yang tinggi pada tahap pengujian.
Bayangkan menghafal jawaban untuk ujian alih-alih memahami konsep yang dibutuhkan untuk mendapatkan jawaban sendiri. Jika ujian berbeda dari apa yang dipelajari, Anda akan kesulitan menjawab pertanyaan. Mencapai keseimbangan antara varians dan bias adalah kunci untuk mencapai kinerja optimal dalam model machine learning.
Model overfit dapat menghasilkan akurasi model yang tinggi pada data pelatihan tetapi akurasi yang rendah pada data baru karena menghafal, bukan generalisasi. Overfitting terjadi ketika para insinyur menggunakan model machine learning dengan terlalu banyak parameter atau lapisan, seperti neural networks pembelajaran mendalam, membuatnya sangat mudah beradaptasi dengan data pelatihan.
Saat dilatih pada kumpulan data yang kecil atau mengandung banyak noise, model berisiko menghafal data spesifik dan noise tersebut, alih-alih mengenali pola umum. Jika data memiliki kesalahan atau ketidakkonsistenan, model dapat keliru menganggapnya sebagai pola yang valid.
Insinyur tidak hanya mencari kesenjangan kinerja antara pelatihan dan pengujian, tetapi juga mengidentifikasi overfitting dalam kurva pembelajaran. Overfitting terjadi ketika loss pada data pelatihan mendekati nol, sementara loss pada data validasi justru meningkat, yang mengindikasikan kemampuan generalisasi model yang buruk.
Tanda lain dari model overfit adalah batasan keputusannya, aturan yang dipelajari model untuk mengklasifikasikan titik data. Batas keputusan menjadi terlalu rumit dan tidak menentu dalam model overfit, karena beradaptasi dengan gangguan dalam set pelatihan daripada menangkap struktur dasar yang sebenarnya, yang selanjutnya mengindikasikan overfitting.
Selain itu, set data dengan dimensi tinggi dapat menyebabkan overfitting akibat “kutukan dimensi”. Saat jumlah fitur meningkat, distribusi data menjadi lebih jarang, sehingga model kesulitan menemukan pola yang bermakna. Hal ini meningkatkan varians dan memperbesar risiko overfitting.
Model underfit berkinerja buruk pada data pelatihan dan data pengujian karena gagal menangkap pola dominan dalam kumpulan data. Insinyur biasanya mengidentifikasi underfitting melalui kinerja yang buruk secara konsisten di kedua kumpulan data.
Model yang mengalami underfitting cenderung memiliki tingkat kesalahan tinggi dalam kurva pembelajaran, menghasilkan metrik evaluasi yang kurang optimal, serta menunjukkan pola residual yang sistematis. Hal ini menandakan bahwa model tidak mampu memahami dan menangkap hubungan mendasar dalam data secara efektif.
Underfitting dalam machine learning sering terjadi karena model yang sederhana,rekayasa fitur yang buruk, atau regularisasi berlebihan yang terlalu membatasi fleksibilitas model. Demikian pula, pemilihan fitur yang buruk—seperti menghilangkan istilah interaksi atau fitur polinomial—dapat mencegah model untuk memahami hubungan yang tersembunyi dalam data. Prapemrosesan yang tidak memadai, waktu pelatihan yang tidak mencukupi, atau kurangnya data yang cukup untuk melatih model juga dapat menyebabkan ketidaksesuaian.
Model diagnosa medis
Sebuah model machine learning dilatih untuk mengklasifikasikan gambar medis sebagai "healthy" atau "diseased" menggunakan kumpulan data yang kecil. Model tersebut mengingat gambar pelatihan, sehingga mencapai akurasi yang hampir sempurna, tetapi berkinerja buruk pada gambar baru karena telah mempelajari gangguan atau artefak tertentu dalam data pelatihan, bukan fitur penyakit umum.
Prediksi harga saham
Model finansial menggunakan neural networks kompleks dengan banyak parameter untuk memprediksi harga saham. Daripada belajar tren atau pola, sistem ini menangkap fluktuasi acak dalam data historis, yang menyebabkan prediksi latih yang sangat akurat, tetapi kinerja buruk ketika dicek pada harga saham di masa depan.
Prediksi churn pelanggan
Model retensi pelanggan mencakup terlalu banyak fitur spesifik, seperti data demografi yang sangat terperinci, menyebabkannya terlalu sesuai dengan data pelatihan. Sistem mengalami kekurangan dalam menggeneralisasi dan mengidentifikasi pola di antara berbagai kelompok demografi ketika diterapkan pada basis pelanggan yang lebih luas.
Prediksi Harga Rumah
Model regresi linier memprediksi harga rumah hanya berdasarkan luas bangunan. Model tersebut gagal memperhitungkan fitur penting lainnya seperti lokasi, jumlah kamar tidur, atau usia rumah, yang menyebabkan buruknya kinerja pada data pelatihan dan pengujian.
Perkiraan cuaca
Suatu model menggunakan sekumpulan kecil fitur sederhana, seperti suhu dan kelembapan rata-rata untuk memprediksi curah hujan. Gagal mencapai hubungan yang lebih kompleks, seperti pola musim atau interaksi antara beberapa faktor atmosfer, yang menyebabkan akurasi prediksi yang rendah dan terus menerus buruk.
Pengenalan Gambar
Sebuah decision trees yang dangkal digunakan untuk mengklasifikasikan gambar kucing dan anjing. Karena sederhanaannya, alat ini gagal membedakan dua spesies, menunjukkan kinerja buruk pada gambar latih dan gambar baru yang belum pernah dilihat sebelumnya.
Algoritma machine learning melatih model untuk mengenali pola dalam data, memungkinkan para insinyur menggunakannya untuk forecasting masa depan dari input yang tidak terlihat. Penyetelan hiperparameter memainkan peran besar dalam menyeimbangkan kelebihan dan kekurangan, memastikan model prediktif menggeneralisasi secara efektif ke data yang tidak terlihat.
Dengan menyesuaikan hiperparameter, teknisi dapat fine tuning laju pembelajaran, tingkat regularisasi, jumlah lapisan dalam neural networks, atau kedalaman maksimum decision trees. Penyetelan yang tepat membantu menjaga keseimbangan antara model yang terlalu kaku dan model yang terlalu adaptif.
Regularisasi
Regularisasi untuk model regresi atau dropout dalam neural networks, adalah teknik yang digunakan dalam machine learning dengan mencegah model agar tidak terlalu bergantung pada fitur tunggal atau dari penyesuaian noise dalam data pelatihan.
Jenis-jenis regularisasi yang umum meliputi L1 dan L2. Regularisasi L1 mendorong kelangkaan dengan mengecilkan beberapa koefisien hingga nol, sementara L2 mengurangi ukuran semua koefisien, menjadikan model lebih sederhana dan lebih mudah digeneralisasi. Regularisasi membantu model mengidentifikasi pola yang mendasari data.
Penambahan data
Augmentasi data adalah strategi lain yang efektif, terutama dalam tugas-tugas seperti visi komputer, di mana memperluas data pelatihan secara artifisial dengan membalik, memutar, atau memotong gambar membantu model menggeneralisasi lebih baik. Simplifikasi model dengan mengurangi jumlah parameter atau lapisan dalam neural networks juga membatasi kemampuannya untuk mengingat detail data pelatihan.
Validasi silang K-fold
Insinyur dapat menggunakan teknik seperti validasi silang k-fold untuk mengevaluasi generalisasi model juga. Validasi silang K-fold membagi data menjadi subset bagian, melatih beberapa dan menguji sisanya.
Demikian pula, insinyur dapat menggunakan set penahanan, sebagian data dari set pelatihan yang disisihkan dan tidak digunakan selama pelatihan, untuk mengevaluasi kemampuan model dalam melakukan generalisasi. Hasil pengujian pada set ini kemudian dirata-ratakan untuk menghasilkan skor kinerja keseluruhan.
Kerangka kerja evaluasi
Selain teknik-teknik tersebut, penggunaan kerangka kerja evaluasi model yang solid sangat penting untuk memastikan model machine learning dapat menggeneralisasi dengan baik. Salah satu metode evaluasi tingkat lanjut adalah validasi silang bersarang, yang sangat berguna untuk penyetelan hiperparameter. Pada pendekatan ini, loop luar membagi data menjadi subset pelatihan dan pengujian, sehingga kemampuan generalisasi model dapat dinilai secara komprehensif.
Secara bersamaan, loop internal menyesuaikan hiperparameter pada data pelatihan untuk mencegah overfitting terhadap set validasi. Pendekatan ini memastikan bahwa proses penyetelan hiperparameter terpisah dari evaluasi model, sehingga menghasilkan estimasi yang lebih akurat tentang kinerja model pada data yang belum pernah dilihat sebelumnya.
Kerangka kerja lainnya yang efektif menggabungkan pemecahan uji kereta dengan penghentian awal untuk memantau kehilangan validasi selama melatih. Dengan mengevaluasi kinerja model pada set validasi khusus, para insinyur dapat menghentikan melatih ketika kinerja validasi naik atau menurun, mencegah overfitting.
Kerangka kerja evaluasi harus mencakup pengambilan sampel bertingkat untuk masalah klasifikasi dengan kumpulan data yang tidak seimbang untuk membantu memastikan bahwa setiap pembagian data mempertahankan distribusi kelas yang sama dengan kumpulan data asli. Hal ini mencegah terjadinya overfitting pada kelas mayoritas sekaligus memberikan penilaian yang adil terhadap kinerja kelas minoritas.
Metode ansambel
Metode ensemble, seperti bagging dan boosting, menggabungkan beberapa model untuk mengurangi kelemahan individual dan meningkatkan generalisasi keseluruhan. Misalnya, hutan acak, teknik ansambel yang populer, mengurangi overfitting dengan menggabungkan prediksi dari beberapa decision trees, yang secara efektif menyeimbangkan bias dan varians.
Model yang lebih kompleks
Untuk mengatasi underfitting, para insinyur sering meningkatkan kompleksitas model untuk menangkap pola yang mendasari data dengan lebih baik. Misalnya, beralih dari regresi linier sederhana ke regresi polinomial dapat membantu dalam kasus di mana fitur hubungan dan variabel target bersifat nonlinier. Sementara model yang lebih kompleks dapat mengatasi underfitting, mereka berisiko overfitting jika tidak diatur dengan benar.
Regularisasi
Mengurangi penalti regularisasi juga dapat memberi model lebih banyak fleksibilitas untuk menyesuaikan data tanpa terlalu dibatasi. Misalnya, parameter L1 dan L2 adalah jenis regularisasi yang digunakan untuk memeriksa kompleksitas suatu model. L1 (lasso) menambahkan penalti untuk mendorong model agar memilih hanya fitur yang paling penting. L2 (ridge) membantu mengarahkan model ke tingkat kepentingan yang terdistribusi secara lebih merata di seluruh fitur.
Rekayasa fitur
Rekayasa dan seleksi fitur membantu meningkatkan kualitas data dengan membuat atau mengubah fitur—seperti menambahkan interaksi antar variabel, fitur polinomial, atau mengodekan variabel kategorikal—sehingga model dapat memperoleh informasi yang lebih relevan.
Waktu pelatihan
Memberikan model lebih banyak waktu pelatihan dengan meningkatkan jumlah epoch membantu memastikan bahwa model memiliki peluang yang memadai untuk belajar dari data. Epoch mewakili satu lintasan lengkap melalui set data pelatihan dan beberapa epoch memungkinkan model mempelajari pola secara lebih efektif.
Beberapa epoch sering kali digunakan agar model dapat mempelajari pola dalam data secara lebih efektif. Selain itu, meningkatkan ukuran set data pelatihan membantu model mengidentifikasi pola yang lebih beragam, mengurangi risiko penyederhanaan yang berlebihan, dan meningkatkan generalisasi.
Kualitas data
Teknisi harus menilai data pelatihan secara menyeluruh untuk memastikan bahwa data tersebut akurat, lengkap, dan konsisten. Selain itu, verifikasi silang dengan sumber tepercaya perlu dilakukan untuk menangani setiap ketidaksesuaian. Teknik seperti normalisasi (mengubah skala nilai menjadi antara 0 dan 1) dan standardisasi (mengubah data sehingga memiliki rata-rata 0 dan deviasi standar 1) membantu memastikan bahwa model tidak memprioritaskan satu variabel karena perbedaan skala.
Seiring waktu, distribusi data input dapat berubah—fenomena yang dikenal sebagai penyimpangan data—dan hal ini dapat membuat model menjadi kurang relevan terhadap data baru. Untuk mengatasinya, pemantauan rutin dan pelatihan ulang secara berkala dengan data yang diperbarui sangat penting. Selain itu, menghapus outlier dapat membantu mencegah hasil yang tidak akurat dan meningkatkan ketangguhan model.
Alat bantu seperti AutoML dapat menyederhanakan proses pengembangan model dengan mengotomatiskan penyetelan hiperparameter, pemilihan fitur, dan pembuatan kerangka kerja. Hal ini memungkinkan para insinyur untuk lebih fokus pada insight tingkat tinggi dan pengambilan keputusan.
Kesesuaian model yang baik terletak pada keseimbangan optimal antara underfitting dan overfitting. Model ini menggambarkan model yang secara akurat menangkap pola dasar dalam data tanpa terlalu sensitif terhadap gangguan atau fluktuasi acak.
Pengetahuan domain sangat penting dalam mengatasi underfitting dan overfitting karena memungkinkan insinyur menyesuaikan model agar lebih sesuai dengan karakteristik spesifik masalah yang dihadapi. Data dunia nyata sering kali mengandung noise, ketidakseimbangan, atau inkonsistensi.
Logistik yang efisien, seperti pemisahan dan prapemrosesan data yang tepat, dapat mengurangi risiko bias dan kesalahan dalam model. Memahami konteks data memungkinkan insinyur mengambil keputusan yang lebih akurat terkait prapemrosesan, pemilihan fitur, dan desain model untuk memastikan pelatihan yang optimal. Contohnya:
Mencapai keseimbangan antara overfitting dan underfitting memungkinkan para insinyur untuk mengidentifikasi rentang optimal di mana model machine learning bertransisi dari kesederhanaan yang kaku ke generalisasi yang bermakna tanpa menjadi terlalu rumit. Model yang seimbang dapat memprediksi churn pelanggan di berbagai demografi, mengklasifikasikan gambar medis secara efektif meskipun ada variasi dalam kualitas data, dan memperkirakan harga saham dengan menangkap tren pasar tanpa overfitting terhadap fluktuasi acak.
Mengelola bias atau varians secara efektif akan menghasilkan model yang secara akurat mempelajari pola dalam data sambil mempertahankan fleksibilitas yang diperlukan untuk beradaptasi dengan hal yang tidak diketahui. Dengan mencapai keseimbangan ini, para ilmuwan data dapat menciptakan solusi yang secara teknis baik dan berdampak pada aplikasi dunia nyata.