Skip to content

硬间隔支持向量机

hard-margin support vector machine · hard-margin SVM · 支持向量机

在可分特征空间中最小化权向量范数,并由支持向量给出核化决策函数。

条目类型
算法

形式陈述

给定 yi{1,+1} 和特征映射 ϕ(xi),硬间隔 SVM 的原始问题固定为

minw,b 12w2subject toyi(w,ϕ(xi)+b)1(i=1,,m).

约束把最小函数间隔规范为 1;与线性分类器的几何间隔结合,最小几何间隔为 1/w,故最小化 12w2 等价于在这套定标下最大化间隔。b 不惩罚,因而不能未经说明把它并入 w 的范数。

问题要求样本在该特征空间严格可分。其最优权向量可写成

w=iαiyiϕ(xi),αi0,

于是借助核技巧,决策函数为

h(x)=sign(iαiyik(xi,x)+b).

αi>0 的训练点称为支持向量;互补松弛使它们位于 yif(xi)=1 的 margin 边界。核技巧是计算工具,不是硬间隔 SVM 的定义前置:取 ϕ(x)=x 就得到普通线性 SVM。

直觉

可分超平面通常不止一个。硬间隔 SVM 选取离两类最近训练点都尽量远的那一个;把参数缩放到最近点恰好满足函数间隔 1 后,分类带总宽度是 2/w。只有碰到两侧边界的点能阻止带继续变宽,所以最终解由少量支持向量钉住。

软间隔 SVM的差异不是参数大小,而是可行集:硬间隔禁止任何 margin 违反,软间隔为违反量定价。软版本不是硬版本的严格特殊情形;在可分数据和某些足够大的 C 下两者可能碰巧给同一解,但不可据此建立类型包含关系。

例子与边界

在一维取训练点

(2,1), (1,1), (1,+1), (2,+1),

使用线性核。候选 w=1,b=0 给函数 margins 2,1,1,2,全部可行,目标为 1/2。最近的 x=1x=1 把超平面固定在 0;它们到边界的几何距离均为 1,两个外侧点不是支持向量。

只看两支持点,对偶约束要求其乘子相等为 a,目标化为

2a2a2,a0.

最大值在 a=1/2,并复原

w=12(1)(1)+12(+1)(+1)=1.

因此可直接核对原始目标 1/2 与对偶值 11/2=1/2 相同,常数 12、标签符号和 bias 约束彼此一致。

若同一点 x 同时带 +11 标签,约束分别要求 f(x)1f(x)1,原始问题不可行。这不是优化器故障,必须转用允许 slack 的模型。即便样本可分,极小间隔也可能使解对测量扰动敏感;硬间隔没有为噪声设置价格。

推论与应用

核化后,分类边界在输入空间可非线性,但在 ϕ 空间仍是仿射超平面。更换核同时改变可分性和范数几何;把核乘常数会重标特征范数,不能期待同一组正则参数仍有相同含义。

只有支持向量出现在决策和 bias 的 KKT 条件中,因此预测可具有稀疏性;最坏情况下所有训练点都可能成为支持向量。硬间隔的可分假设是首要边界,不能用训练准确率高来代替正式检查。

可行集非空时,12w2w 严格凸,因此最优 w 唯一。若训练集中正负两类都出现,最优性还迫使两类最近投影之差恰为 2:差若更大便可缩小 w,所以可行 bias 区间的两个端点重合,b 也唯一。只有样本全属一类等退化情形,未惩罚的 b 才可在区间或射线上变化;即使 (w,b) 唯一,奇异 Gram 矩阵下的支持向量系数仍可能不唯一。实现还需规定决策值恰为零时的 tie,数学优化本身只返回实值分数。

原始—对偶间隙可作为数值最优性的证书,但它不检验数据是否来自同一分布,也不代替泛化界。预测成本与支持向量数成正比;若支持向量接近全部样本,核化模型虽仍正确,却可能不适合低延迟部署。

参考资料
  • Bernhard Boser, Isabelle Guyon, and Vladimir Vapnik, “A Training Algorithm for Optimal Margin Classifiers,” Proceedings of COLT, 1992, pp. 144–152, doi:10.1145/130385.130401.
  • Corinna Cortes and Vladimir Vapnik, “Support-Vector Networks,” Machine Learning 20, 1995, pp. 273–297, doi:10.1007/BF00994018.
  • Bernhard Schölkopf and Alexander J. Smola, Learning with Kernels, MIT Press, 2002, Chs. 7 and 12.
关系图谱14 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系