西瓜书第六章支持向量机
支持向量机 (SVM)
1. 间隔与支持向量
SVM 的目标是找到一个超平面,将不同类别的数据分开,并最大化分隔的间隔。定义间隔为两类样本点到分类超平面的最小距离。对线性可分情况,假设数据集为:
分类超平面可以表示为:
其中,\(\mathbf{w}\) 为法向量,决定超平面的方向;\(b\) 为偏置项,决定超平面到原点的距离。
数据点到超平面的距离为:
间隔最大化条件为满足:
其中满足等号的点被称为支持向量,它们位于间隔边界上。
2. 对偶问题
SVM 的优化问题可以通过引入拉格朗日乘子 \(\alpha_i\) 转化为对偶问题,从而便于计算非线性情况。原始问题为:
约束条件:
构建拉格朗日函数:
通过对偶形式进行优化,得到:
约束条件:
3. 核函数
在非线性可分情况下,通过引入核函数将低维输入映射到高维特征空间,使得线性不可分数据在高维空间中线性可分。核函数定义为:
常见核函数包括:
- 线性核:\(K(\mathbf{x}_i, \mathbf{x}_j) = \mathbf{x}_i \cdot \mathbf{x}_j\)
- 多项式核:\(K(\mathbf{x}_i, \mathbf{x}_j) = (\mathbf{x}_i \cdot \mathbf{x}_j + c)^d\)
- 高斯核(RBF 核):\(K(\mathbf{x}_i, \mathbf{x}_j) = \exp\left(-\frac{\|\mathbf{x}_i - \mathbf{x}_j\|^2}{2\sigma^2}\right)\)
- Sigmoid 核:\(K(\mathbf{x}_i, \mathbf{x}_j) = \tanh(\kappa \mathbf{x}_i \cdot \mathbf{x}_j + \theta)\)
核函数的引入避免了显式计算 \(\phi(\mathbf{x})\),通过“核技巧”直接在低维空间中计算高维空间的内积。
4. 软间隔与正则化
对于线性不可分数据,允许一定的误分类,通过引入松弛变量 \(\xi_i \geq 0\),并构建软间隔。优化问题变为:
约束条件:
其中,\(C\) 为正则化参数,用于控制间隔大小与误分类样本的权衡,\(C\) 值越大,对误分类的惩罚越大,模型越倾向于较小间隔。
5. 支持向量回归 (SVR)
支持向量回归 (SVR) 是 SVM 在回归问题中的应用。SVR 的目标是找到一个拟合超平面,使样本点落在误差不超过 \(\epsilon\) 的区域内。SVR 的优化问题为:
约束条件:
其中,\(\epsilon\) 控制回归精度,\(\xi_i\) 和 \(\xi_i^*\) 是松弛变量,用于度量样本点偏离 \(\epsilon\) 区域的误差。
6. 核方法
核方法广泛用于机器学习中,通过定义不同的核函数,模型能够在高维空间进行计算而不显式地进行映射。核方法的特点是可以在不同特征空间间找到适合的核函数,将复杂数据转化为线性模型,从而提升 SVM 在非线性数据上的表现。
对于任意给定的核函数 \(K(\mathbf{x}_i, \mathbf{x}_j)\),我们可以在新的特征空间进行操作,而无需直接计算映射函数 \(\phi(\mathbf{x})\)。

浙公网安备 33010602011771号