Bagaimana cara mendapatkan variabel (atribut) penting menggunakan SVM?
Bagaimana cara mendapatkan variabel (atribut) penting menggunakan SVM?
Jawaban:
Jika Anda menggunakan hukuman l-1 pada vektor bobot, itu melakukan pemilihan fitur otomatis karena bobot yang sesuai dengan atribut yang tidak relevan secara otomatis ditetapkan ke nol. Lihat makalah ini . Besarnya (absolut) dari masing-masing bobot bukan nol dapat memberikan gambaran tentang pentingnya atribut yang sesuai.
Lihat juga makalah ini yang menggunakan kriteria yang berasal dari SVM untuk memandu pemilihan atribut.
Isabelle Guyon, André Elisseeff, "Suatu Pengantar Variabel dan Pemilihan Fitur", JMLR, 3 (Mar): 1157-1182, 2003. http://jmlr.csail.mit.edu/papers/v3/guyon03a.html
layak dibaca, itu akan memberikan gambaran yang baik tentang pendekatan dan masalah. Satu hal yang akan saya tambahkan adalah bahwa pemilihan fitur tidak serta merta meningkatkan kinerja prediktif, dan dapat dengan mudah memperburuknya (karena mudah untuk menyesuaikan kriteria pemilihan fitur). Salah satu keuntungan dari SVM (terutama linier) adalah mereka bekerja dengan baik dengan sejumlah besar fitur (memberikan Anda menyetel parameter regularisasi dengan benar), sehingga sering kali tidak perlu jika Anda hanya tertarik pada prediksi.
Jika Anda menggunakan R, kepentingan variabel dapat dihitung dengan metode Importance dalam paket rminer. Ini adalah contoh kode saya:
library(rminer)
M <- fit(y~., data=train, model="svm", kpar=list(sigma=0.10), C=2)
svm.imp <- Importance(M, data=train)
Secara rinci, lihat tautan berikut https://cran.r-project.org/web/packages/rminer/rminer.pdf