[ML Notes] SVM:软间隔
Contents [show]
1. 软间隔支持向量机
实际问题中,往往不能事先知道样本在特征空间中是否线性可分;即便线性可分,这也可能是发生了过拟合。
软间隔(soft margin)的支持向量机允许在一些样本上出错,即不满足约束条件
yi(wTxi+b)≥1
在原优化目标 minw,b12||w||2 的基础上,希望违反式 (1) 的样本数量越少越好,此时的优化目标变为
minw,b12||w||2+Cm∑i=1l0/1(yi(wTxi+b)–1)
其中 C>0 是一个常数系数,用于平衡两个目标。当 C→+∞ 时,相当于不允许任何样本违反式 (1)。
l0/1 是 0/1 损失函数,即
l0/1(z)={1if z<0;0otherwise.
回到式 (2) 中,如果某一样本 (xi,yi) 不满足式 (1) 的约束条件,则 yi(wTxi+b)–1<0,于是 l0/1(yi(wTxi+b)–1)=1,进行了惩罚。l0/1 非凸、不连续,不便于优化。实际中通常使用具有较好数学性质的函数作为替代损失,这些函数通常是凸的、连续的,且是 l0/1 的上界,如
- hinge 损失:lhinge(z)=max(0,1–z)
- 指数损失:lexp(z)=exp(−1)
- 对率损失:llog(z)=log(1+exp(−z))
使用 hinge 损失时,式 (2) 变为
minw,b12||w||2+Cm∑i=1max(0,1–yi(wTxi+b))
为每个样本引入松弛变量(slack variable)ξi≥0 来衡量样本不满足式 (1) 约束的程度,可将上式写为
minw,b,ξi12||w||2+Cm∑i=1ξis.t.yi(wTxi+b)≥1–ξiξi≥0,i=1,2,…,m
即为软间隔支持向量机。
2. 求解方法
式 (4) 仍是一个二次规划问题,构造广义拉格朗日函数
L(w,b,ξ,α,μ)=12||w||2+Cm∑i=1ξi+m∑i=1αi(1–ξi–yi(wTxi+b))–m∑i=1μiξi
其中 αi≥0,μi≥0 是拉格朗日乘子。
计算相关偏导
∇Lw=w–m∑i=1αiyixi
dLdb=–m∑i=1αiyi
dLdξi=C–αi–μi
令以上三个偏导为零,得到
w=m∑i=1αiyixi
0=m∑i=1αiyi
C=αi+μi
将式 (6)、(7)、(8) 带入式 (5),得
L(w,b,ξ,α,μ)=12wTm∑i=1αiyixi+Cm∑i=1ξi+m∑i=1αi–m∑i=1αiξi–m∑i=1αiyiwTxi–bm∑i=1αiyi–m∑i=1(C–αi)ξi=m∑i=1αi–12m∑i=1αiyiwTxi=m∑i=1αi–12m∑i=1m∑j=1αiαjyiyjxTixj
上式中已经消去了 μ,于是得到式 (4) 的对偶问题
maxαm∑i=1αi–12m∑i=1m∑j=1αiαjyiyjxTixjs.t.m∑i=1αiyi=00≤αi≤C,i=1,2,…,m
这个问题与线性 SVM 的对偶问题(前文式 (12))具有相似的结构,区别只在于软间隔 SVM 对 αi 的约束为 0≤αi≤C。可以使用前文的方法求解。
对软间隔 SVM,KKT 条件要求
{αi≥0,μi≥0,yif(xi)–1+ξi≥0,αi(yif(xi)–1+ξi)=0,ξi≥0,μiξi=0.
其中 αi≥0、yif(xi)–1+ξi≥0 和 αi(yif(xi)–1+ξi)=0 三个条件表示对任意样本 (xi,yi) 存在两种情况:
- 若 αi=0,则该样本不会对模型 f(x) 产生影响;
- 若 αi>0,则必有 yif(xi)–1+ξi=0,即 yif(xi)=1–ξi,该样本为支持向量:
- 若 αi<C,由式 (8) 可知,此时 μi>0;又由 KTT 条件 μiξi=0 可知,此时 ξi=0,该样本没有违反式 (1),在最大间隔边界上;
- 若 αi=C,由式 (8) 可知,此时 μi=0:
- 若 ξi≥1,则该样本在最大间隔内部;
- 若 ξi>1,则该样本被错误分类。
由以上分析可知,使用 hinge 损失函数的软间隔 SVM 最终模型仅与支持向量有关,hinge 损失函数保持了稀疏性。
3. 正则化
通过将式 (2) 中的 l0/1 损失函数更换为其他替代损失函数,可以得到具有不同性质的模型。这些模型的优化目标都可以写为
minfΩ(f)+Cm∑i=1l(f(xi),yi)
上式中的第一项 Ω(f) 用于描述划分超平面的间隔大小,称为结构风险(structural risk),描述了模型 f 的性质;第二项 m∑i=1l(f(xi),yi) 称为经验风险(empirical risk),描述模型与训练数据的拟合程度。C 用于对两个风险进行折中。
通过 Ω(f) 可以控制模型的某些性质,如引入领域知识,从而缩小假设空间,降低过拟合风险。从这个角度,可以将 Ω(f) 看成是正则化项,C 为正则化系数。
常用的正则化项如 Lp 范数,L2 范数 ||w||2 倾向于使 w 的分量取值尽量均衡,非零分量个数尽量稠密;L1 范数 ||w||1 倾向于使 w 的分量尽量系数,即非零分量个数尽量少。