1.什么是软间隔
我们之前谈到过两种情况下的分类:一种是直接线性可分的;另外一种是通过 ϕ ( x ) \phi(x) ϕ(x)映射到高维空间之后“线性可分”的。为什么后面这个“线性可分”要加上引号呢?这是因为在上一篇文章中有一件事没有和大家交代:虽然通过映射到高维空间的方式能够很大程度上使得原先线性不可分的数据集线性可分,但是我们并不能够一定保证它就是线性可分的,可能这个高维空间依旧线性不可分得换一个(事实上你还是不知道换哪一个更好,所以此时就要折中选择),或者保守的说即使线性可分了,但也可能会有过拟合现象。这是因为超平面对于异常点(outlier)过于敏感。如下图:
在左图,直线A为该数据集下的最优解;但是,此时若出现一个异常点(中图所示),它将导致分类直线发生剧烈的摆动,虽然最终也达到了将数据集分开的效果,但这显然不是我们希望的。我们将其称之为硬间隔(hard margin),即不允许出现错分的情况,哪怕导致过拟合。所以,我们所期望的就是图右的这种情况:容许少量的错分,从而得到最优解,而这个容忍的则通过代价函数来调节。或者再极端一点就是,根本找不到超平面将其分开(不过拟合的前提下),必须得错分一些点。此时虚线与实现之间的间隔就称之为软间隔(soft margin)。
2.软间隔最大化
此时我们可以知道,如数据集中出现了异常点,必将导致该异常点的函数间隔小于1。所以,此时引入一个松弛变量( ξ > 0 \xi>0 ξ>0),使得函数加上松弛变量大于等于1.
y ( i ) ( w T x ( i ) + b ) ≥ 1 − ξ i (2.1) y^{(i)}(w^Tx^{(i)}+b)\geq1-\xi_i\tag {2.1} y(i)(wTx(i)+b)≥1−ξi(2.1)
那么此时的目标函数可以重新改写为如下形式:
min w , b , ξ 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i s . t . y ( i ) ( w T x ( i ) + b ) ≥ 1 − ξ i , i = 1 , 2 , . . . m ξ i ≥ 0 , i = 1 , 2 , . . . m (2.2) \begin{aligned} \min_{w,b,\xi} &\frac{1}{2}{||w||^2}+C\sum_{i=1}^m\xi_i\\[1ex] s.t.\;\;&y^{(i)}\large(w^Tx^{(i)}+b)\geq1-\xi_i,i=1,2,...m\\[1ex] &\xi_i\geq0,i=1,2,...m\tag{2.2} \end{aligned} w,b,ξmins.t.21∣∣w∣∣2+Ci=1∑mξiy(i)(wTx(i)+b)≥1−ξi,i=1,2,...mξi≥0,i=1,2,...m(2.2)
其中 C > 0 C>0 C>0称为惩罚参数,一般由应用问题决定, C C C越大时对误分类的惩罚越大.最小化目标函数(2.2)包含两层含义:使 1 2 ∣ ∣ w ∣ ∣ 2 \frac{1}{2}||w||^2 21∣∣w∣∣2尽量小,即间隔尽量打,同时使误分类点的个数尽量小,C是调和二者的系数。并且只要错分一个样本点,我们都将付出 C ξ i C\xi_i Cξi的代价。
如先前一样,我们可以将其对应的广义拉格朗日函数写出:
L ( w , b , ξ , α , r ) = 1 2 w T w + C ∑ i = 1 m ξ i − ∑ i = 1 m α i [ y ( i ) ( w T x ( i ) + b ) − 1 + ξ i ] − ∑ i = 1 m r i ξ i (2.3) \mathcal{L}(w,b,\xi,\alpha,r)=\frac{1}{2}w^Tw+C\sum_{i=1}^{m}\xi_i-\sum_{i=1}^m\alpha_i\left[y^{(i)}\left(w^Tx^{(i)}+b\right)-1+\xi_i\right]-\sum_{i=1}^mr_i\xi_i\tag{2.3} L(w,b,ξ,α,r)=21wTw+Ci=1∑mξi−i=1∑mαi[y(i)(wTx(i)+b)−1+ξi]−i=1∑mriξi(2.3)
其中, α i ≥ 0 , r i ≥ 0 \alpha_i\geq0,r_i\geq0 αi≥0,ri≥0是拉格朗日乘数(为什么有这个条件,参见此文3.1)
则其对偶问题为:
max α W ( α ) = ∑ i = 1 m α i − 1 2 ∑ i , j = 1 m y ( i ) y ( j ) α i α j ⟨ x ( i ) , x ( j ) ⟩ s . t . 0 ≤ α i ≤ C , i = 1 , . . . , m ∑ i = 1 m α i y ( i ) = 0 (2.4) \begin{aligned} \max_{\alpha} &W(\alpha)=\sum_{i=1}^m\alpha_i-\frac{1}{2}\sum_{i,j=1}^my^{(i)}y^{(j)}\alpha_i\alpha_j\langle x^{(i)},x^{(j)}\rangle\\[1ex] s.t. &0\leq\alpha_i\leq C,i=1,...,m\\[1ex] &\sum_{i=1}^m\alpha_iy^{(i)}=0\tag{2.4} \end{aligned} αmaxs.t.W(α)=i=1∑mαi−21i,j=1∑my(i)y(j)αiαj⟨x(i),x(j)⟩0≤αi≤C,i=1,...,mi=1∑mαiy(i)=0(2.4)
推导:
由 ( 2.2 ) (2.2) (2.2)可知:
min w , b , ξ 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i s . t . g