Intuisi untuk parameter regularisasi dalam SVM

11

Bagaimana memvariasikan parameter regularisasi dalam SVM mengubah batas keputusan untuk dataset yang tidak dapat dipisahkan? Jawaban visual dan / atau komentar tentang perilaku membatasi (untuk regularisasi besar dan kecil) akan sangat membantu.

ASX
sumber

Jawaban:

17

Parameter regularisasi (lambda) berfungsi sebagai tingkat kepentingan yang diberikan pada kesalahan klasifikasi. SVM menimbulkan masalah optimisasi kuadratik yang mencari untuk memaksimalkan margin antara kedua kelas dan meminimalkan jumlah kesalahan klasifikasi. Namun, untuk masalah yang tidak dapat dipisahkan, untuk menemukan solusi, kendala miss-klasifikasi harus dilonggarkan, dan ini dilakukan dengan menetapkan "regularisasi" yang disebutkan.

Jadi, secara intuitif, seiring lambda tumbuh semakin besar semakin sedikit contoh yang diklasifikasikan secara keliru diizinkan (atau harga tertinggi yang dibayar dalam fungsi kerugian). Kemudian ketika lambda cenderung tak terbatas solusinya cenderung ke margin keras (tidak boleh ketinggalan klasifikasi). Ketika lambda cenderung 0 (tanpa 0), semakin banyak klasifikasi yang tidak diizinkan.

Jelas ada pertukaran antara keduanya dan lambda yang biasanya lebih kecil, tetapi tidak terlalu kecil, digeneralisasikan dengan baik. Di bawah ini adalah tiga contoh untuk klasifikasi linear SVM (biner).

Linear SVM Lambda = 0,1 Linear SVM Lambda = 1 masukkan deskripsi gambar di sini

Untuk SVM non-linier, idenya sama. Mengingat hal ini, untuk nilai lambda yang lebih tinggi ada kemungkinan overfitting yang lebih tinggi, sedangkan untuk nilai lambda yang lebih tinggi ada kemungkinan underfitting yang lebih tinggi.

Gambar di bawah ini menunjukkan perilaku untuk RBF Kernel, membiarkan parameter sigma tetap pada 1 dan mencoba lambda = 0,01 dan lambda = 10

Kernel RBF SVM lambda = 0,01 Kernel RBF SVM lambda = 10

Anda bisa mengatakan angka pertama di mana lambda lebih rendah lebih "santai" daripada angka kedua di mana data dimaksudkan untuk dipasang lebih tepat.

(Slide dari Prof. Oriol Pujol. Universitat de Barcelona)

Javierfdr
sumber
Gambar bagus! Apakah Anda membuatnya sendiri? Jika ya, mungkin Anda dapat membagikan kode untuk menggambar mereka?
Alexey Grigorev
grafis yang bagus. mengenai dua = terakhir terakhir dari teks orang akan secara implisit berpikir gambar pertama adalah yang dengan lambda = 0,01, tetapi dari pemahaman saya (dan agar konsisten dengan grafik di awal) ini adalah yang dengan lambda = 10. karena ini jelas yang paling tidak regularisasi (paling pas, paling santai).
Wim 'titte' Thiels
^ ini juga pemahaman saya. Bagian atas dua grafik warna jelas menunjukkan lebih banyak kontur untuk bentuk data, sehingga harus menjadi grafik di mana margin persamaan SVM lebih disukai dengan lambda yang lebih tinggi. Bagian bawah dari dua grafik warna menunjukkan klasifikasi data yang lebih santai (sekelompok kecil warna biru di area oranye) yang berarti pemaksimalan margin tidak disukai daripada meminimalkan jumlah kesalahan dalam klasifikasi.
Brian Ambielli