给定一个线性可分的数据集,使用硬间隔支持向量机是否一定比软间隔支持向量机更好?
给定一个线性可分的数据集,使用硬间隔支持向量机是否一定比软间隔支持向量机更好?
即使训练数据集是线性可分的,我也希望使用软间隔支持向量机会更好。原因是在硬间隔支持向量机中,单个离群值可以决定边界,这使得分类器对数据中的噪声过于敏感。
在下面的图表中,单个红色离群值基本上确定了边界,这是过度拟合的标志。
为了理解软间隔支持向量机的作用,最好从对偶形式来看它,在这里你可以看到它与硬间隔支持向量机具有相同的边缘最大化目标(边缘可能为负),但是还有一个额外的约束条件,即与支持向量相关联的每个拉格朗日乘子都受到C的限制。本质上,这限制了任何单个点对决策边界的影响。有关推导,请参见Cristianini/Shaw-Taylor的《支持向量机和其他基于内核的学习方法简介》中的命题6.12。支持向量的含义:
对于硬间隔支持向量机,支持向量是“在边缘上”的点。在上面的图片中,C=1000非常接近硬间隔支持向量机,您可以看到圆圈中的点是将触及边缘的点(在该图片中,边缘几乎为0,因此与分离超平面本质相同)
对于软间隔支持向量机,更容易用对偶变量来解释它们。用对偶变量表示的支持向量预测器如下所示。
这里,alphas和b是在训练过程中找到的参数,xi和yi是您的训练集,x是新的数据点。支持向量是训练集中包含在预测器中的数据点,即具有非零alpha参数的数据点。
我认为,硬间隔支持向量机会过拟合到特定的数据集,因此无法泛化。即使是线性可分数据集(如上图所示),在界限内的异常值也可以影响边缘。软间隔支持向量机更具通用性,因为我们可以通过调整C来选择支持向量。