SVM推导简述

来源:互联网 发布:阿里云广州分公司 编辑:程序博客网 时间:2024/05/14 19:49

1.SVM思路

1.函数间隔和几何间隔:

点距离分离平面的远近可以代表分类预测的确信度,在超平面wx+b=0确定的情况下,|wx+b|表示点x距离超平面的远近,由于w,b可以成比例改变,超平面不变,所以需要对分离平面法向量进行约束,因此定义函数间隔和几何间隔分别为:

γ¯i=yi(wxi+b)γi=yi(wxi+b)||w||
求所有样本的间隔最小值得:
γ¯=mini=1,..,nγi¯γ=mini=1,...,nγi

2.线性可分间隔最大化:

直观理解:对最难分的点(离超平面最近的点)也要有足够大的确信度,因此可得到目标函数

maxw,bγyi(wxi+b)||w||γ,i=1,..,n
考虑几何间隔与函数间隔的关系,改写为
maxw,bγ¯||w||yi(wxi+b)γ¯,i=1,..,n
函数间隔γ¯可根据w,b成比例改变,因此可取任意值,将其设为1,由于最大化1||w||与最小化12||w||2等价,得到线性可分支持向量机,是一个凸二次规划问题(统计学习方法P100)
minw,b12||w||2yi(wxi+b)1,i=1,..,n

3.线性不可分加入松弛因子

不能完全把点分开时,在约束条件中加入松弛因子ξ,同时需要在目标函数中进行惩罚,并给出惩罚力度,得到线性支持向量机

minw,b12||w||2+Ci=1nξiyi(wxi+b)1ξi,i=1,..,n

4.转化为对偶形式

minα12i=1nj=1nαiαjyiyj(xixj)i=1nαis.t.i=1nαiyi=0,0αiC
此时,变量个数为样本长度,原问题变量个数为特征向量长度,只有支持向量α>0分开的xi变为向量内积方便使用核函数。当0<α<C,则ξ=0,支持向量落在间隔边界上;当α=C,0<ξ<1,分类正确,落在间隔边界和分离超平面之间;当α=C,ξ>1,分类错误。再求解w,b,其中b可以用间隔边界上(0<α<C)的一个点或所有点求平均得到
w=i=1nαiyixi,b=yji=1nyiαi(xixj)

2.SVM模型另一种解释

1.判别模型

f(x)=sign(wx+b)

2.参数

决策边界法向量w,和决策边界截距b

3.目标函数(损失函数+正则化项)

1.损失函数(hinge loss)

L(y,wx+b)=[1y(wx+b)]+
[z]+:当z>0时为z,z<0时为0。对于硬间隔SVM,损失函数为0,即使全部1yi(wxi+b)<0
2.目标函数:
Obj=i=1n[1yi(wxi+b)]++λ||w||2
最小化该目标函数等价于上述凸二次规划问题。令[1yi(wxi+b)]+=ξi,λ=12C可证明。
3. 目标函数决定了模型生成仅与支持向量有关,与其余大部分样本点无关

0 0