软间隔#
术语解释#
在支持向量机(SVM)中,软间隔(Soft Margin)是指在构建分类超平面时,允许部分样本点不满足严格的间隔约束条件,即容许少量样本被错误分类或落在间隔边界之内。与之相对的是“硬间隔”,它要求所有训练样本必须被完美分开且严格位于间隔边界之外,即使这可能导致模型过拟合。
为了实现这一机制,算法为每个样本引入了一个松弛变量(Slack Variable, $\xi_i \ge 0$),使得原本严格的函数间隔要求变为 $y^{(i)}(w^Tx^{(i)}+b) \ge 1 - \xi_i$。
出现动机#
-
应对噪声和异常点:现实世界的数据集常包含噪声或离群点,若坚持硬间隔,决策边界可能会因为一个异常样本的加入而发生剧烈摆动,导致分类间隔变得极其狭窄。
-
防止过拟合风险:硬间隔超平面如果对异常点过于敏感,虽然能在训练集上达到零误差,但在测试集上的泛化能力往往很差。
-
解决线性不可分问题:在许多实际场景中,即便将特征映射到高维空间,也可能无法找到一个能完全无误地分开所有样本的超平面,此时必须通过软间隔来获取次优的可行解。
直观示例#
在图10-9中,实线为相应的决策面,黑色方块和黑色圆点分别为两个类别的样本。在图10-9(a)中,通过SVM建模得到的决策面已经完美地将两种类别的样本点进行了区分,但是,如果此时训练样本中加入一个异常点,并且继续用SVM建模求解,则将会得到图10-9(b)中所示的分类决策面。可以发现,虽然此时决策面也成功地区分开了每个样本点,但是相较于图10-9(a)中的决策面却发生了剧烈的摆动,决策面到支持向量的距离也变得十分狭窄。

在SVM中,将图10-9(a)和图10-9(b)中决策面到支持向量的间隔称为硬间隔(Hard Margin),即不允许任何样本出现错分的情况,即使可能导致过拟合。当然,理想情况下期望的应该是图10-9(c)中的这种情况,容许少量样本被错分从而得到一个次优解,而这个容忍的程度则通过目标函数来调节。或者再极端一点就是根本找不到一个超平面能够将样本无误地分开,必须错分一些样本点。此时图10-9(c)中决策面到支持向量的间隔便被称为软间隔(Soft Margin)。
从上面的介绍可知,如数据集中出现了异常点,则必将导致该异常点的函数间隔小于1,所以可以为每个样本引入一个松弛变量(${{\xi }_{i}}\ge 0$)来使函数间隔加上松弛变量大于或等于1。
$$ {{y}^{(i)}}({{w}^{T}}{{x}^{(i)}}+b)\ge 1-{{\xi }_{i}}\tag{10-21} $$更多相关内容,可参见「10.4 SVM软间隔原理:噪声样本与惩罚因子C」。
优点缺点#
-
优点:
-
增强模型泛化能力:软间隔允许模型在“最大化间隔”与“减少错分样本”之间寻找平衡,通常能在未知数据上表现得更加稳健。
-
提高决策边界的稳定性:由于模型不再试图去拟合每一个细微的噪声点,其决策边界的位置不会因为个别样本的轻微变动而产生大幅度位移。
-
灵活的控制机制:通过调节惩罚系数 $C$,开发者可以人为干预模型对错误的容忍程度。较小的 $C$ 允许更多的错分以换取更宽的分类间隔,增强了模型处理复杂数据的灵活性。
-
-
缺点
-
引入超参数调节负担:惩罚系数 $C$ 的最优取值没有固定标准,通常需要依赖繁琐的网格搜索和交叉验证过程来确立。
-
潜在的欠拟合风险:如果 $C$ 设置得过小,模型可能会因为过度容忍错误而无法捕捉数据中的基本规律,导致模型进入高偏差(欠拟合)状态。
-
支持向量的定义变复杂:在软间隔模型中,影响决策面位置的不仅是边界上的点,还包括位于边界内部甚至被错分的点,这使得分析样本对模型的贡献度变得更加复杂。
-