Apa itu Overfitting & Underfitting Dalam Pembelajaran Mesin? [Semua yang Perlu Anda Pelajari]
Diterbitkan: 2020-02-18Machine Learning bukanlah mata pelajaran yang paling mudah untuk dikuasai. Overfitting dan Underfitting adalah beberapa dari banyak istilah yang umum di komunitas Machine Learning. Memahami konsep-konsep ini akan meletakkan dasar untuk pembelajaran masa depan Anda.
Kita akan mempelajari konsep-konsep ini secara mendalam di artikel ini. Kami juga akan membahas ide dasar kesalahan ini, mengapa itu terjadi, dan bagaimana Anda dapat memperbaikinya. Anda akan belajar sedikit tentang model data dan hubungannya dengan kesalahan ini juga.
Jadi tanpa berbelit-belit, mari selami:
Daftar isi
Apa itu Model Data?
Sebelum kita mulai membahas apa itu Overfitting dan Underfitting, mari kita pahami dulu apa itu model. Model data adalah sistem untuk membuat prediksi dengan input. Anda dapat mengatakan bahwa model adalah teori untuk memecahkan masalah. Misalnya, jika Anda ingin memprediksi pertumbuhan beberapa perusahaan, Anda dapat mengambil keuntungan mereka sebagai input dan menghasilkan hasil berdasarkan hubungan antara pendapatan dan pertumbuhan mereka. Output untuk contoh ini adalah prediksi pertumbuhan perusahaan.
Jadi inputnya adalah laba perusahaan saat ini, sedangkan proyeksi pertumbuhannya adalah outputnya. Hubungan antara keduanya adalah model. Model diperlukan untuk menghasilkan output.
Model memahami hubungan antara input dan output melalui dataset pelatihan. Kami menyebut fitur input dan label output. Jadi, Anda mungkin melihat nama-nama ini di artikel juga. Selama pelatihan model, Anda akan memberikan fitur serta label dan membiarkannya mengetahui hubungan di antara mereka. Setelah menyelesaikan pelatihan, Anda dapat mencoba model dengan hanya memberikan satu set fitur, yang prediksi benarnya tersedia untuk Anda.

Setelah menghasilkan prediksinya, Anda akan membandingkannya dengan prediksi yang benar yang Anda miliki dan melihat seberapa akurat modelnya. Model memiliki banyak bentuk.
Pelatihan dan Pengujian Data
Anda mungkin memberikan fitur sempurna pada model data saat Anda masih pemula, tetapi bukan itu yang terjadi di dunia nyata. Data di dunia nyata dipenuhi dengan kebisingan dan informasi yang tidak berguna. Apa pun sumber data Anda, Anda akan menemukan beberapa variabel yang ada di dalamnya, yang tidak sesuai dengan tren.
Dalam contoh proyeksi pertumbuhan perusahaan kami, Anda tahu bahwa pertumbuhan mereka tidak akan sepenuhnya bergantung pada keuntungan mereka. Akan ada banyak faktor yang berperan. Selama pelatihan model Anda, Anda harus menambahkan beberapa kebisingan untuk membuatnya realistis. Setelah Anda membuat data, Anda harus membaginya menjadi dua set untuk pelatihan dan pengujian.
Anda akan menggunakan data pelatihan untuk membantu model mempelajari hubungan antara fitur dan label. Dan Anda akan menggunakan data pengujian untuk mengevaluasi kinerjanya.
Ada banyak bentuk model yang ada di dunia data. Memilih satu bisa sedikit menakutkan, tetapi dengan sedikit latihan, itu menjadi lebih mudah. Model standar adalah regresi polinomial. Ini adalah bentuk regresi linier di mana input dinaikkan ke berbagai kekuatan. Ini semacam regresi linier, tetapi tidak membentuk garis lurus. Baca lebih lanjut tentang implementasi regresi linier.
Anda mendefinisikan polinomial berdasarkan urutannya. Orde polinomial adalah pangkat tertinggi dari x dalam persamaannya. Dan urutan polinomial menunjukkan derajatnya juga. Misalnya, persamaan garis lurus memiliki 1 derajat.
Pentingnya Memperbaiki Overfitting dan Underfitting dalam Pembelajaran Mesin
Overfitting dan Underfitting terjadi ketika Anda berurusan dengan derajat polinomial model Anda. Seperti yang kami sebutkan sebelumnya, derajat polinomial tergantung pada pangkat tertinggi x dalam persamaannya. Nilai ini menunjukkan seberapa fleksibel model Anda. Jika model Anda memiliki derajat tinggi, itu akan memiliki lebih banyak kebebasan. Dengan derajat yang tinggi, suatu model dapat mencakup banyak objek data.
Di sisi lain, model dengan derajat yang lebih rendah dari yang diperlukan tidak akan dapat mencakup objek data yang memadai. Kedua situasi ini dapat menyebabkan hasil kotor yang tidak berguna.
Masalah sebelumnya dengan tingkat yang lebih tinggi dari yang diperlukan adalah Overfitting. Dan masalah kedua kurang dari gelar yang dibutuhkan adalah underfitting. Seperti yang Anda lihat, keduanya dapat merusak model Anda dan merusak hasil Anda.

Jika Anda tidak memperbaiki masalah ini, model Anda tidak akan memberikan hasil yang akurat, dan Anda akan memiliki label yang tidak berguna untuk digunakan.
Sekarang setelah kita mengetahui konsep dasarnya, mari kita bahas masing-masing secara rinci:
Apa itu Overfitting?
Saat algoritme pembelajaran mesin mulai mencatat noise di dalam data, kami menyebutnya Overfitting. Dengan kata sederhana, ketika algoritme mulai terlalu memperhatikan detail kecil. Dalam pembelajaran mesin, hasilnya adalah untuk memprediksi kemungkinan keluaran, dan karena Overfitting, itu dapat menghambat akurasinya dalam waktu yang lama. Kami tahu kedengarannya seperti hal yang baik, tetapi tidak.
Contoh parah Overfitting dalam pembelajaran mesin dapat berupa grafik di mana semua titik terhubung secara linier. Kami ingin menangkap tren, tetapi grafik tidak melakukannya.
Model yang tidak dapat membuat prediksi yang baik tetapi mempelajari segala kemungkinan dari data tidak berguna karena mengarah pada hasil yang tidak akurat.
Apa yang harus dilakukan ketika Anda melihat Overfitting?
Kami dapat memperbaiki masalah ini hanya dengan mengurangi jumlah data yang digunakan algoritme dan tidak membebani sistem. Varians tinggi (Overfitting) membuat segalanya lebih buruk daripada lebih baik. Beberapa teknik konvensional yang digunakan untuk mengatasi Overfitting adalah sebagai berikut:
Mengurangi Iterasi
Dengan mengurangi jumlah repetisi yang dijalankan sebelum Overfitting terjadi, kita bisa menghentikannya. Anda dapat menemukan jumlah iterasi yang tepat dengan metode coba-coba.
Regularisasi
Ini membatasi estimasi koefisien, yang mendekati 0. Dengan kata yang lebih sederhana, kita dapat mengatakan bahwa ini memberitahu algoritma untuk menggunakan model yang lebih lunak daripada model yang kaku. Pelajari lebih lanjut tentang regularisasi dan cara menghindari overfitting.
Pemangkasan (standar)
Cara termudah dan paling umum untuk menghindari Overfitting adalah Pemangkasan. Itu menghilangkan setiap node yang menambahkan sedikit atau tidak ada kekuatan prediktif.
Validasi Silang Lima Kali Lipat
Menggunakan validasi silang adalah salah satu metode yang tidak terlalu rumit untuk memeriksa Overfitting.
Apa itu Underfitting?
Seperti namanya, Underfitting adalah saat model tidak cukup pas untuk memberi Anda hasil. Model data underfit tidak tahu cara menargetkan objek data yang memadai. Dengan derajat yang lebih rendah, grafik akhirnya kehilangan sebagian besar fitur yang ada.
Dengan kata lain, modelnya 'terlalu sederhana' untuk menghasilkan hasil jika underfit. Namun, memecahkan masalah ini cukup lebih nyaman dan tidak memerlukan banyak usaha seperti yang dilakukan Overfitting sebelumnya.
Apa yang harus dilakukan ketika Anda melihat Underfitting?
Jika model Anda kurang fit, Anda harus memberinya lebih banyak fitur. Dengan lebih banyak fitur, itu akan memiliki ruang hipotesis yang lebih besar. Itu dapat menggunakan ruang itu untuk menghasilkan hasil yang akurat. Mendeteksi underfitting lebih nyaman dibandingkan dengan Overfitting sehingga Anda tidak akan kesulitan mengidentifikasi kesalahan ini. Namun, Anda hanya harus meningkatkan fitur dan bukan seluruh data saat menangani model yang kurang pas. Memperluas data menghasilkan lebih banyak kesalahan dalam kasus ini.

Baca: Ide Proyek Pembelajaran Mesin yang Menarik
Tekan Sweet Spot
Dalam pembelajaran mesin, Anda ingin model data Anda berada di antara Underfitting dan Overfitting. Seharusnya tidak mencakup terlalu banyak titik data atau terlalu sedikit. Saat Anda akan melatih model Anda lebih jauh, Anda dapat meningkatkannya lebih jauh dan memperbaiki kesalahannya. Kesalahan model Anda akan mulai berkurang jumlahnya dengan set pelatihan dan set pengujian.
Cara yang bagus untuk mencapai sweet spot antara Overfitting dan Underfitting adalah dengan berhenti melatih model Anda sebelum kesalahannya mulai meningkat. Ini adalah solusi umum, yang dapat Anda gunakan selain dari metode yang telah kami sebutkan sebelumnya di artikel ini.
Kesimpulan
Setiap profesional data menghadapi masalah Overfitting dan Underfitting. Melatih model data tidak mudah, dan perlu banyak latihan untuk mengenalnya. Namun, dengan pengalaman, Anda akan mulai mengidentifikasi masalah sejak dini dan menghindari penyebab kesalahan sama sekali.
Sangat penting untuk memahami kesalahan seperti itu jika Anda ingin menjadi ahli pembelajaran mesin. Jika Anda tertarik untuk mempelajari lebih lanjut tentang pembelajaran mesin dan ilmu data, lihat PG Diploma IIIT-B & upGrad dalam Pembelajaran Mesin & AI yang dirancang untuk profesional yang bekerja dan menawarkan 450+ jam pelatihan ketat, 30+ studi kasus & tugas , Status Alumni IIIT-B, 5+ proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.