笔记(总结)-SVM(支持向量机)的理解-2

上一篇我们讨论了SVM的建模由来与推导过程,最终得出了SVM的对偶问题和解的形式,不过这都基于一个重要前提,即样本集是线性可分的。为了解决线性不可分情况下的分类问题,我们引入soft margin SVM,即软间隔SVM。


为了处理上述情况,我们不再要求样本集全部位于“楚河汉界”外,放宽限制,允许数据点进入“楚河汉界”甚至错分,引入松弛变量ξ,如下所示:
笔记(总结)-SVM(支持向量机)的理解-2
此时对应的约束条件为:

{wTx+b1ξ, yi=1wTx+b1+ξ, yi=1ξi0

原问题转化为:

min12||w||2+Ciξi

s.t. yi(wTxi+b)1ξi, ξi0

其中C为惩罚因子,可以看到当C取很大时,优化目标函数会导致xii很小,尽量减小甚至避免越界和错分情况出现。当C很小时,会一定程度上对越界和错分情况有所容忍。

将约束写成gi0的形式,构造拉格朗日函数:

f(w)=12||w||2

gi(w)=1ξiyi(wTxi+b),    hi(ξ)=ξi

L(w,α,β)=f(w)+iαigi(w)+iβihi(ξ)

推导对偶问题的过程同上一篇。极值在偏导为0处取到,令:

Lw=0, Lb=0, Lξi=0

得到:

w=iαiyixi, iαiyi=0, C=αi+βi

代回原函数,得到对偶问题:

maxW(α)=iαi12ijαiαjyiyjxiTxj

s.t. iαiyi=0, 0αiC

此时对应的KKT条件为:

{αi0βi0yi(wTx+b)1ξiξi0αi[1ξiyi(wTx+b)]=0 βi(ξi)=0

可以看到,最终需要求解的W(α)与之前形式是一致的,不同的只是约束条件的变化。根据KKT条件对αi进行讨论:

  • αi>0,有yi(wTx+b)1ξixi为支持向量
  • αi<C,有βi>0,推得ξi=0xi在边界上
  • αi=C,有βi=0,此时ξi大小不确定。当ξi>1时,该样本被错误分类;当0ξi1,该样本在“楚河汉界内部”,被正确分类。

此时我们便可利用Soft Margin SVM来处理线性不可分的问题。