Keyakinan SVM menurut jarak dari hyperline

9

Untuk pengklasifikasi multi-kelas probabilistik kita bisa mendapatkan probabilitas keanggotaan titik baru untuk setiap kelas ; dalam kasus 3 kelas misalkan kita mendapatkan , maka kelas x yang paling mungkin adalah . Sekarang anggaplah kita memiliki multi-class svm di mana kita bisa mendapatkan skor keanggotaan untuk setiap kelas (sesuai dengan jarak dari hyperlines); dalam kasus 3 kelas misalkan kita mendapatkan , Bagaimana dalam hal ini kelas pertama, kedua dan ketiga yang paling mungkin (tanpa mengubah ini skor ke probabilitas)? Biasanya saya mendapat nilai positif dan negatif seperti misalnyaxyiP(ya|x)>P(yb|x)>P(yc|x)yaxScore(ya|x),Score(yb|x),Score(yc|x)xScore1=8622,Score2=5233,Score3=665

shn
sumber

Jawaban:

11

Sebenarnya mungkin untuk mendapatkan probabilitas dari Mesin Vector Support, yang mungkin lebih berguna dan dapat ditafsirkan daripada nilai "skor" sewenang-wenang. Ada beberapa pendekatan untuk melakukan ini: satu tempat yang masuk akal untuk memulai adalah Platt (1999) .

Sebagian besar paket / pustaka SVM mengimplementasikan sesuatu seperti ini (misalnya, opsi -b 1 menyebabkan LibSVM menghasilkan probabilitas). Jika Anda ingin memutar sendiri, Anda harus menyadari bahwa ada beberapa masalah numerik potensial, yang dirangkum dalam catatan ini oleh Lin, Lin, dan Weng (2007) . Mereka juga menyediakan beberapa psuedocode, yang mungkin juga membantu.

Edit dalam menanggapi komentar Anda : Agak tidak jelas bagi saya mengapa Anda lebih suka skor daripada probabilitas, terutama karena Anda bisa mendapatkan probabilitas dengan upaya ekstra minimal. Semua yang dikatakan, sebagian besar perhitungan probabilitas sepertinya berasal dari jarak antara titik dan hyperplane. Jika Anda melihat Bagian 2 dari makalah Platt, ia berjalan melalui motivasi dan berkata:

Kerapatan bersyarat kelas antara margin tampaknya eksponensial. Aturan Bayes pada dua eksponensial menyarankan menggunakan bentuk parametrik dari sigmoid: Model sigmoid ini setara dengan asumsi bahwa output SVM sebanding dengan log-kemungkinan contoh pelatihan positif. [MK: didefinisikan di tempat lain sebagai output SVM mentah].

P(y=1|f)=11+exp(Af+B)
f

Sisa dari bagian metode menjelaskan bagaimana menyesuaikan parameter dan dari sigmoid itu. Dalam pengantar (Bagian 1.0 dan 1.1), Platt mengulas beberapa pendekatan lain oleh Vapnik, Wahba, dan Hasti & Tibshirani. Metode ini juga menggunakan sesuatu seperti jarak ke hyperplane, dimanipulasi dengan berbagai cara. Ini semua tampaknya menunjukkan bahwa jarak ke hyperplane berisi beberapa informasi yang berguna, jadi saya kira Anda bisa menggunakan jarak mentah karena beberapa ukuran kepercayaan (non-linear).AB

Matt Krause
sumber
1
Yah, saya tahu ada metode untuk mengkonversi skor (jarak dari batas) ke probabilitas dan bahwa itu mungkin lebih dapat ditafsirkan, namun, seperti yang dinyatakan dengan jelas dalam pertanyaan: Saya ingin menggunakan skor ini "tanpa mengubah skor ini menjadi probabilitas ". Jadi pertanyaan saya adalah: apakah masuk akal untuk mengambil nilai absolut dari semua skor ini dan mengatakan bahwa semakin tinggi nilai absolut dari skor paling mungkin adalah kelas ? Atau haruskah saya membandingkan skor tanpa nilai absolut? atau ... ? |si|xi
shn
0

Jika dataset pelatihan cukup seimbang dan memiliki fitur standar, saya akan mengambil skor SVM sebagai ukuran kepercayaan untuk memiliki kelas masing-masing. Yang disebut metode kalibrasi yang mengubah skor menjadi kuantitas seperti probabilitas, seperti penskalaan Platt, biasanya menggunakan fungsi monoton (seperti fungsi logistik) untuk memetakan skor menjadi probabilitas. Oleh karena itu, jika Anda hanya ingin membandingkan tingkat kepercayaan dari model SVM yang dipelajari dalam suatu titik data pengujian tertentu yang termasuk dalam kelas-kelas yang mungkin, Anda dapat membandingkan nilai skor (bukan nilai absolutnya) mengingat bahwa set data pelatihan dari mana model itu dipelajari cukup seimbang dan tidak memiliki kekhasan yang tidak biasa.

Reza
sumber
Saya tidak mengerti jawaban ini.
Michael R. Chernick
Saya mengeditnya untuk memperjelas poin saya.
Reza