Hari ini profesor kami menyatakan di kelas bahwa "overfitting dengan pengklasifikasi linear tidak mungkin". Saya berpendapat bahwa itu salah, karena bahkan pengklasifikasi linier dapat peka terhadap outlier dalam set pelatihan - ambil contohnya margin keras Dukungan Mesin Vektor: Satu titik data berisik dapat mengubah hyperplane mana yang akan digunakan untuk memisahkan dataset. Atau saya salah? Jelas, linearitas mungkin akan mencegah daripada overfitting karena kompleksitas model yang lebih rendah, masih saya tidak melihat mengapa overfitting seharusnya tidak mungkin. Satu poin tambahan adalah ketika saya mencoba memikirkan masalah ini saya menyadari bahwa "overfitting" sepertinya tidak didefinisikan secara formal. Mengapa demikian? Tidak akankah suatu jarak mengukur antara pelatihan dan kinerja set tes memungkinkan formalisasi seperti itu? Terima kasih
10
Jawaban:
Regresi linear / classifier benar-benar bisa overfit jika digunakan tanpa perawatan yang tepat.
Ini contoh kecil. Mari kita buat dua vektor, yang pertama hanya koin membalik acak:5000
Vektor kedua adalah pengamatan, masing-masing secara acak ditugaskan ke salah satu dari kelas acak:5000 500
Seharusnya tidak ada hubungan antara flips
y
kami dan kelas acak kamirand.class
, mereka ditentukan sepenuhnya secara independen.Namun, jika kita mencoba untuk memprediksi flip acak dengan kelas acak menggunakan regresi logistik (pengklasifikasi linier), itu pasti berpikir ada hubungan
Nilai sebenarnya dari setiap koefisien ini adalah nol. Tapi seperti yang Anda lihat, kami memiliki penyebaran yang cukup. Klasifikasi linier ini sangat cocok.
Catatan: Ekstrem dalam histogram ini, di mana koefisien telah berkeliaran ke−15 15 15
y == 1
y == 0
Overfitting paling baik dipahami dalam konteks kelas model yang memiliki beberapa parameter kompleksitas. Dalam hal ini, sebuah model dapat dikatakan overfit ketika mengurangi kompleksitas sedikit menghasilkan harapan yang lebih baik dari kinerja sampel.
Akan sangat sulit untuk secara tepat mendefinisikan konsep dalam model yang independen. Sebuah model tunggal pas, Anda perlu sesuatu untuk membandingkannya agar lebih atau kurang pas. Dalam contoh saya di atas, perbandingan ini dengan kebenaran, tetapi Anda biasanya tidak tahu kebenarannya, karena itu modelnya!
Ada konsep seperti itu, itu disebut optimisme. Itu didefinisikan oleh:
Ini tidak cukup pada esensi dari overfitting, karena kinerja pada set tes bisa sedikit lebih buruk daripada kereta, meskipun model kompleksitas yang lebih tinggi mengurangi keduanya .
sumber
Dalam 70-ties, percobaan dengan algoritma pengenalan pola pada dataset besar mengungkapkan bahwa menambahkan fitur tambahan dalam beberapa kasus meningkatkan tingkat kesalahan set tes. Ini kontra intuitif karena orang berharap bahwa menambahkan fitur tambahan selalu meningkatkan kinerja classifier, atau jika fitur yang ditambahkan adalah 'white noise', penambahannya tidak mempengaruhi kinerja classifier sama sekali. Efek menambahkan fitur ekstra lebih banyak lagi ke classifier, akhirnya mengarah pada penurunan kinerja set-set dikenal sebagai fenomena memuncak [1].
Puncak fitur disebabkan oleh generalisasi berlebihan selama pembelajaran. Fitur tambahan menyebabkan dimasukkannya begitu banyak parameter tambahan sehingga penggolong mulai menyesuaikan data. Oleh karena itu, titik puncak dilewati.
Secara umum, kami menghadapi pertukaran bias-varians ketika melatih pengklasifikasi. Semakin banyak fitur-variabel yang kita gunakan, semakin baik mekanisme pengklasifikasi ( tidak diketahui ) yang mendasarinya mungkin dimodelkan oleh pengklasifikasi kita. Oleh karena itu, penyimpangan sistematis antara model pas dan 'kebenaran' akan berkurang, yaitu hasil bias yang lebih kecil. Di sisi lain, meningkatkan ruang fitur dari classifier tentu menyiratkan penambahan parameter (parameter yang sesuai dengan fitur yang ditambahkan). Dengan demikian, varian dari classifier yang dipasang juga meningkat.
Jadi pengklasifikasi yang melampaui titik puncak hanyalah satu realisasi stokastik dari masalah klasifikasi dimensi tinggi, dan kecocokan baru akan menghasilkan vektor parameter yang sangat berbeda. Fakta ini mencerminkan meningkatnya variasi.
[1. GV Trunk, "Masalah Dimensi: Contoh Sederhana," dalam Transaksi IEEE tentang Analisis Pola dan Kecerdasan Mesin, vol. PAMI-1, no. 3, hlm. 306-307, Juli 1979]
sumber
Saya pikir overfitting mengacu pada kompleksitas model daripada kemampuan generalisasi. Saya memahami kutipan "penggolong linier tidak dapat dilengkapi" karena kompleksitasnya kecil, dan tidak ada penggolong sederhana lainnya yang memberikan kinerja yang lebih baik.
Contoh ini terkait dengan kemampuan generalisasi dari pengklasifikasi linier (dan yang kompleks). Bahkan di bagian kedua ini, pengklasifikasi linier biasanya memberikan varians yang lebih sedikit daripada yang kompleks, sehingga nilai "overfitting" untuk pengklasifikasi linier, mengikuti konsep ini, juga lebih kecil (walaupun risiko empiris dari mereka bisa sangat besar). atb
sumber
Seperti yang dikatakan @ match-maker-ee, pengklasifikasi linear dapat terlalu pas tergantung pada fitur input.
Model f berikut linear dalam parameter a , b dan c , tetapi dapat dipasang ke kurva kuadrat di ruang fitur x :
SVM's juga dapat over-fit, misalnya ketika mereka menggunakan trik kernel, meskipun pada dasarnya merupakan model linier dalam ruang fitur tambahan.
sumber