Apa perbedaan antara C-SVM dan nu-SVM?


Jawaban 1:

Nu-SVM diusulkan oleh Scholkopf et al memiliki keuntungan menggunakan parameter nu untuk mengendalikan jumlah vektor dukungan. Parameter C dalam formulasi SVM biasa digantikan oleh parameter nu yang dibatasi oleh 0 dan 1. Sebelumnya, parameter C dapat mengambil nilai positif, sehingga batasan tambahan ini bermanfaat dalam implementasi.

Parameter nu mewakili batas bawah dan atas pada jumlah contoh yang merupakan vektor pendukung dan yang terletak di sisi yang salah dari hyperplane, masing-masing.

Sekarang meskipun ada batasan baru, nu-SVM relatif sulit untuk dioptimalkan dan seringkali runtime tidak dapat diukur dibandingkan dengan C-SVM.


Jawaban 2:

SVM menggunakan hyperplanes untuk melakukan klasifikasi. Saat melakukan klasifikasi menggunakan SVM ada 2 jenis SVM

  • C SVMNu SVM

C dan nu adalah parameter regularisasi yang membantu menerapkan penalti pada kesalahan klasifikasi yang dilakukan saat memisahkan kelas. Dengan demikian membantu dalam meningkatkan akurasi output.

C berkisar dari 0 hingga tak terbatas dan bisa agak sulit untuk diperkirakan dan digunakan. Modifikasi untuk ini adalah pengenalan nu yang beroperasi antara 0-1 dan mewakili batas bawah dan atas pada jumlah contoh yang merupakan vektor pendukung dan yang terletak di sisi hyperplane yang salah.

Keduanya memiliki kekuatan klasifikasi yang mirip komparatif, tetapi nU SVM lebih sulit untuk dioptimalkan


Jawaban 3:

Ini sebagian besar masalah interpretabilitas. Beberapa orang menemukan nu lebih mudah untuk diinterpretasikan daripada C. Sementara nu memang terletak dalam rentang yang lebih kecil daripada C (yang bertolak dari 0-infinity), Anda masih harus mencari grid untuk tingkat reglarisasi yang tepat, dan melewati titik tertentu, tidak ada gunanya meningkatkan C pula. Selain itu, C cenderung diuji pada skala log, sementara memilih nu lebih dari skala linier.

Dalam hal waktu penyelesaian, SMO dan varian harus menyelesaikan keduanya dalam waktu yang hampir bersamaan. Saya tidak mengetahui adanya sumber terbuka / pemecah nu-SVM sumber terbuka, jadi itu adalah kelemahan menggunakan nu-SVM pada masalah yang lebih besar dari libsvm yang dapat ditangani dengan nyaman (meskipun tidak terlalu sulit untuk mengkodekannya). Yang mengatakan, saya telah menguji linear / primal C-SVM (sklearn SGD atau linear SVC menggunakan fitur Fourier / nystroem) vs nu-SVM dari Libsvm, dan menemukan bahwa libsvm sendiri seringkali merupakan pilihan yang lebih baik (pada akurasi, fleksibilitas dan waktu) . Masalah saya adalah untuk dataset yang sangat tidak seimbang, dengan sekitar 20k pengamatan, 20-100 fitur, jika itu membantu.