一、SVM 核心基础
- 基本需求 :在样本空间中找到一个划分超平面 ,实现不同类别样本的分离。超平面是 n 维空间映射到 n-1 维的子空间,由 n 维向量和实数定义,如三维空间中超平面是二维平面,二维空间中超平面是一维直线,其方程为wᵀx + b = 0(w 为法向量,b 为位移项)。
- 理想超平面标准 :对训练样本局部扰动的 "容忍性" 最佳,即能在样本发生微小变化时,仍保持良好的分类效果,核心是最大化margin(间隔)------ 超平面到两类样本中最近点的距离之和(margin = 2d,d 为超平面到最近样本点的距离)。
- 支持向量:距离超平面最近的样本点,是决定超平面位置的关键,SVM 的模型复杂度仅与支持向量数量相关,而非样本总数。
- 点到超平面距离:基于二维空间点 (x,y) 到直线 Ax+By+C=0 的距离公式(|Ax+By+C|/√(A²+B²)),拓展到 n 维空间,点到超平面 wᵀx + b = 0 的距离为 **|wᵀx + b|/√(wᵀw)**。
二、SVM 优化目标与转化
- 初始目标
- 样本标签定义:正例 Y=+1,负例 Y=-1;决策方程为y(x) = w·Φ(x) + b(Φ(x) 是对数据的变换,用于后续处理非线性问题)。
- 核心目标:找到 w 和 b,使离超平面最近的样本点(支持向量)距离最远,即满足Yᵢ·(w·Φ(xᵢ)+b) ≥ 1 (通过放缩 w 和 b,让支持向量满足等号),最终转化为最大化 d = 1/√(wᵀw)。
- 目标转化:将 "最大化 d" 的极大值问题,等价转化为 "最小化 (1/2) wᵀw" 的极小值问题(因 wᵀw 最小化时,1/√(wᵀw) 最大化),约束条件仍为 Yᵢ・(w・Φ(xᵢ)+b) ≥ 1。
三、SVM 求解:拉格朗日乘子法
- 构建拉格朗日函数 :针对带约束的极小值问题,引入拉格朗日乘子 αᵢ(αᵢ ≥ 0),函数为:
L(w,b,α) = (1/2)wᵀw - Σαᵢ[Yᵢ·(w·Φ(xᵢ)+b) - 1] - 对偶问题转化 :利用对偶性,将 "min (w,b) max (α) L (w,b,α)" 转化为 "max (α) min (w,b) L (w,b,α)",通过对 w 和 b 求偏导并令其为 0,得到关键条件:
- 对 w 求偏导:w = ΣαᵢYᵢΦ(xᵢ)(w 由支持向量的 αᵢ、Yᵢ和 Φ(xᵢ) 决定)。
- 对 b 求偏导:ΣαᵢYᵢ = 0(α 与样本标签 Y 的加权和为 0)。
- 最终对偶问题 :将上述条件代入拉格朗日函数,最终求解目标变为:
max(α) [Σαᵢ - (1/2)ΣΣαᵢαⱼYᵢYⱼΦ(xᵢ)·Φ(xⱼ)] ,约束条件为ΣαᵢYᵢ = 0 且αᵢ ≥ 0。
四、SVM 求解实例
通过具体数据计算,代入对偶问题目标函数后,对 α₁、α₂等变量求偏导并令其为 0,筛选满足 αᵢ ≥ 0 约束的解(若偏导为 0 的解不满足约束,则在边界上找最优解,如 α₁=0.25、α₃=0.25、α₂=0),再代入 w 和 b 的计算公式:
- 求解 w:w = ΣαᵢYᵢΦ(xᵢ)(实例中得到 w=(0.5,0.5))。
- 求解 b:b = Yᵢ - ΣαⱼYⱼΦ(xⱼ)·Φ(xᵢ)(实例中得到 b=-2)。
- 最终超平面方程:0.5x₁ + 0.5x₂ - 2 = 0。
五、特殊场景处理
- 软间隔:应对噪音数据
- 问题:当数据含噪音时,硬间隔(要求完全分类正确)会导致超平面效果差,需引入松弛因子 ξᵢ ≥ 0 ,将约束条件放宽为Yᵢ·(w·xᵢ + b) ≥ 1 - ξᵢ。
- 目标函数:变为min(w,b,ξ) [(1/2)wᵀw + CΣξᵢ](C 为惩罚参数),C 越大,对分类错误的惩罚越重(接近硬间隔);C 越小,对错误的容忍度越高。
- 求解调整:拉格朗日乘子约束变为0 ≤ αᵢ ≤ C,其他步骤与硬间隔类似。
- 低维不可分:核变换
- 问题:低维空间中样本线性不可分,需映射到高维空间(如 3 维数据映射到 9 维),但高维空间内积计算复杂(复杂度 O (n²))。
- 核函数解决方案:引入核函数 K (xᵢ,xⱼ) = Φ(xᵢ)・Φ(xⱼ) ,无需显式计算高维映射 Φ(x),直接通过低维样本计算内积,常用核函数包括:
- 线性核函数:K (xᵢ,xⱼ) = xᵢ・xⱼ(适用于低维可分数据)。
- 高斯核函数(RBF):K (xᵢ,xⱼ) = exp (-||xᵢ - xⱼ||²/(2σ²))(适用于非线性数据,通过调节 σ 控制映射范围)。