Pertanyaan Dalam sklearn apa perbedaan antara model SVM dengan kernel linear dan classifier SGD dengan loss = engsel


Saya melihat bahwa dalam scikit-learn saya dapat membangun sebuah classifier SVM dengan kernel linear dalam 3 cara terakhir:

Sekarang, saya melihat bahwa perbedaan antara dua pengklasifikasi pertama adalah bahwa yang pertama diimplementasikan dalam istilah liblinear dan yang terakhir dalam istilah libsvm.

Bagaimana dua pengklasifikasi pertama berbeda dari yang ketiga?


13
2018-04-17 16:05


asal


Jawaban:


Dua yang pertama selalu menggunakan data lengkap dan memecahkan masalah optimisasi konveks sehubungan dengan titik-titik data ini.

Yang terakhir dapat memperlakukan data dalam batch dan melakukan penurunan gradien yang bertujuan untuk meminimalkan diharapkan kerugian sehubungan dengan distribusi sampel, dengan asumsi bahwa contohnya adalah sampel iid dari distribusi itu.

Yang terakhir ini biasanya digunakan ketika jumlah sampel sangat besar atau tidak berakhir. Amati bahwa Anda dapat memanggil partial_fit berfungsi dan memberi makan itu potongan data.

Semoga ini membantu?


12
2018-04-17 17:58