如何使用SVM获得变量(属性)的重要性?
如何使用SVM获得变量(属性)的重要性?
Answers:
伊莎贝尔Guyon的,安德烈Elisseeff, “导论变量和特征选择”,JMLR,3(3月):1157至1182年,2003年http://jmlr.csail.mit.edu/papers/v3/guyon03a.html
值得一读,它将很好地概述方法和问题。我要补充的一件事是,特征选择并不一定会提高预测性能,并且很容易使其变差(因为很容易过度拟合特征选择标准)。(尤其是线性)SVM的优点之一是它们可以与大量功能一起很好地工作(前提是您可以正确调整正则化参数),因此,如果您仅对预测感兴趣,通常就不需要。
如果使用R,则可以使用rminer软件包中的Importance方法计算变量重要性。这是我的示例代码:
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