Machine learning 使用多项式核是否等同于添加特性?

Machine learning 使用多项式核是否等同于添加特性?,machine-learning,svm,Machine Learning,Svm,在第352页,James等人的《统计学习简介》解释了使用多项式核的效果,如下所示: 它实质上相当于在一个模型中拟合一个支持向量分类器 涉及d次多项式的高维空间,而不是 而不是在原始特征空间中 然而,它接着指出,当使用非线性内核时,预测是使用: 现在,这个方程中的参数数量是1+| S |,其中| S |是支持向量的数量。如果我显式地使用其他特性,则每个特性都有一个单独的权重,这可能远远超过1+| S |参数。因此,与使用显式功能相比,使用内核提供的表达能力似乎要小。这是正确的吗 如果特征数量(|

在第352页,James等人的《统计学习简介》解释了使用多项式核的效果,如下所示:

它实质上相当于在一个模型中拟合一个支持向量分类器 涉及d次多项式的高维空间,而不是 而不是在原始特征空间中

然而,它接着指出,当使用非线性内核时,预测是使用:


现在,这个方程中的参数数量是1+| S |,其中| S |是支持向量的数量。如果我显式地使用其他特性,则每个特性都有一个单独的权重,这可能远远超过1+| S |参数。因此,与使用显式功能相比,使用内核提供的表达能力似乎要小。这是正确的吗

如果特征数量(| F |)大于| S |,则可以拟合更多参数,这是正确的。用| S |<| F |拟合SVM通常比对F进行线性拟合更精确,因为对F进行的是非线性拟合。请考虑左图中的示例

您不能将给定的特征(x轴和y轴)进行线性组合,从而完美地分离黑白标签,但是您可以对F进行一些非线性变换,而F确实如此(右图)。您可以尝试将功能的转换添加为附加功能(例如
[f_1,f_2,f_1*f_1,f_1*f_2,f_2*f_2]
,其中
f_1,f_2
是您的原始功能),或者您可以安装SVM。在支持向量机中,您不会对某些变换后的特征进行线性拟合,而是通过选择的核对每个数据点与支持向量的关系进行线性拟合


第二个考虑因素是,添加与标签无关的附加功能会给您的拟合带来噪音,并且可能具有非零权重,因为它们会拾取数据中的一些随机模式。因此,拟合更多参数并不总是对模型有帮助。

1)我不理解这一点。为什么使用显式特征的线性拟合精度较低?2) 这些不相关的功能可能会得到零权重,不是吗?@AlwaysLearning我希望改进我的答案。1)你很好地解释了如何正确看待SVM的功能。但是,这并不能真正解决添加特性时大量参数所允许的表达能力的确切弥补问题。2) 如果特征与数据相关,则它是相关特征。如果不是,为什么它会得到一个重要的权重?1)我不知道如何扩展我的答案来回答你觉得缺少的东西,所以希望一个不同的答案可以帮助你。2) 只是偶然的机会。如果你有无限的样本和有限的特征,那么你是对的,不相关的特征不应该有很大的权重。如果在一条直线上取10个点,添加一些随机噪声并拟合多项式特征,通常会看到高阶项上的权重很大。