Dalam praktiknya, alasan SVM cenderung tahan terhadap pemasangan berlebihan, bahkan dalam kasus di mana jumlah atribut lebih besar dari jumlah pengamatan, adalah bahwa SVM menggunakan regularisasi. Kunci untuk menghindari over-fitting terletak pada penyetelan hati-hati dari parameter regularisasi, , dan dalam kasus SVM non-linear, pemilihan kernel dan penyetelan parameter kernel secara cermat.C
SVM adalah implementasi perkiraan dari terikat pada kesalahan generalisasi, yang tergantung pada margin (pada dasarnya jarak dari batas keputusan ke pola terdekat dari masing-masing kelas), tetapi tidak tergantung pada dimensi ruang fitur (itulah sebabnya menggunakan trik kernel untuk memetakan data ke dalam ruang dimensi yang sangat tinggi bukanlah ide yang buruk sepertinya). Jadi pada prinsipnya SVM harus sangat tahan terhadap pemasangan berlebihan, tetapi dalam praktiknya ini tergantung pada pilihan yang cermatC
GC Cawley dan NLC Talbot, Mencegah over-fitting dalam pemilihan model melalui regularisasi Bayesian dari hyper-parameter, Journal of Machine Learning Research, volume 8, halaman 841-861, April 2007. ( www )
dan
GC Cawley dan NLC Talbot, Over-fitting dalam pemilihan model dan bias seleksi selanjutnya dalam evaluasi kinerja, Journal of Machine Learning Research, 2010. Penelitian, vol. 11, hlm. 2079-2107, Juli 2010. ( www )
Kedua makalah tersebut menggunakan regresi ridge kernel, bukan SVM, tetapi masalah yang sama muncul dengan mudah dengan SVM (juga batas yang sama berlaku untuk KRR, jadi tidak ada banyak untuk memilih di antara mereka dalam praktek). Jadi sedikit banyak, SVM tidak benar-benar menyelesaikan masalah over-fitting, mereka hanya mengalihkan masalah dari pemasangan model ke pemilihan model.
Seringkali merupakan godaan untuk membuat hidup sedikit lebih mudah bagi SVM dengan melakukan semacam pemilihan fitur terlebih dahulu. Ini umumnya membuat masalah menjadi lebih buruk, karena tidak seperti SVM, algoritme pemilihan fitur cenderung menunjukkan lebih pas ketika jumlah atribut meningkat. Kecuali Anda ingin tahu mana atribut informatif, biasanya lebih baik untuk melewatkan langkah pemilihan fitur dan hanya menggunakan regularisasi untuk menghindari data yang terlalu pas.
Singkatnya, tidak ada masalah inheren dengan menggunakan SVM (atau model yang diatur lainnya seperti regresi ridge, LARS, Lasso, jaring elastis dll) pada masalah dengan 120 pengamatan dan ribuan atribut, asalkan parameter regularisasi disetel dengan benar .
svm
apakah parameter regularisasi ini C ? Dan saya tidak yakin variabel apa yang dikendalikan oleh C ini , maksud Anda variabel-variabel kendur itu ?Saya akan mulai dengan pertanyaan kedua dan terakhir.
Masalah generalisasi jelas penting, karena jika hasil pembelajaran mesin tidak dapat digeneralisasi, maka mereka sama sekali tidak berguna.
Metode untuk memastikan generalisasi berasal dari statistik. Kami biasanya berasumsi, bahwa data dihasilkan dari beberapa distribusi probabilitas yang berasal dari kenyataan. Misalnya jika Anda seorang pria yang lahir pada tahun 2000, maka ada kemungkinan distribusi berapa berat / tinggi / warna mata Anda ketika Anda mencapai 10, yang dihasilkan dari kumpulan gen yang tersedia pada tahun 2000, kemungkinan faktor lingkungan dll. Jika kami memiliki banyak data, kami dapat mengatakan sesuatu tentang distribusi yang mendasarinya, misalnya bahwa dengan probabilitas tinggi mereka bersifat gaussian atau multinomial. Jika kita memiliki gambaran distribusi yang akurat, maka diberikan tinggi, berat, dan warna mata anak berusia 10 tahun pada tahun 2010, kita bisa mendapatkan perkiraan yang baik tentang kemungkinan anak itu menjadi laki-laki. Dan jika probabilitasnya mendekati 0 atau 1 kita bisa mendapatkan gambaran yang baik tentang apa sebenarnya seks anak-anak.
Sekarang kembali ke SVM. Jika Anda tidak menggunakan kernel, atau menggunakan kernel yang memetakan ke dalam ruang dimensi terbatas, yang disebut dimensi Vapnik-Chervonenkis yang merupakan ukuran kompleksitas ruang hipotesis, terbatas, dan dengan itu dan contoh pelatihan yang cukup Anda bisa mendapatkannya dengan tinggi probabilitas kesalahan pada set tes tidak akan jauh lebih besar dari kesalahan pada set pelatihan. Jika Anda menggunakan kernel yang memetakan ke dalam ruang fitur dimensi tak terbatas, maka dimensi Vapnik-Chervonenkis juga tak terbatas, dan yang lebih buruk sampel pelatihan saja tidak dapat menjamin generalisasi yang baik, tidak peduli jumlahnya. Untungnya, ukuran margin SVM ternyata menjadi parameter yang bagus untuk memastikan generalisasi. Dengan margin besar dan set latihan, Anda dapat menjamin bahwa kesalahan tes tidak akan jauh lebih besar dari kesalahan pelatihan juga.
sumber
Setidaknya ada dua sumber utama overfitting yang mungkin ingin Anda pertimbangkan.
Overfitting dari suatu algoritma yang telah disimpulkan terlalu banyak dari sampel pelatihan yang tersedia. Ini paling baik dijaga secara empiris dengan menggunakan ukuran kemampuan generalisasi model. Validasi silang adalah salah satu metode yang populer.
Overfitting karena distribusi yang mendasarinya adalah undersampled. Biasanya ada sedikit yang bisa dilakukan tentang hal ini kecuali Anda dapat mengumpulkan lebih banyak data atau menambah pengetahuan domain tentang masalah ke model Anda.
Dengan 120 sampel dan sejumlah besar fitur, Anda cenderung jatuh 2 dan juga cenderung 1.
Anda dapat melakukan sesuatu tentang 1 dengan pengamatan yang cermat tentang efek kompleksitas model pada kesalahan tes dan pelatihan.
sumber