SVM 是判别式方法的代表,也是本课公式推导最长的一块。一条主线贯穿:±1 标签 → 最大间隔 → 规范化 → 基本型 → 对偶 → KKT → 软间隔。
一、动机:最大间隔
线性可分时,能分开两类的超平面有无数个。SVM 要的是分类间隔(Margin)最大的那个——离两类最近的点都尽量远。直觉:留白越宽,对噪声扰动的容忍越好,泛化越强(“两堵墙之间走正中央”)。
两个要点:定义一个所有分类面都能比较的距离指标;在该指标上取最优。
二、建模与记号
- 样本 {xn,tn},标签 tn∈{+1,−1}(用 ±1 而非 0/1,是关键设计);
- 线性模型 y(x)=wTx+b,决策 f(x)=sgn(y(x));
- w 垂直于超平面(法向量),决定方向;b 决定平移。
±1 标签的第一个红利——正确分类可统一写成一个式子:
tny(xn)>0⟺第 n 个样本分类正确
因为正类(t=+1)落在 y>0 一侧、负类(t=−1)落在 y<0 一侧,乘积恒正。
三、点到超平面的距离
点 xn 到超平面 y(x)=0 的几何距离为 ∥w∥∣y(xn)∣。对分对的点,tny(xn)>0 正好等于绝对值,于是去掉绝对值:
距离=∥w∥tny(xn)=∥w∥tn(wTxn+b)
这是 ±1 标签的第二个红利。原始的最大间隔目标(最大化”最近点距离”)为:
maxw,b ∥w∥1minn[tn(wTxn+b)]
形式复杂(max 套 min),需化简。
关键观察:(w,b) 同乘常数 k 表示同一超平面,尺度自由。于是规定离超平面最近的点满足:
tn(wTxn+b)=1
则所有点满足 tn(wTxn+b)≥1,且最近点距离 =∥w∥1。
最大化 ∥w∥1 等价于最小化 21∥w∥2。
五、基本型(原问题)
minw,b 21∥w∥2s.t.tn(wTxn+b)≥1, n=1,…,N
这是凸二次规划:凸函数极小值即全局最小值;要么无解(线性不可分),要么唯一解。
六、拉格朗日与对偶问题
什么是对偶问题
对带约束的最小化,用拉格朗日乘子法给每条约束配乘子 an≥0,把约束揉进目标,再消去原变量,得到的只含乘子的等价问题就叫对偶问题;原来的叫原问题。
博弈视角:拉格朗日函数里你控制 w,b 想让它小、对手控制 a 想让它大。原问题是 minw,bmaxaL(你先动),对偶是 maxaminw,bL(对手先动)。凸问题下两者最优值相等(强对偶),故可解更好算的对偶。
推导
L(w,b,a)=21∥w∥2−∑n=1Nan[tn(wTxn+b)−1]
对 w、b 求偏导置零:
w=∑n=1Nantnxn
∑n=1Nantn=0
代回消去 w,b,得对偶问题:
maxa L~(a)=∑n=1Nan−21∑n=1N∑m=1NanamtntmxnTxm
约束 an≥0,∑nantn=0。
对偶的两个好处:样本只以内积 xnTxm 出现(为核技巧留接口);解出来大部分 an=0(稀疏,引出支持向量)。
七、KKT 条件与支持向量
KKT 互补条件(核心三条):
an≥0
tny(xn)−1≥0
an(tny(xn)−1)=0
第三条(互补松弛)是灵魂:对每个点,要么 an=0(对 w 无贡献),要么 tny(xn)=1(点恰在间隔边界上)。
因此:
- 严格分对、在间隔外(tny>1)的点:an=0,无关紧要;
- 恰在间隔边界(tny=1)的点:an>0,称为支持向量。
由 w=∑nantnxn,只有支持向量贡献,故超平面完全由少数支持向量决定,删掉其余点不影响结果——这就是 SVM 名字由来。
偏置 b 由任一支持向量(tny(xn)=1)反解,通常对所有支持向量取平均。
八、手算例子
两点:正类 x1=(1,1)、t1=+1;负类 x2=(0,0)、t2=−1。两点都是支持向量。
由 ∑nantn=0 得 a1=a2=a。则 w=a(1,1)−a(0,0)=(a,a)。
代入 tn(wTxn+b)=1:
- 对 x1:2a+b=1;
- 对 x2:−b=1,即 b=−1。
解得 a=1,w=(1,1),b=−1。分界线 x1+x2−1=0,过中点 (0.5,0.5),垂直平分两点连线,间隔 =1/2。
手算套路:用 ∑nantn=0 减少未知数 → 写 w=∑nantnxn → 对每个支持向量列 tn(wTxn+b)=1 → 解方程组。
九、软间隔(处理噪声与线性不可分)
硬间隔的问题:线性不可分时无解;对离群点敏感。引入松弛变量 ξn≥0,把约束松绑:
tny(xn)≥1−ξn
ξn 三档:ξn=0(没违规);0<ξn≤1(进入间隔但仍正确侧);ξn>1(被分错)。
目标加惩罚项:
minw,b,ξ 21∥w∥2+C∑n=1Nξns.t.tny(xn)≥1−ξn, ξn≥0
C 是正则参数(旋钮):C 大则重罚违规、趋近硬间隔、准但易过拟合;C 小则容忍违规、间隔更胖、泛化更好。本质是准确性与泛化性的权衡。
软间隔对偶与硬间隔几乎相同,仅 an 多了上界:
0≤an≤C,∑n=1Nantn=0
软间隔支持向量分两类:0<an<C 对应 ξn=0(恰在边界);an=C 对应 ξn>0(越界或被错分)。口诀:只有 an=C 的点才越界。
本节考点清单
- ±1 标签的两个红利(统一正确判别式 + 去绝对值的距离)。
- 规范化如何把 max-min 化成 min21∥w∥2,写出基本型(凸二次规划)。
- 对偶推导:w=∑nantnxn、∑nantn=0、对偶目标,以及”只剩内积 + 稀疏”两个好处。
- KKT 互补松弛怎么推出支持向量;超平面只由支持向量决定。
- 两点手算例子全流程。
- 软间隔:松弛变量、惩罚 C 的权衡、0≤an≤C、an=C 才越界。