My IBM Masuk Berlangganan

Apa itu overfitting

15 Oktober 2021

Apa itu overfitting

Dalam machine learning, overfitting terjadi ketika sebuah algoritme terlalu cocok atau bahkan persis dengan data pelatihannya, sehingga menghasilkan model yang tidak dapat membuat prediksi atau kesimpulan yang akurat dari data apa pun selain data pelatihan. 

Overfitting menggagalkan tujuan model machine learning. Generalisasi model ke data baru pada akhirnya memungkinkan kita menggunakan algoritme machine learning setiap hari untuk membuat prediksi dan mengklasifikasikan data.

Ketika algoritma machine learning dibangun, mereka memanfaatkan kumpulan data sampel untuk melatih modelnya. Namun, ketika model berlatih terlalu lama pada data sampel atau ketika model terlalu kompleks, model dapat mulai mempelajari "kebisingan", atau informasi yang tidak relevan, di dalam kumpulan data. Ketika model menghafal kebisingan dan terlalu dekat dengan set pelatihan, model menjadi "overfitted," dan tidak dapat menggeneralisasi dengan baik terhadap data baru. Jika sebuah model tidak dapat menggeneralisasi dengan baik terhadap data baru, maka model tersebut tidak akan dapat melakukan tugas klasifikasi atau prediksi yang diinginkan.

Tingkat kesalahan yang rendah dan varians yang tinggi adalah indikator yang baik dari overfitting. Untuk mencegah perilaku seperti ini, bagian dari kumpulan data pelatihan biasanya disisihkan sebagai "set uji" untuk memeriksa adanya overfitting. Jika data pelatihan memiliki tingkat kesalahan yang rendah dan data uji memiliki tingkat kesalahan yang tinggi, itu menandakan adanya overfitting.

Desain 3D bola yang menggelinding di lintasan

Berita + Insight AI terbaru 


Temukan insight dan berita yang dikurasi oleh para pakar tentang AI, cloud, dan lainnya di Buletin Think mingguan. 

Overfitting vs underfitting

Jika pelatihan berlebihan atau kompleksitas model mengakibatkan overfitting, maka respons pencegahan yang logis adalah dengan menghentikan proses pelatihan lebih awal, yang juga dikenal sebagai, “penghentian dini” atau mengurangi kompleksitas model dengan menghilangkan input yang kurang relevan. Namun, jika Anda berhenti terlalu dini atau mengecualikan terlalu banyak fitur penting, Anda mungkin mengalami masalah yang berlawanan, dan sebaliknya, Anda mungkin mengalami underfitting pada model Anda. Underfitting terjadi ketika model tidak dilatih dalam waktu yang cukup atau variabel input tidak cukup signifikan untuk menentukan hubungan yang berarti antara variabel input dan output.

Dalam kedua skenario itu, model tidak dapat menentukan tren dominan dalam kumpulan data pelatihan. Akibatnya, underfitting juga melakukan generalisasi yang buruk terhadap data yang tidak terlihat. Namun, tidak seperti overfitting, model underfitted mengalami bias yang tinggi dan variansi yang lebih sedikit dalam prediksinya. Hal ini menggambarkan tradeoff bias-varians, yang terjadi ketika model yang mengalami underfitting beralih ke kondisi overfitting. Saat model belajar, biasnya berkurang, tetapi variansnya dapat meningkat seiring dengan overfitting. Saat melatih model, tujuannya adalah untuk menemukan “titik terbaik” di antara underfitting dan overfitting, sehingga dapat membentuk tren dominan dan menerapkannya secara luas pada kumpulan data baru.

Mixture of Experts | Podcast

Decoding AI: Rangkuman Berita Mingguan

Bergabunglah dengan panel insinyur, peneliti, pemimpin produk, dan sosok kelas dunia lainnya selagi mereka mengupas tuntas tentang AI untuk menghadirkan berita dan insight terbaru seputar AI.

Cara mendeteksi model yang mengalami overfitting

Untuk memahami keakuratan model machine learning, penting untuk menguji kebugaran model. Validasi silang K-fold adalah salah satu teknik paling populer untuk menilai keakuratan model.

Dalam validasi silang k-folds, data dibagi menjadi k subset berukuran sama, yang juga disebut "lipatan." Salah satu lipatan-k akan bertindak sebagai set uji, juga dikenal sebagai set holdout atau set validasi, dan lipatan yang tersisa akan melatih model. Proses ini berulang sampai masing-masing lipatan telah bertindak sebagai lipatan holdout. Setelah setiap evaluasi, skor dicatat dan ketika semua iterasi telah selesai, skor dirata-rata untuk menilai kinerja model secara keseluruhan.

Bagaimana menghindari overfitting

Meskipun menggunakan model linier membantu kita menghindari overfitting banyak masalah dunia nyata yang merupakan masalah nonlinier. Selain memahami cara mendeteksi overfitting, penting juga untuk memahami cara menghindari overfitting. Di bawah ini adalah sejumlah teknik yang dapat Anda gunakan untuk mencegah overfitting:

  • Penghentian awal: Seperti yang telah kami sebutkan sebelumnya, metode ini berusaha untuk menghentikan sementara pelatihan sebelum model mulai mempelajari kebisingan di dalam model. Pendekatan ini berisiko menghentikan proses pelatihan terlalu cepat, yang mengarah ke masalah sebaliknya underfitting. Menemukan “titik terbaik” antara underfitting dan overfitting adalah tujuan akhirnya di sini.
  • Latih dengan lebih banyak data: Memperluas set pelatihan dengan memasukkan lebih banyak data dapat meningkatkan akurasi model dengan memberikan lebih banyak kesempatan untuk menguraikan hubungan dominan di antara variabel input dan output. Konon, ini adalah metode yang lebih efektif ketika data yang bersih dan relevan disuntikkan ke dalam model. Jika tidak, Anda bisa terus menambahkan lebih banyak kompleksitas pada model, menyebabkan overfitting.
  • Penambahan data: Meskipun lebih baik menyuntikkan data yang bersih dan relevan ke dalam data pelatihan Anda, terkadang data yang bising ditambahkan untuk membuat model menjadi lebih stabil. Namun, metode ini harus dilakukan dengan cermat.
  • Pemilihan fitur: Ketika Anda membangun sebuah model, Anda akan memiliki sejumlah parameter atau fitur yang digunakan untuk memprediksi hasil yang diberikan, tetapi sering kali, berbagai fitur ini dapat menjadi berlebihan bagi orang lain. Seleksi fitur adalah proses mengidentifikasi fitur yang paling penting dalam data pelatihan dan kemudian menghilangkan fitur yang tidak relevan atau berlebihan. Ini biasanya disalahartikan sebagai pengurangan dimensi, tetapi ini sebenarnya berbeda. Namun, kedua metode membantu menyederhanakan model Anda untuk menetapkan tren dominan dalam data.
  • Regularisasi: Jika overfitting terjadi apabila model terlalu kompleks, maka masuk akal bagi kita untuk mengurangi jumlah fitur. Tetapi bagaimana jika kita tidak tahu input mana yang harus dihilangkan selama proses pemilihan fitur? Jika kita tidak tahu fitur mana yang harus dihapus dari model kita, metode regularisasi dapat sangat membantu. Regularisasi menerapkan “penalti” pada parameter input dengan koefisien yang lebih besar, yang kemudian membatasi jumlah varians dalam model. Meskipun ada sejumlah metode regularisasi, seperti regularisasi lasso, regresi ridge dan dropout, semuanya berusaha untuk mengidentifikasi dan mengurangi noise dalam data.
  • Metode ansambel: Metode pembelajaran ansembel terdiri dari sekumpulan pengklasifikasi—misalnya decision trees, dan prediksi mereka digabungkan untuk mengidentifikasi hasil yang paling populer. Metode ansambel yang paling terkenal adalah mengantongi dan meningkatkan. Dalam bagging, sampel acak data dalam set pelatihan dipilih dengan penggantian—artinya, setiap titik data dapat dipilih lebih dari satu kali. Setelah beberapa sampel data dihasilkan, model-model ini kemudian dilatih secara independen, dan tergantung pada jenis tugas, yaitu regresi atau klasifikasi, rata-rata atau sebagian besar prediksi tersebut menghasilkan perkiraan yang lebih akurat. Ini biasanya digunakan untuk mengurangi varians dalam kumpulan data yang bising.

Penelitian terbaru

Sementara di atas adalah definisi yang mapan tentang overfitting, penelitian terbaru (tautan berada di luar IBM) menunjukkan bahwa model kompleks, seperti model pembelajaran mendalam dan neural networks, bekerja pada akurasi tinggi meskipun dilatih untuk “menyesuaiakan atau menginterpolasi dengan tepat.” Temuan ini secara langsung bertentangan dengan literatur historis tentang topik ini, dan dijelaskan melalui kurva risiko “penurunan ganda” di bawah ini. Anda dapat melihat bahwa saat model belajar melewati ambang interpolasi, kinerja model meningkat. Metode yang kami sebutkan sebelumnya untuk menghindari overfitting, seperti penghentian dini dan regularisasi, sebenarnya dapat mencegah interpolasi.

Solusi terkait

Solusi terkait

IBM watsonx.ai

Latih, validasi, lakukan tuning, dan terapkan AI generatif, model dasar, dan kemampuan machine learning dengan IBM watsonx.ai, studio perusahaan generasi berikutnya untuk pembangun AI. Bangun aplikasi AI dalam waktu singkat, dengan sedikit data.

Temukan watsonx.ai
Solusi kecerdasan buatan (AI)

Gunakan AI di bisnis Anda dalam perpaduan antara keahlian AI terdepan di industri dari IBM dan portofolio solusi Anda.

Jelajahi solusi AI
Konsultasi dan layanan AI

Temukan kembali alur kerja dan operasi yang penting dengan menambahkan AI untuk memaksimalkan pengalaman, pengambilan keputusan secara real-time, dan nilai bisnis.

Jelajahi layanan AI
Ambil langkah selanjutnya

Dapatkan akses satu atap ke kemampuan yang mencakup siklus hidup pengembangan AI. Hasilkan solusi AI yang kuat dengan antarmuka ramah pengguna, alur kerja yang efisien, serta akses ke API dan SDK berstandar industri.

Jelajahi watsonx.ai Pesan demo langsung