Appearance
第6章 支持向量机
🎯 学习目标
- 理解间隔最大化的核心思想和几何意义
- 掌握对偶问题和KKT条件在SVM中的应用
- 理解核技巧如何将线性SVM扩展到非线性情况
- 掌握软间隔SVM处理非线性可分数据的方法
- 了解支持向量回归(SVR)的原理和应用
6.1 间隔与支持向量
📏 为什么要最大化间隔?
在线性可分的情况下,能够正确划分训练样本的超平面有无穷多个。支持向量机的核心思想是找到具有**"最大间隔"**的划分超平面。
超平面与间隔
超平面方程:
样本到超平面的距离:
间隔(margin):
✓ 为什么最大化间隔?
- 更好的泛化能力
- 对噪声更鲁棒
- VC维理论支持
🎯 支持向量
距离超平面最近的训练样本点称为支持向量。它们"支撑"着这个间隔,决定了最优分类超平面。
SVM优化目标
SVM的优化目标是找到使间隔最大化的
最大化:
等价于最小化:
约束条件:
这是一个凸二次规划问题,存在全局最优解,可以通过现有的QP优化算法求解。
SVM可视化演示
调整参数观察SVM如何寻找最大间隔超平面。黄色圆圈标记的是支持向量,绿色虚线表示间隔边界。
正类 (+1)
负类 (-1)
决策边界
支持向量
6.2 对偶问题
🔄 为什么要引入对偶问题?
通过拉格朗日乘子法,我们可以将原始问题转化为对偶问题,这样做有几个重要优势:
- 🚀 更易求解:对偶问题往往更容易优化
- 🔑 引入核函数:为核技巧提供基础
- 📊 稀疏解:大部分 α 为 0
对偶问题公式
最大化:
约束条件:
📐 KKT条件
支持向量机的解需要满足KKT(Karush-Kuhn-Tucker)条件:
①
②
③
互补松弛条件表明:只有支持向量对应的
6.3 核函数
🎩 核技巧(Kernel Trick)
现实任务中,样本空间往往不是线性可分的。核技巧的思想是:将样本映射到更高维的特征空间,使其在高维空间中线性可分。
传统方法 vs 核技巧
传统方法:
- 显式计算映射
- 在高维空间计算内积
- ❌ 问题:维度可能极高,甚至无穷维!
核技巧:
- 直接定义核函数
- ✅ 无需显式计算
!
核函数定理
只要一个对称函数满足正定性,它就对应某个映射
常用核函数对比
了解不同核函数的特点、适用场景和参数设置。RBF核是最常用的核函数,适合大多数情况。
RBF核(高斯核)
核函数公式:
K(x, z) = exp(-γ·||x-z||²)
最常用的核函数,可以将数据映射到无穷维空间
参数说明:
γ: 核宽度参数,控制影响范围
✅ 优点
- • 可以处理任意非线性问题
- • 只有一个超参数γ
- • 适用于大多数情况
- • 决策边界平滑
⚠️ 缺点
- • γ选择很关键,需要仔细调参
- • γ过大导致过拟合,过小导致欠拟合
- • 计算开销相对较大
典型应用场景:
通用分类问题、模式识别、生物信息学
| 核函数 | 计算复杂度 | 参数数量 | 非线性能力 | 推荐度 |
|---|---|---|---|---|
| 线性核 | 低 | 0 | 无 | ⭐⭐⭐ |
| 多项式核 | 中 | 3 | 中等 | ⭐⭐ |
| RBF核 | 中 | 1 | 强 | ⭐⭐⭐⭐⭐ |
| Sigmoid核 | 中 | 2 | 中等 | ⭐ |
核函数选择建议
- 首选RBF核:适用于大多数情况,只需调整一个参数γ
- 高维稀疏数据:使用线性核(如文本分类)
- 小数据集:可以尝试多项式核
- 先简单后复杂:从线性核开始,再尝试RBF核
- 交叉验证:通过网格搜索找到最佳参数
6.4 软间隔与正则化
🛡️ 软间隔SVM
现实任务中,数据往往不是完全线性可分的,可能存在噪声或离群点。软间隔允许某些样本不满足约束条件。
软间隔优化目标
最小化:
约束条件:
(松弛变量):允许样本违反约束的程度 - C(惩罚参数):控制对误分类的惩罚强度
| C 值 | 行为 | 风险 |
|---|---|---|
| C → 0 | 容忍更多误分类,间隔更大 | 可能欠拟合 |
| C 适中 | 平衡间隔与误差,泛化能力好 | 通常最优 |
| C → ∞ | 接近硬间隔,追求完美分类 | 可能过拟合 |
损失函数视角
软间隔SVM可以从损失函数+正则化的角度理解:
Hinge损失:
: 损失为 0(正确且确信) : 线性增长(惩罚违反间隔)
正则化项
6.5 支持向量回归 (SVR)
📈 从分类到回归
SVM不仅可以用于分类,还可以用于回归任务。**支持向量回归(SVR)**的思想是找一个函数,使得大部分样本点都落在以
SVR优化目标
最小化:
约束条件:
ε-不敏感损失:
: 损失为 0 : 线性惩罚
参数说明:ε 为容忍误差(管道宽度),C 为惩罚参数,
⭐ SVR的优势
- 对异常值鲁棒(ε-不敏感)
- 稀疏解,预测高效
- 可通过核函数处理非线性
- 泛化能力强
⚠️ SVR的挑战
- 参数(C, ε, 核参数)选择困难
- 大规模数据集训练慢
- 需要选择合适的核函数
📝 本章小结
总结
- ✅ 支持向量机通过最大化间隔寻找最优分类超平面,具有良好的泛化能力
- ✅ 对偶问题和KKT条件保证了SVM解的稀疏性,只有支持向量对应的α非零
- ✅ 核技巧允许在不显式计算高维映射的情况下,处理非线性可分问题
- ✅ 软间隔SVM通过引入松弛变量和惩罚参数C,可以处理噪声和不完全可分数据
- ✅ SVR将SVM思想扩展到回归任务,使用ε-不敏感损失函数实现鲁棒回归
- ✅ RBF核是最常用的核函数,适合大多数实际应用场景