gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-03 20:06:56 25 4
gpt4 key购买 nike

我使用基于 RBF 内核的支持向量机回归训练了一个模型。我想知道对于基于 RBF 内核的支持向量机来说非常重要或主要贡献的功能。我知道有一种方法可以根据权重向量(即向量的大小)了解线性支持向量回归最有贡献的特征。然而,对于基于 RBF 核的支持向量机,由于特征被转换到一个新的空间,我不知道如何提取最有贡献的特征。我在 python 中使用 scikit-learn。有没有办法提取基于 RBF 核的支持向量回归或非线性支持向量回归中最有贡献的特征?

from sklearn import svm
svm = svm.SVC(gamma=0.001, C=100., kernel = 'linear')

在这种情况下: Determining the most contributing features for SVM classifier in sklearn效果很好。但是,如果内核更改为

from sklearn import svm
svm = svm.SVC(gamma=0.001, C=100., kernel = 'rbf')

上面的答案不起作用。

最佳答案

让我对评论进行排序作为答案:

正如您可以阅读的那样 here :

Weights asigned to the features (coefficients in the primal problem). This is only available in the case of linear kernel.

但这也没有意义。在线性 SVM 中,生成的分离平面与输入特征位于同一空间中。因此,它的系数可以被视为输入“维度”的权重。

在其他内核中,分离平面存在于另一个空间中——这是原始空间内核变换的结果。它的系数与输入空间没有直接关系。事实上,对于 rbf 核来说,变换后的空间是无限维的。

As menionted in the comments, things you can do:

尝试一下这些功能(忽略一些功能),看看准确性会如何变化,这会让您了解哪些功能很重要。

如果您使用其他分类器作为随机森林,您将获得其他算法的特征重要性。但这不会回答你的问题,这对你的支持向量机很重要。所以这不一定能回答您的问题。

关于python - 确定 sklearn 或任何 python 库中非线性 SVM 回归最有贡献的特征,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58926146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com