如何使用 SVM 的权重向量和逻辑回归进行特征重要性?

Posted

技术标签:

【中文标题】如何使用 SVM 的权重向量和逻辑回归进行特征重要性?【英文标题】:How to use Weight vector of SVM and logistic regression for feature importance? 【发布时间】:2015-10-10 22:07:33 【问题描述】:

我已经在我的数据集上训练了一个 SVM 和逻辑回归分类器。两个分类器都提供了一个权重向量,其大小与特征数量相同。我可以使用这个权重向量来选择 10 个最重要的特征,只需选择权重最高的 10 个特征。

我应该使用权重的绝对值,即选择绝对值最高的 10 个特征吗?

其次,这仅适用于具有线性内核的 SVM,但不适用于我读过的 RBF 内核。对于非线性内核,权重在某种程度上不再是线性的。在非线性核SVM的情况下,权重向量不能用于确定特征重要性的确切原因是什么?

【问题讨论】:

【参考方案1】:

正如我对similar question的回答,任何linear classifier的权重向量都表示特征重要性:因为最终值是特征值以权重为系数的线性组合,所以权重越大,对最终值的影响越大是由相应的summand引起的。

因此,对于线性分类器,您可以获取具有最大权重的特征(而不是特征本身的最大值,或者权重和特征值的最大乘积)。

这也解释了为什么带有像 RBF 这样的非线性核的 SVM 没有这样的属性:特征值和权重都被转换到另一个空间,不能说权重越大影响越大,见@ 987654323@.

如果您需要为非线性 SVM 选择最重要的特征,请使用 feature selection 的特殊方法,即 wrapper methods。

【讨论】:

以上是关于如何使用 SVM 的权重向量和逻辑回归进行特征重要性?的主要内容,如果未能解决你的问题,请参考以下文章

在 sklearn 或任何 python 库中确定对非线性 SVM 回归贡献最大的特征

逻辑回归和SVM的区别是啥?各适用于解决啥问题

如何使用线性支持向量机 (SVM) 分类器确定最重要/信息量最大的特征

Svm相关

支持向量机理解

机器学习支持向量机SVM逻辑回归LR决策树DT的直观对比和理论对比,该如何选择(面试回答)?