基于 VitePress 构建,持续更新中,欢迎共同优化
Skip to content

Task05 详读西瓜书 + 南瓜书第 6 章

1 间隔与支持向量

  • 支持向量的概念: 假设超平面 (w,b) 能将训练样本正确分类,即对于 (xi,yi)D,若 yi=+1,则有 wTxi+b>0,若 yi=1,则有 wTxi+b<0,令:
{wTxi+b+1,yi=+1wTxi+b1,yi=1

距离超平面最近的这几个训练样本点使得上式成立,则这些样本点被称为支持向量。

  • 间隔:两个异类支持向量超平面的距离之和 γ=2w
  • 支持向量机(SVM)基本型:

找到最大间隔的划分超平面,需要求解参数 wb 使得 γ 最大,目标函数如下:

minw,b12w2 s.t. yi(wTxi+b)1,i=1,2,,m

2 对偶问题

  • 拉格朗日函数:L(w,b,α)=12w2+i=1mαi(1yi(wTxi+b))
  • 对偶问题:
maxαi=1mαi12i=1mj=1mαiαjyiyjxiTxj s.t. i=1mαiyi=0αi0,i=1,,m
  • KKT 条件:
{αi0yif(xi)10αi(yif(xi)1)=0
  • 支持向量机特点:训练完成后,大部分的训练样本都不需保留,最终模型仅与支持向量有关
  • SMO 算法思路:
    1. 选取一对需要更新的变量 αiαj
    2. 固定 αiαj 以外的参数,求解对偶问题,获得更新后的 αiαj
    3. 重复上述 2 个步骤,直至收敛
  • SMO 采用一个启发式:使选取的两变量所对应样本之间的间隔最大

3 软间隔与正则化

  • 软间隔:允许某项样本不满足约束 yi(wTxi+b)1,在最大化间隔的同时,不满足约束的样本应该尽可能少
  • 目标函数:
minw,b12w2+Ci=1m0/1(yi(wTxi+b)1)0/1(z)={1, if z<0;0, otherwise 
  • 损失函数:
    1. hinge 损失:hinge(z)=max(0,1z)
    2. 指数损失(exponential loss): exp(z)=exp(z)
    3. 对率损失(logistic loss):log(z)=log(1+exp(z))
  • 常用的软间隔支持向量机:
minw,b,ξ12w2+Ci=1mξis.t.yi(wTxi+b)1ξiξi0,i=1,,m
  • 软间隔支持向量机的对偶问题:
maxαi=1mαi12i=1mj=1mαiαjyiyjxiTxjs.t.i=1mαiyi=00αiC,i=1,2,,m
  • 软间隔支持向量机的 KKT 条件:
{αi0,μi0yif(xi)1+ξi0αi(yif(xi)1+ξi)=0ξi0,μiξi=0
  • 软间隔支持向量机的最终模型仅与支持向量有关,即通过采用 hinge 损失函数仍保持了稀疏性
  • 正则化问题:
minfΩ(f)+Ci=1m(f(xi),yi)

在该式中,Ω(f) 称为正则化项,C 称为正则化参数

1. $L_p$ 范数使常用的正则化项
2. $L_2$ 范数 $\|w\|_2$ 倾向于 $w$ 的分量取值尽量均衡,即非零分量个数尽量稠密
3. $L_0$ 范数 $\|w\|_0$ 和 $L_1$ 范数 $\|w\|_1$ 倾向于 $w$ 的分量尽量系数,即非零分量个数尽量少

4 支持向量回归

  • 损失计算规则:以 f(x) 为中心,构建一个宽度为 2ϵ 的间隔带,若训练样本落入此间隔带,则不计算损失,认为是被预测正确
  • SVR 目标函数:
minw,b,ξi,ξ^i12w2+Ci=1m(ξi+ξ^i)s.t.f(xi)yiϵ+ξiyif(xi)ϵ+ξ^iξi0,ξ^i0,i=1,2,,m
  • SVR 对偶问题:
maxα,α^i=1myi(α^iαi)ϵ(α^i+αi)12i=1mj=1m(α^iαi)(α^jαj)xiTxj s.t. i=1m(α^iαi)=00αi,α^iC
  • SVR 的 KKT 条件:
{αi(f(xi)yiϵξi)=0α^i(yif(xi)ϵξ^i)=0αiα^i=0,ξiξ^i=0(Cαi)ξi=0,(Cα^i)ξ^i=0
  • SVR 的解:
f(x)=i=1m(α^iαi)xiTx+b

其中:

b=yi+ϵi=1m(α^iαi)xiTxw=i=1m(α^iαi)ϕ(xi)

© 22025–present 謝懿Shine. All Rights Reserved.