我们今天将详细讨论支持向量机(SVM)软间隔 问题的数学推导,特别是引入损失函数 后的优化问题。软间隔 SVM 引入了损失函数 和松弛变量,使得它可以处理不可分数据,即允许某些数据点在分类时出现错误或违反间隔条件。
1. 软间隔 SVM 的基本思想
首先,回顾一下软间隔 SVM 的基本思想。在现实数据中,完全线性可分的情况较少,或者即使通过核函数映射到高维空间,也可能出现部分数据无法线性可分的情况。软间隔 SVM 允许一些数据点越过间隔边界 或被错误分类,即允许违反硬间隔 SVM 的严格分类规则。
为了描述这些错误,我们引入了松弛变量 ξ i \xi_i ξi 来表示第 i i i 个样本违反间隔的程度,并引入一个损失函数来量化这些错误。目标是最小化间隔最大化和分类错误之间的折中。
2. 软间隔 SVM 的优化问题
软间隔 SVM 的优化目标是:
- 最大化分类间隔 ,即最小化 ∥ w ∥ 2 \|w\|^2 ∥w∥2;
- 最小化分类错误,即引入损失函数来惩罚违反分类间隔的样本。
为了结合这两个目标,我们引入一个平衡参数 C C C,用来控制间隔最大化和分类错误之间的折中。
原始优化问题(Primal Problem)
首先,给定一个训练集 { ( x i , y i ) } i = 1 n \{(x_i, y_i)\}_{i=1}^n {(xi,yi)}i=1n,其中 x i ∈ R d x_i \in \mathbb{R}^d xi∈Rd 表示第 i i i 个样本, y i ∈ { − 1 , 1 } y_i \in \{-1, 1\} yi∈{−1,1} 表示其类别标签。软间隔 SVM 的优化问题可以表示为:
min w , b , ξ 1 2 ∥ w ∥ 2 + C ∑ i = 1 n ξ i \min_{w, b, \xi} \ \frac{1}{2} \|w\|^2 + C \sum_{i=1}^n \xi_i w,b,ξmin 21∥w∥2+Ci=1∑nξi
其中:
- 1 2 ∥ w ∥ 2 \frac{1}{2} \|w\|^2 21∥w∥2 是为了最大化间隔;
- C ∑ i = 1 n ξ i C \sum_{i=1}^n \xi_i C∑i=1nξi 是为了惩罚分类错误(通过损失函数的形式体现分类误差), C C C 控制了分类误差的权重;
- ξ i ≥ 0 \xi_i \geq 0 ξi≥0 是松弛变量,表示样本违反分类间隔的程度。
约束条件:
为了使 SVM 能正确分类样本,我们要求每个样本 x i x_i xi 满足:
y i ( w T x i + b ) ≥ 1 − ξ i , ∀ i y_i (w^T x_i + b) \geq 1 - \xi_i, \quad \forall i yi(wTxi+b)≥1−ξi,∀i
- 当 ξ i = 0 \xi_i = 0 ξi=0 时,样本严格位于分类间隔外;
- 当 0 < ξ i < 1 0 < \xi_i < 1 0<ξi<1 时,样本位于分类间隔内部,但没有被错误分类;
- 当 ξ i ≥ 1 \xi_i \geq 1 ξi≥1 时,样本被错误分类。
同时,要求 ξ i ≥ 0 \xi_i \geq 0 ξi≥0,以确保松弛变量的非负性。
3. 引入损失函数
为了处理分类错误和违反分类间隔的样本,SVM 引入了一种特殊的损失函数,称为合页损失函数(Hinge Loss),其定义如下:
合页损失函数:
L ( y i , f ( x i ) ) = max ( 0 , 1 − y i f ( x i ) ) L(y_i, f(x_i)) = \max(0, 1 - y_i f(x_i)) L(yi,f(xi))=max(0,1−yif(xi))
这里, f ( x i ) = w T x i + b f(x_i) = w^T x_i + b f(xi)=wTxi+b 是分类器的预测函数, y i y_i yi 是真实标签。
- 当 y i f ( x i ) ≥ 1 y_i f(x_i) \geq 1 yif(xi)≥1 时,样本被正确分类且位于间隔外,损失为零;
- 当 y i f ( x i ) < 1 y_i f(x_i) < 1 yif(xi)<1 时,样本位于间隔内部或被错误分类,损失为 1 − y i f ( x i ) 1 - y_i f(x_i) 1−yif(xi)。
合页损失函数 可以通过优化问题中的松弛变量 ξ i \xi_i ξi 表达为:
ξ i = max ( 0 , 1 − y i f ( x i ) ) \xi_i = \max(0, 1 - y_i f(x_i)) ξi=max(0,1−yif(xi))
因此,我们可以将软间隔 SVM 的目标函数重新写成如下形式:
4. 软间隔 SVM 的优化问题(引入损失函数后的形式)
引入合页损失函数后,软间隔 SVM 的优化问题为:
min w , b 1 2 ∥ w ∥ 2 + C ∑ i = 1 n max ( 0 , 1 − y i ( w T x i + b ) ) \min_{w, b} \ \frac{1}{2} \|w\|^2 + C \sum_{i=1}^n \max(0, 1 - y_i (w^T x_i + b)) w,bmin 21∥w∥2+Ci=1∑nmax(0,1−yi(wTxi+b))
该目标函数包含两个部分:
- 1 2 ∥ w ∥ 2 \frac{1}{2} \|w\|^2 21∥w∥2:控制分类间隔,倾向于最大化间隔;
- C ∑ i = 1 n max ( 0 , 1 − y i f ( x i ) ) C \sum_{i=1}^n \max(0, 1 - y_i f(x_i)) C∑i=1nmax(0,1−yif(xi)):合页损失函数,惩罚分类错误。
5. 对偶问题的推导
为了方便求解,我们通常将 SVM 的原始问题转化为对偶问题。对偶问题的推导步骤如下:
构造拉格朗日函数
首先,我们构造拉格朗日函数 ,引入拉格朗日乘子 α i ≥ 0 \alpha_i \geq 0 αi≥0 来处理不等式约束 y i ( w T x i + b ) ≥ 1 − ξ i y_i (w^T x_i + b) \geq 1 - \xi_i yi(wTxi+b)≥1−ξi,并引入乘子 μ i ≥ 0 \mu_i \geq 0 μi≥0 来处理松弛变量的非负性约束 ξ i ≥ 0 \xi_i \geq 0 ξi≥0:
L ( w , b , ξ , α , μ ) = 1 2 ∥ w ∥ 2 + C ∑ i = 1 n ξ i − ∑ i = 1 n α i [ y i ( w T x i + b ) − 1 + ξ i ] − ∑ i = 1 n μ i ξ i L(w, b, \xi, \alpha, \mu) = \frac{1}{2} \|w\|^2 + C \sum_{i=1}^n \xi_i - \sum_{i=1}^n \alpha_i [y_i (w^T x_i + b) - 1 + \xi_i] - \sum_{i=1}^n \mu_i \xi_i L(w,b,ξ,α,μ)=21∥w∥2+Ci=1∑nξi−i=1∑nαi[yi(wTxi+b)−1+ξi]−i=1∑nμiξi
求偏导并消去变量
为了得到对偶问题,我们需要对拉格朗日函数求偏导,并消去原始变量 w w w、 b b b 和 ξ i \xi_i ξi。
-
对 w w w 求导:
∂ L ∂ w = w − ∑ i = 1 n α i y i x i = 0 \frac{\partial L}{\partial w} = w - \sum_{i=1}^n \alpha_i y_i x_i = 0 ∂w∂L=w−i=1∑nαiyixi=0得:
w = ∑ i = 1 n α i y i x i w = \sum_{i=1}^n \alpha_i y_i x_i w=i=1∑nαiyixi -
对 b b b 求导:
∂ L ∂ b = − ∑ i = 1 n α i y i = 0 \frac{\partial L}{\partial b} = -\sum_{i=1}^n \alpha_i y_i = 0 ∂b∂L=−i=1∑nαiyi=0得:
∑ i = 1 n α i y i = 0 \sum_{i=1}^n \alpha_i y_i = 0 i=1∑nαiyi=0 -
对 ξ i \xi_i ξi 求导:
∂ L ∂ ξ i = C − α i − μ i = 0 \frac{\partial L}{\partial \xi_i} = C - \alpha_i - \mu_i = 0 ∂ξi∂L=C−αi−μi=0得:
α i ≤ C \alpha_i \leq C αi≤C
得到对偶优化问题
将这些结果代入拉格朗日函数中,消去 w w w、 b b b 和 ξ i \xi_i ξi 后,对偶问题可以表示为:
max α ∑ i = 1 n α i − 1 2 ∑ i = 1 n ∑ j = 1 n α i α j y i y j x i T x j \max_{\alpha} \sum_{i=1}^n \alpha_i - \frac{1}{2} \sum_{i=1}^n \sum_{j=1}^n \alpha_i \alpha_j y_i y_j x_i^T x_j αmaxi=1∑nαi−21i=1∑nj=1∑nαiαjyiyjxiTxj
约束条件:
- 0 ≤ α i ≤ C 0 \leq \alpha_i \leq C 0≤αi≤C
- ∑ i = 1 n α i y i = 0 \sum_{i=1}^n \alpha_i y_i = 0 ∑i=1nαiyi=0
在对偶问题中,优化变量是 α i \alpha_i αi,并且拉格朗日乘子 α i \alpha_i αi 受到约束 0 ≤ α i ≤ C 0 \leq \alpha_i \leq C 0≤αi≤C,这与正则化参数 C C C 直接相关, C C C 控制了软间隔的宽松程度。
6. 优化后的决策函数
一旦我们通过求解对偶问题得到了拉格朗日乘子 α i \alpha_i αi,分类器的最终决策函数可以写成:
f ( x ) = ∑ i = 1 n α i y i x i T x + b f(x) = \sum_{i=1}^n \alpha_i y_i x_i^T x + b f(x)=i=1∑nαiyixiTx+b