SVM 目标函数中的变量是什么意思?

机器算法验证 机器学习 分类 支持向量机 libsvm
2022-04-14 04:27:14

对于线性 SVM,文档告诉我公式是:

12wTw+Ci=1lξi.

请用外行的话给我解释一下w代表。w到超平面的距离,不同变​​量的权重,...?ξ

此外,公式 是否有区别,还是只是不同的符号?

f(x)=wTx+b

1个回答

这两个公式是不同的东西:

  • 12wTw+Cξi函数的一种形式函数in) 以找到最佳的 SVM 解决方案。wbξib

  • 一旦你找到了模型(由定义),对新数据的预测是通过找到它们与决策超平面的距离来完成的。wbxf(x)=wTx+b

w定义决策超平面,将正负分开,所以垂直于那个超平面。也是相应特征维度的权重:如果,则忽略该特征,如果高,该特征对 SVM 的决策很重要(假设所有特征的缩放比例相似)。b{xwTx+b=0}w|wj|wj=0|wj|

通过最大化边距来训练支持向量机,边距是决策边界和最近示例之间的空间量。但是,如果您的问题不是线性可分的,则没有完美的决策边界,因此没有“硬边界”SVM 解决方案。这就是引入“软边距”SVM 的原因,它允许某些点位于边距的错误一侧。

ξi松弛变量个训练示例在错误的一侧有多少。如果,则该点被正确分类并且有足够的余量;如果它在 0 和 1 之间,则该点被正确分类,但比 SVM 想要的差少;如果大于 1,则该点被错误分类。不允许为负数。)的点以及的点被称为支持向量,因为它们“支持”边距。这些在内核 SVM 中很重要,因为它们是您在预测新数据时唯一需要担心的。iξi=0ξiξi>0ξi=0

C是问题的一个参数,它定义了边距应该有多软。作为,你得到一个硬 SVM;如果,SVM 根本不关心得到正确答案,只会选择在实践中,您通常会尝试几个不同的值,看看它们的表现如何。CC=0w=0C

这张图片(来源)说明了不同的变量,尽管它是针对内核 SVM 的;只需说,它将是一个线性 SVM。ϕ(x)=x