วิธีการรับความสำคัญของตัวแปร (คุณลักษณะ) โดยใช้ SVM?
วิธีการรับความสำคัญของตัวแปร (คุณลักษณะ) โดยใช้ SVM?
คำตอบ:
หากคุณใช้การลงโทษ l-1 บนน้ำหนักเวกเตอร์จะทำการเลือกคุณสมบัติอัตโนมัติเนื่องจากน้ำหนักที่สอดคล้องกับแอตทริบิวต์ที่ไม่เกี่ยวข้องจะถูกตั้งค่าเป็นศูนย์โดยอัตโนมัติ ดูกระดาษนี้ ขนาด (สัมบูรณ์) ของน้ำหนักที่ไม่เป็นศูนย์แต่ละแห่งสามารถให้แนวคิดเกี่ยวกับความสำคัญของแอตทริบิวต์ที่เกี่ยวข้อง
ดูบทความนี้ซึ่งใช้เกณฑ์ที่ได้รับจาก SVM เพื่อเป็นแนวทางในการเลือกคุณสมบัติ
Isabelle Guyon, André Elisseeff, "การแนะนำตัวแปรและการเลือกคุณสมบัติ", JMLR, 3 (มี.ค. ): 1157-1182, 2003 http://jmlr.csail.mit.edu/papers/v3/guyon03a.html
คุ้มค่าที่จะอ่านมันจะให้ภาพรวมที่ดีของวิธีการและปัญหา สิ่งหนึ่งที่ฉันจะเพิ่มคือการเลือกคุณสมบัติไม่จำเป็นต้องปรับปรุงประสิทธิภาพการคาดการณ์และสามารถทำให้แย่ลงได้อย่างง่ายดาย (เพราะมันง่ายเกินไปที่จะทำให้พอดีกับเกณฑ์การเลือกคุณลักษณะ) ข้อดีอย่างหนึ่งของ (โดยเฉพาะอย่างยิ่งเชิงเส้น) SVMs คือมันทำงานได้ดีกับคุณสมบัติจำนวนมาก (ให้คุณปรับพารามิเตอร์การทำให้เป็นมาตรฐานอย่างถูกต้อง) ดังนั้นจึงไม่จำเป็นต้องมีถ้าคุณสนใจในการทำนายเท่านั้น
หากคุณใช้ R ความสำคัญของตัวแปรสามารถคำนวณได้ด้วยวิธีความสำคัญในแพ็คเกจ rminer นี่คือรหัสตัวอย่างของฉัน:
library(rminer)
M <- fit(y~., data=train, model="svm", kpar=list(sigma=0.10), C=2)
svm.imp <- Importance(M, data=train)
โดยละเอียดโปรดอ้างอิงลิงค์ต่อไปนี้https://cran.r-project.org/web/packages/rminer/rminer.pdf