1. 基本概念
1.1 为什么需要软间隔
在实际任务中,即使使用核函数,也很难保证训练样本在特征空间中完全线性可分。此外,即使找到了线性可分的超平面,也可能是由于过拟合造成的。
硬间隔的问题:
- 要求所有样本都必须满足约束条件
- 对噪声和异常值非常敏感
- 容易过拟合
软间隔的解决方案 :
允许某些样本不满足约束条件,即允许一些样本被错误分类或位于间隔内,从而获得更鲁棒、泛化能力更强的模型。
1.2 软间隔的基本思想
核心思想 :
在最大化间隔的同时,允许一些样本违反约束,但违反约束的样本应尽可能少。
优化目标 :
既要最大化间隔,又要最小化违反约束的样本数量,通过参数 CCC 来平衡这两个目标。
minw,b12∣∣w∣∣2+C∑i=1ml0/1(yi(wTxi+b)−1)\min_{w,b} \frac{1}{2}||w||^2 + C \sum_{i=1}^{m} l_{0/1}(y_i(w^T x_i + b) - 1)w,bmin21∣∣w∣∣2+Ci=1∑ml0/1(yi(wTxi+b)−1)
其中:
- l0/1l_{0/1}l0/1:0/1损失函数,样本违反约束时损失为1,否则为0
- CCC:平衡两项的常数
参数 CCC 的作用:
- 当 CCC 为无穷大时:迫使所有样本均满足约束,等价于硬间隔SVM
- 当 CCC 取有限值时:允许一些样本不满足约束,实现软间隔
1.3 损失函数
0/1损失函数 :
理想情况下,我们希望使用0/1损失函数,即样本违反约束时损失为1,否则为0。
问题 :
0/1损失函数非凸、非连续,数学性质不好,使得优化问题不易直接求解。
替代损失函数 :
人们通常用其他函数来代替0/1损失,称为替代损失(surrogate loss)。替代损失函数一般具有较好的数学性质,如凸性、连续性,且是0/1损失的上界。
常用的替代损失函数:
- Hinge损失 :lhinge(z)=max(0,1−z)l_{hinge}(z) = \max(0, 1 - z)lhinge(z)=max(0,1−z)
- 指数损失 :lexp(z)=exp(−z)l_{exp}(z) = \exp(-z)lexp(z)=exp(−z)
- 对率损失 :llog(z)=log(1+exp(−z))l_{log}(z) = \log(1 + \exp(-z))llog(z)=log(1+exp(−z))
2. 软间隔SVM方法
2.1 松弛变量
引入松弛变量 :
为了处理违反约束的样本,引入松弛变量 (slack variables)ξi≥0\xi_i \ge 0ξi≥0,用于量化样本违反约束的程度。
约束条件 :
yi(wTxi+b)≥1−ξiy_i(w^T x_i + b) \ge 1 - \xi_iyi(wTxi+b)≥1−ξi
- 当 ξi=0\xi_i = 0ξi=0 时:样本满足约束,位于间隔边界外或边界上
- 当 0<ξi≤10 < \xi_i \le 10<ξi≤1 时:样本位于间隔内,但分类正确
- 当 ξi>1\xi_i > 1ξi>1 时:样本被错误分类
优化目标 :
minw,b,ξi12∣∣w∣∣2+C∑i=1mξi\min_{w,b,\xi_i} \frac{1}{2}||w||^2 + C \sum_{i=1}^{m} \xi_iw,b,ξimin21∣∣w∣∣2+Ci=1∑mξi
其中:
- 第一项:最大化间隔(最小化 ∣∣w∣∣2||w||^2∣∣w∣∣2)
- 第二项:最小化违反约束的程度(最小化 ∑ξi\sum \xi_i∑ξi)
- CCC:平衡两项的常数
这就是常用的软间隔支持向量机。
2.2 对偶问题
对偶形式 :
软间隔SVM的对偶问题与硬间隔SVM类似,唯一的区别在于对拉格朗日乘子 αi\alpha_iαi 的约束:
maxα∑i=1mαi−12∑i=1m∑j=1mαiαjyiyjxiTxj\max_{\alpha} \sum_{i=1}^{m} \alpha_i - \frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m} \alpha_i \alpha_j y_i y_j x_i^T x_jαmaxi=1∑mαi−21i=1∑mj=1∑mαiαjyiyjxiTxj
s.t.∑i=1mαiyi=0,\text{s.t.} \quad \sum_{i=1}^{m} \alpha_i y_i = 0,s.t.i=1∑mαiyi=0,
0≤αi≤C,i=1,2,...,m.0 \le \alpha_i \le C, \quad i = 1, 2, \ldots, m.0≤αi≤C,i=1,2,...,m.
关键区别:
- 硬间隔:αi≥0\alpha_i \ge 0αi≥0
- 软间隔:0≤αi≤C0 \le \alpha_i \le C0≤αi≤C
引入核函数 :
同样可以引入核函数,将对偶问题中的内积 xiTxjx_i^T x_jxiTxj 替换为核函数 κ(xi,xj)\kappa(x_i, x_j)κ(xi,xj)。
3. 正则化
3.1 正则化的概念
一般形式 :
软间隔SVM的优化目标可以写成更一般的形式:
minfΩ(f)+C∑i=1ml(f(xi),yi)\min_f \Omega(f) + C \sum_{i=1}^{m} l(f(x_i), y_i)fminΩ(f)+Ci=1∑ml(f(xi),yi)
各项的含义:
- Ω(f)\Omega(f)Ω(f) :称为结构风险 (structural risk),用于描述模型 fff 的某些性质
- ∑i=1ml(f(xi),yi)\sum_{i=1}^{m} l(f(x_i), y_i)∑i=1ml(f(xi),yi) :称为经验风险(empirical risk),用于描述模型与训练数据的拟合程度
- CCC:用于平衡结构风险和经验风险
3.2 正则化的作用
从经验风险最小化的角度:
- Ω(f)\Omega(f)Ω(f) 表达了我们对模型的期望性质(如希望获得复杂度较低的模型)
- 这提供了一种引入领域知识和用户意图的途径
从防止过拟合的角度:
- 这种信息有助于降低最小化训练误差带来的过拟合风险
- 从这个角度看,上式称为正则化(regularization)问题
- Ω(f)\Omega(f)Ω(f) 称为正则化项 ,CCC 称为正则化常数
4. 总结
软间隔的核心价值:
- 处理线性不可分问题:允许某些样本违反约束,处理噪声和异常值
- 提高泛化能力:避免过拟合,获得更鲁棒的模型
- 灵活性 :通过参数 CCC 控制对违反约束的容忍程度
正则化的作用:
- 控制模型复杂度:通过正则化项表达对模型性质的期望
- 防止过拟合:平衡结构风险和经验风险
- 引入先验知识:提供引入领域知识的途径
软间隔SVM的特点:
- 保持稀疏性,模型只依赖于支持向量
- 通过松弛变量量化违反约束的程度
- 对偶问题中 αi\alpha_iαi 的上界为 CCC
- 支持向量的性质更加丰富(包括位于间隔边界、间隔内、错误分类的样本)
参数 CCC 的选择:
- CCC 越大:对违反约束的惩罚越大,模型越接近硬间隔SVM
- CCC 越小:允许更多的违反约束,模型更宽松
- 需要通过交叉验证等方法选择合适的 CCC 值
实际应用:
- 软间隔SVM是实际应用中最常用的SVM形式
- 结合核函数,可以处理复杂的非线性分类问题
- 正则化思想在机器学习中广泛应用,是控制模型复杂度的基本方法