[机器学习]支持向量机3——引入松弛因子

支持向量机1——间隔和支持向量

支持向量机2——对偶问题

支持向量机3——引入松弛因子

支持向量机4——SMO算法
很多情况下,一个分离超平面并不能完全将训练数据分成两部分。那么我们这时可以允许出现一些误差。故引入松弛因子。
从下图中我们可以看到一些样本不能满足间隔大于1这个条件。
[机器学习]支持向量机3——引入松弛因子
我们令松弛因子:ζi0,使得目标函数加生松弛因子ζi大于等于1。即yi(wTxi+b)1ζi,同时为松弛因子加入一个代价,以免松弛因子过分大。

minζ,ω,b12||ω||2+Ci=1mζist.yi(wTxi+b)1ζii=1,2,...mζi0

其中C为惩罚因子(C>0),C的值越大惩罚的力度越大,当C趋于无穷大,那么就是线性可分问题。
拉格朗日函数变成:
(3.1)L(ω,b,ζ,α,r)=12||ω||2+Ci=1mζii=1mαi[yi(wTxi+b)1+ζi]i=1mriζi

KKT条件:

  • αi0
  • yi(ωTxi+b)1+ζi0
  • α[yi(ωTxi+b)1+ζi]=0
  • ri0
  • riζI=0

(3.2)Lω=0ω=i=1mαiyixiLω=0i=1mαiyi=0Lζi=0αi=Cri

(3.2)得到的带入(3.1)中,得出:

(3.3)maxαW(α)=i=1mαi12i=1mj=1mαiαjyiyjxixjst. i=1mαiyi=00αiC i=1,2,...m

此时KKT条件:

(3.4)αi=0yi(ωTxi+b)1αi=Cyi(ωTxi+b)10<αi<Cyi(ωTxi+b)=1

[机器学习]支持向量机3——引入松弛因子

参考资料

1.https://blog.****.net/luoshixian099/article/details/51073885#comments