在线性可分的情况下,能够正确划分训练样本的超平面有无穷多个。支持向量机的核心思想是找到具有"最大间隔"的划分超平面。
超平面方程:
样本到超平面的距离:
间隔(margin):
距离超平面最近的训练样本点称为支持向量。 它们"支撑"着这个间隔,决定了最优分类超平面。
SVM的优化目标是找到使间隔最大化的w和b:
最大化:
最小化:
约束条件:
这是一个凸二次规划问题, 存在全局最优解,可以通过现有的QP优化算法求解。
调整参数观察SVM如何寻找最大间隔超平面。黄色圆圈标记的是支持向量,绿色虚线表示间隔边界。
通过拉格朗日乘子法,我们可以将原始问题转化为对偶问题,这样做有几个重要优势:
对偶问题往往更容易优化
为核技巧提供基础
大部分α为0
最大化:
约束条件:
支持向量机的解需要满足KKT(Karush-Kuhn-Tucker)条件:
αᵢ ≥ 0
对偶变量非负
yᵢ(w·xᵢ + b) - 1 ≥ 0
原始约束满足
αᵢ[yᵢ(w·xᵢ + b) - 1] = 0
互补松弛条件(关键!)
互补松弛条件表明: 只有支持向量对应的αᵢ > 0,其他样本的αᵢ = 0。 这就是为什么SVM的解是稀疏的!
现实任务中,样本空间往往不是线性可分的。核技巧的思想是: 将样本映射到更高维的特征空间,使其在高维空间中线性可分。
①显式计算映射 φ(x)
②在高维空间计算内积 φ(xᵢ)·φ(xⱼ)
❌ 问题:维度可能极高,甚至无穷维!
①直接定义核函数 K(xᵢ, xⱼ)
②K(xᵢ, xⱼ) = φ(xᵢ)·φ(xⱼ)
✓ 无需显式计算φ(x)!
核函数定理: 只要一个对称函数满足正定性,它就对应某个映射φ的内积。 这意味着我们可以直接设计核函数,而无需知道具体的映射形式!
了解不同核函数的特点、适用场景和参数设置。RBF核是最常用的核函数,适合大多数情况。
最常用的核函数,可以将数据映射到无穷维空间
| 核函数 | 计算复杂度 | 参数数量 | 非线性能力 | 推荐度 |
|---|---|---|---|---|
| 线性核 | 低 | 0 | 无 | ⭐⭐⭐ |
| 多项式核 | 中 | 3 | 中等 | ⭐⭐ |
| RBF核 | 中 | 1 | 强 | ⭐⭐⭐⭐⭐ |
| Sigmoid核 | 中 | 2 | 中等 | ⭐ |
现实任务中,数据往往不是完全线性可分的,可能存在:噪声或离群点。软间隔允许某些样本不满足约束条件。
最小化:
约束条件:
ξᵢ (松弛变量)
允许样本违反约束的程度
C (惩罚参数)
控制对误分类的惩罚强度
容忍更多误分类
间隔更大
可能欠拟合
平衡间隔与误差
泛化能力好
通常最优
接近硬间隔
追求完美分类
可能过拟合
软间隔SVM可以从损失函数+正则化的角度理解:
• yf(x) ≥ 1: 损失为0(正确且确信)
• yf(x) < 1: 线性增长(惩罚违反间隔)
• 控制模型复杂度
• 防止过拟合
• λ = 1/(2C)
SVM不仅可以用于分类,还可以用于回归任务。支持向量回归(SVR)的思想是找一个函数,使得大部分样本点都落在以f(x)为中心、宽度为2ε的"管道"内。
最小化:
约束条件:
• |y - f(x)| ≤ ε: 损失为0
• |y - f(x)| > ε: 线性惩罚
• ε: 容忍误差(管道宽度)
• C: 惩罚参数
• ξ, ξ*: 松弛变量
✓支持向量机通过最大化间隔寻找最优分类超平面,具有良好的泛化能力
✓对偶问题和KKT条件保证了SVM解的稀疏性,只有支持向量对应的α非零
✓核技巧允许在不显式计算高维映射的情况下,处理非线性可分问题
✓软间隔SVM通过引入松弛变量和惩罚参数C,可以处理噪声和不完全可分数据
✓SVR将SVM思想扩展到回归任务,使用ε-不敏感损失函数实现鲁棒回归
✓RBF核是最常用的核函数,适合大多数实际应用场景