带松弛变量的SVM

线性支持向量机的软间隔最大化模型

不完全线性可分

实际问题中,数据不一定完全线性可分。

带松弛变量的SVM

数据线性可分,但间隔小

带松弛变量的SVM
左图:少量样本被错分但间隔大
右图:样本被完全分对,但间隔小

样本完全线性可分时: y i ( w T x i + b ) ≥ 1 y_i ( \mathbf{w}^T \mathbf{x}_i + b) \ge 1 yi(wTxi+b)1

实际问题中,数据未必完全线性可分,因此有了软间隔(soft margin)的概念,它允许样本分错,即允许样本不满足约束,落实到约束条件,引入松弛变量(slack variables) ξ i ≥ 0 \xi_i \ge 0 ξi0,使得
y i ( w T x i + b ) ≥ 1 − ξ i y_i ( \mathbf{w}^T \mathbf{x}_i + b ) \ge 1 - \xi_i yi(wTxi+b)1ξi
当然我们不希望约束放得太松,因此会要求 ξ i \xi_i ξi尽可能低,反映到优化问题本身,就变成下面的数学形式:
min ⁡ w , b , C 1 2 ∣ ∣ w ∣ ∣ 2 2 + C ∑ i = 1 N ξ i s . t . y i ( w T x i + b ) ≥ 1 − ξ i , i = 1 , 2 , ⋯   , N ξ i ≥ 0 , i = 1 , 2 , ⋯   , N \begin{aligned} &\min_{\mathbf{w}, b, C} \frac{1}{2}||\mathbf{w}||_2^2 + C\sum_{i=1}^N \xi_i \\ s.t. \quad y_i( \mathbf{w}^T& \mathbf{x}_i + b ) \ge 1-\xi_i, \quad i = 1,2,\cdots,N \\ &\xi_i \ge 0, \quad i = 1,2,\cdots,N \end{aligned} s.t.yi(wTw,b,Cmin21w22+Ci=1Nξixi+b)1ξi,i=1,2,,Nξi0,i=1,2,,N
参数 C > 0 C \gt 0 C>0是惩罚项系数,它控制间隔和松弛变量惩罚项之间的平衡, C C C越大,对误分类的惩罚越大,反之,则误分类的惩罚越小。实际应用中,参数 C C C需要调参确定。

现在的优化目标变为:间隔尽可能大的同时样本被误分类的程度尽可能小。

带松弛变量的SVM

软间隔最大化目标函数的优化

和硬间隔线性可分SVM的优化方式类似,先用拉格朗日乘子法,将目标函数变成:
L ( w , b , ξ , α , μ ) = 1 2 ∣ ∣ w ∣ ∣ 2 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(\mathbf{w}, b, \boldsymbol{\xi}, \boldsymbol{\alpha}, \boldsymbol{\mu}) = \frac{1}{2}||\mathbf{w}||_2^2 + C\sum_{i=1}^N \xi_i - \sum_{i=1}^N \alpha_i[ y_i(\mathbf{w}^T\mathbf{x}_i+b) - 1+ \xi_i ] - \sum_{i=1}^N \mu_i \xi_i L(w,b,ξ,α,μ)=21w22+Ci=1Nξii=1Nαi[yi(wTxi+b)1+ξi]i=1Nμiξi
使优化问题变为
min ⁡ w , b , ξ max ⁡ α , μ L ( w , b , ξ , α , μ ) s . t . ξ i ≥ 0 , i = 1 , 2 , ⋯   , N α i ≥ 0 , i = 1 , 2 , ⋯   , N μ i ≥ 0 , i = 1 , 2 , ⋯   , N \begin{aligned} &\min_{\mathbf{w}, b, \boldsymbol{\xi}} \max_{\boldsymbol{\alpha}, \boldsymbol{\mu}} L(\mathbf{w}, b, \boldsymbol{\xi}, \boldsymbol{\alpha}, \boldsymbol{\mu}) \\ s.t. \quad &\xi_i \ge 0, \quad i=1,2,\cdots,N \\ &\alpha_i \ge 0, \quad i=1,2,\cdots,N \\ &\mu_i \ge 0, \quad i=1,2,\cdots,N \end{aligned} s.t.w,b,ξminα,μmaxL(w,b,ξ,α,μ)ξi0,i=1,2,,Nαi0,i=1,2,,Nμi0,i=1,2,,N
优化问题满足KKT条件,可以等价为对偶问题
max ⁡ α , μ min ⁡ w , b , ξ L ( w , b , ξ , α , μ ) s . t . ξ i ≥ 0 , i = 1 , 2 , ⋯   , N α i ≥ 0 , i = 1 , 2 , ⋯   , N μ i ≥ 0 , i = 1 , 2 , ⋯   , N \begin{aligned} &\max_{\boldsymbol{\alpha}, \boldsymbol{\mu}} \min_{\mathbf{w}, b, \boldsymbol{\xi}} L(\mathbf{w}, b, \boldsymbol{\xi}, \boldsymbol{\alpha}, \boldsymbol{\mu}) \\ s.t. \quad& \xi_i \ge 0, \quad i=1,2,\cdots,N \\ &\alpha_i \ge 0, \quad i=1,2,\cdots,N \\ &\mu_i \ge 0, \quad i=1,2,\cdots,N \end{aligned} s.t.α,μmaxw,b,ξminL(w,b,ξ,α,μ)ξi0,i=1,2,,Nαi0,i=1,2,,Nμi0,i=1,2,,N
先求目标函数的极小化问题, L ( w , b , ξ , α , μ ) L(\mathbf{w}, b, \boldsymbol{\xi}, \boldsymbol{\alpha}, \boldsymbol{\mu}) L(w,b,ξ,α,μ)对参数求偏导得:

{ ∂ L ∂ w = 0 ⇒ w = ∑ i = 1 N α i y i x i ∂ L ∂ b = 0 ⇒ ∑ i = 1 N α i y i = 0 ∂ L ∂ ξ i = 0 ⇒ C − α i − μ i = 0 \left\{ \begin{aligned} &\frac{\partial L}{\partial \mathbf{w}} = 0 \Rightarrow \mathbf{w} = \sum_{i=1}^N\alpha_i y_i \mathbf{x}_i \\ &\frac{\partial L}{\partial b} = 0 \Rightarrow \sum_{i=1}^N \alpha_i y_i = 0 \\ &\frac{\partial L}{\partial \xi_i} = 0 \Rightarrow C - \alpha_i - \mu_i = 0 \end{aligned} \right. wL=0w=i=1NαiyixibL=0i=1Nαiyi=0ξiL=0Cαiμi=0

ψ ( α , μ ) = min ⁡ w , b , ξ L ( w , b , ξ , α , μ ) \psi(\boldsymbol{\alpha}, \boldsymbol{\mu}) = \min_{\mathbf{w}, b, \boldsymbol{\xi}} L(\mathbf{w}, b, \boldsymbol{\xi}, \boldsymbol{\alpha}, \boldsymbol{\mu}) ψ(α,μ)=w,b,ξminL(w,b,ξ,α,μ)
把以上偏导结果代回 L ( w , b , ξ , α , μ ) L(\mathbf{w}, b, \boldsymbol{\xi}, \boldsymbol{\alpha}, \boldsymbol{\mu}) L(w,b,ξ,α,μ),有
ψ ( α , μ ) = 1 2 ∣ ∣ w ∣ ∣ 2 2 + C ∑ i = 1 N ξ i − ∑ i = 1 N α i [ y i ( w T x i + b ) − 1 + ξ i ] − ∑ i = 1 N μ i ξ i = 1 2 ∣ ∣ w ∣ ∣ 2 2 + ∑ i = 1 N C ξ i − ∑ i = 1 N α i [ y i ( w T x i + b ) − 1 + ξ i ] − ∑ i = 1 N μ i ξ i = 1 2 ∣ ∣ w ∣ ∣ 2 2 + ∑ i = 1 N ( α i + μ i ) ξ i − ∑ i = 1 N α i [ y i ( w T x i + b ) − 1 + ξ i ] − ∑ i = 1 N μ i ξ i = 1 2 ∣ ∣ w ∣ ∣ 2 2 − ∑ i = 1 N α i [ y i ( w T x i + b ) − 1 + ξ i ] + ∑ i = 1 N α i ξ i = 1 2 ∣ ∣ w ∣ ∣ 2 2 − ∑ i = 1 N α i [ y i ( w T x i + b ) − 1 ] = 1 2 w T w − ∑ i = 1 N α i y i w T x i − ∑ i = 1 N α i y i b + ∑ i = 1 N α i = 1 2 w T ∑ i = 1 N α i y i x i − w T ∑ i = 1 N α i y i x i − b ∑ i = 1 N α i y i + ∑ i = 1 N α i = − 1 2 w T ∑ i = 1 N α i y i x i + ∑ i = 1 N α i = − 1 2 ( ∑ j = 1 N α j y j x j ) T ∑ i = 1 N α i y i x i + ∑ i = 1 N α i = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x j T x i = ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j \begin{aligned} \psi(\boldsymbol{\alpha}, \boldsymbol{\mu}) = & \frac{1}{2} ||\mathbf{w}||_2^2 + C \sum_{i=1}^N \xi_i - \sum_{i=1}^N \alpha_i [ y_i (\mathbf{w}^T\mathbf{x}_i+b) - 1+ \xi_i ] - \sum_{i=1}^N \mu_i \xi_i \\ =& \frac{1}{2} ||\mathbf{w}||_2^2 + \sum_{i=1}^N C \xi_i - \sum_{i=1}^N \alpha_i[ y_i (\mathbf{w}^T \mathbf{x}_i+b) - 1 + \xi_i ] - \sum_{i=1}^N \mu_i \xi_i \\ =& \frac{1}{2} ||\mathbf{w} ||_2^2 + \sum_{i=1}^N (\alpha_i + \mu_i) \xi_i - \sum_{i=1}^N \alpha_i [ y_i(\mathbf{w}^T\mathbf{x}_i+b) - 1+ \xi_i ] - \sum_{i=1}^N \mu_i \xi_i \\ =& \frac{1}{2} ||\mathbf{w} ||_2^2 - \sum_{i=1}^N \alpha_i[ y_i (\mathbf{w}^T \mathbf{x}_i+b) - 1+ \xi_i ] + \sum_{i=1}^N \alpha_i \xi_i \\ =& \frac{1}{2} ||\mathbf{w} ||_2^2 - \sum_{i=1}^N \alpha_i[ y_i (\mathbf{w}^T \mathbf{x}_i+b) - 1] \\ =& \frac{1}{2} \mathbf{w}^T \mathbf{w} - \sum_{i=1}^N \alpha_i y_i \mathbf{w}^T \mathbf{x}_i - \sum_{i=1}^N \alpha_i y_i b + \sum_{i=1}^N \alpha_i \\ =& \frac{1}{2} \mathbf{w}^T \sum_{i=1}^N \alpha_i y_i \mathbf{x}_i - \mathbf{w}^T \sum_{i=1}^N \alpha_i y_i \mathbf{x}_i - b \sum_{i=1}^N \alpha_i y_i + \sum_{i=1}^N \alpha_i \\ =& -\frac{1}{2} \mathbf{w}^T \sum_{i=1}^N \alpha_i y_i \mathbf{x}_i + \sum_{i=1}^N \alpha_i \\ =& -\frac{1}{2} (\sum_{j=1}^N \alpha_j y_j \mathbf{x}_j)^T \sum_{i=1}^N \alpha_i y_i \mathbf{x}_i + \sum_{i=1}^N \alpha_i \\ =& \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 \mathbf{x}_j^T \mathbf{x}_i \\ =& \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 \mathbf{x}_i^T \mathbf{x}_j \\ \end{aligned} ψ(α,μ)===========21w22+Ci=1Nξii=1Nαi[yi(wTxi+b)1+ξi]i=1Nμiξi21w22+i=1NCξii=1Nαi[yi(wTxi+b)1+ξi]i=1Nμiξi21w22+i=1N(αi+μi)ξii=1Nαi[yi(wTxi+b)1+ξi]i=1Nμiξi21w22i=1Nαi[yi(wTxi+b)1+ξi]+i=1Nαiξi21w22i=1Nαi[yi(wTxi+b)1]21wTwi=1NαiyiwTxii=1Nαiyib+i=1Nαi21wTi=1NαiyixiwTi=1Nαiyixibi=1Nαiyi+i=1Nαi21wTi=1Nαiyixi+i=1Nαi21(j=1Nαjyjxj)Ti=1Nαiyixi+i=1Nαii=1Nαi21i=1Nj=1NαiαjyiyjxjTxii=1Nαi21i=1Nj=1NαiαjyiyjxiTxj
目标函数和硬间隔线性可分SVM的完全一样,参数也只剩下 α \boldsymbol{\alpha} α

目标函数已经消去参数 ξ \boldsymbol{\xi} ξ,所以对应的约束条件 ξ i ≥ 0 \xi_i \ge 0 ξi0可以去掉。

现在优化问题的数学形式变成
max ⁡ α , μ ∑ i = 1 N α i − 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j s . t . ∑ i = 1 N α i y i = 0 C − α i − μ i = 0 , i = 1 , 2 , ⋯   , N α i ≥ 0 , i = 1 , 2 , ⋯   , N μ i ≥ 0 , i = 1 , 2 , ⋯   , N \begin{aligned} \max_{\boldsymbol{\alpha}, \boldsymbol{\mu}} \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 \mathbf{x}_i^T \mathbf{x}_j \\ s.t. \quad\quad\quad\quad\quad \sum_{i=1}^N \alpha_i &y_i = 0 \\ C - \alpha_i - \mu_i = 0&, \quad i=1, 2,\cdots,N \\ \alpha_i \ge 0&, \quad i=1, 2,\cdots,N \\ \mu_i \ge 0&, \quad i=1, 2,\cdots,N \end{aligned} α,μmaxi=1Nαi21s.t.i=1NαiCαiμi=0αi0μi0i=1Nj=1NαiαjyiyjxiTxjyi=0,i=1,2,,N,i=1,2,,N,i=1,2,,N
对于约束条件
C − α i − μ i = 0 , i = 1 , 2 , ⋯   , N α i ≥ 0 , i = 1 , 2 , ⋯   , N μ i ≥ 0 , i = 1 , 2 , ⋯   , N \begin{aligned} C - \alpha_i - \mu_i = 0, \quad i=1, 2,\cdots,N \\ \alpha_i \ge 0, \quad i=1, 2,\cdots,N \\ \mu_i \ge 0, \quad i=1, 2,\cdots,N \end{aligned} Cαiμi=0,i=1,2,,Nαi0,i=1,2,,Nμi0,i=1,2,,N
为了简化,去掉 μ i \mu_i μi,只剩下 0 ≤ α i ≤ C 0 \le \alpha_i \le C 0αiC

目标函数已经不含参数 μ \boldsymbol{\mu} μ,与其有关的约束条件也可以消除的话,整个优化问题就只剩下参数 α \boldsymbol{\alpha} α,这样优化问题的求解就简便多了。

目标函数变号,变成求最小值,最终优化问题的数学形式如下:
min ⁡ α 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j − ∑ i = 1 N α i s . t . ∑ i = 1 N α i y i = 0 0 ≤ α i ≤ C , i = 1 , 2 , ⋯   , N \begin{aligned} \min_{\boldsymbol{\alpha}} \frac{1}{2} \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j& y_i y_j \mathbf{x}_i^T \mathbf{x}_j - \sum_{i=1}^N \alpha_i \\ s.t. \quad\quad\quad\quad\quad \sum_{i=1}^N \alpha_i &y_i = 0 \\ 0 \le \alpha_i \le C, \quad& i=1, 2,\cdots,N \end{aligned} αmin21i=1Nj=1Nαiαjs.t.i=1Nαi0αiC,yiyjxiTxji=1Nαiyi=0i=1,2,,N
与硬间隔线性可分SVM相比,软间隔线性可分SVM的优化问题数学形式仅仅多了一个约束条件 0 ≤ α i ≤ C 0 \le \alpha_i \le C 0αiC,依然可以通过SMO算法来求解最优解 α ∗ \boldsymbol{\alpha}^* α,从而求得
w ∗ = ∑ i = 1 N α i ∗ y i x i \mathbf{w}^* = \sum_{i=1}^N\alpha_i^* y_i \mathbf{x}_i w=i=1Nαiyixi
对于参数 b b b,能像硬间隔SVM模型那样取任一支持向量 ( x k , y k ) (\mathbf{x}_k,y_k) (xk,yk),代入 y k ( w T x k + b ) = 1 y_k (\mathbf{w}^T \mathbf{x}_k + b) = 1 yk(wTxk+b)=1来求解吗?

不行,因为软间隔SVM模型的支持向量并不都在最大间隔边界 y k ( w T x k + b ) = 1 y_k (\mathbf{w}^T \mathbf{x}_k + b) = 1 yk(wTxk+b)=1上(原因会在下一节讲),所以需要找到最大间隔边界上的任一支持向量 ( x k , y k ) (\mathbf{x}_k, y_k) (xk,yk),代入 w ∗ \mathbf{w}^* w得到

b ∗ = y k − w ∗ T x k b^* = y_k - {\mathbf{w}^*}^T \mathbf{x}_k b=ykwTxk

软间隔最大化模型的支持向量

由于引入了松弛变量 ξ i \xi_i ξi,软间隔最大化时的支持向量要较为复杂。

根据软间隔SVM模型的部分KKT条件:
α i [ 1 − ξ i − y i ( w T x i + b ) ] = 0 , i = 1 , 2 , ⋯   , N μ i ξ i = 0 , i = 1 , 2 , ⋯   , N y i ( w T x i + b ) ≥ 1 − ξ i , i = 1 , 2 , ⋯   , N ξ i ≥ 0 , i = 1 , 2 , ⋯   , N α i ≥ 0 , i = 1 , 2 , ⋯   , N μ i ≥ 0 , i = 1 , 2 , ⋯   , N \begin{aligned} \alpha_i [ 1 - \xi_i - y_i(\mathbf{w}^T \mathbf{x}_i + b) ] = 0,&\quad i=1,2,\cdots,N \\ \mu_i \xi_i = 0,&\quad i=1,2,\cdots,N \\ y_i(\mathbf{w}^T \mathbf{x}_i + b) \ge 1 - \xi_i,&\quad i=1,2,\cdots,N \\ \xi_i \ge 0,&\quad i=1,2,\cdots,N \\ \alpha_i \ge 0,&\quad i=1,2,\cdots,N \\ \mu_i \ge 0,&\quad i=1,2,\cdots,N \end{aligned} αi[1ξiyi(wTxi+b)]=0,μiξi=0,yi(wTxi+b)1ξi,ξi0,αi0,μi0,i=1,2,,Ni=1,2,,Ni=1,2,,Ni=1,2,,Ni=1,2,,Ni=1,2,,N
以及约束条件
C − α i − μ i = 0 0 ≤ α i ≤ C C - \alpha_i - \mu_i = 0 \\ 0 \le \alpha_i \le C Cαiμi=00αiC

  • 如果 α i = 0 \alpha_i=0 αi=0,有 μ i = C ⇒ ξ i = 0 ⇒ y i ( w T x i + b ) ≥ 1 \mu_i = C \Rightarrow \xi_i = 0 \Rightarrow y_i(\mathbf{w}^T \mathbf{x}_i + b) \ge 1 μi=Cξi=0yi(wTxi+b)1,样本点 ( x i , y i ) (\mathbf{x}_i,y_i) (xi,yi)在间隔边界上,或者在最大间隔外且被正确分类,它不是支持向量

  • 如果 α i ≠ 0 \alpha_i \ne 0 αi=0,那么 y i ( w T x i + b ) = 1 − ξ i y_i (\mathbf{w}^T \mathbf{x}_i + b) = 1 - \xi_i yi(wTxi+b)=1ξi,样本点 ( x i , y i ) (\mathbf{x}_i,y_i) (xi,yi)支持向量

    可以进一步这些支持向量分类讨论:

    • 如果 0 < α i < C 0 \lt \alpha_i \lt C 0<αi<C,根据 C − α i − μ i = 0 C - \alpha_i - \mu_i = 0 Cαiμi=0可知 μ i > 0 \mu_i \gt 0 μi>0,由 μ i ξ i = 0 \mu_i \xi_i = 0 μiξi=0得出 ξ i = 0 \xi_i = 0 ξi=0,因此 y i ( w T x i + b ) = 1 y_i (\mathbf{w}^T \mathbf{x}_i + b) = 1 yi(wTxi+b)=1,说明样本点 ( x i , y i ) (\mathbf{x}_i,y_i) (xi,yi)恰好在最大间隔边界上
    • 如果 α i = C \alpha_i = C αi=C,根据 C − α i − μ i = 0 C - \alpha_i - \mu_i = 0 Cαiμi=0可知 μ i = 0 \mu_i = 0 μi=0,由 μ i ξ i = 0 \mu_i \xi_i = 0 μiξi=0得出 ξ i \xi_i ξi未必为0,即 ξ i ≥ 0 \xi_i \ge 0 ξi0
      • 0 ≤ ξ i < 1 0 \le \xi_i \lt 1 0ξi<1,那么 0 < y i ( w T x i + b ) = 1 − ξ i ≤ 1 0 \lt y_i (\mathbf{w}^T \mathbf{x}_i + b) = 1 - \xi_i \le 1 0<yi(wTxi+b)=1ξi1,说明样本点 ( x i , y i ) (\mathbf{x}_i,y_i) (xi,yi)落在最大间隔边界内部且仍被正确分类
      • ξ i = 1 \xi_i = 1 ξi=1,那么 y i ( w T x i + b ) = 0 y_i (\mathbf{w}^T \mathbf{x}_i + b) = 0 yi(wTxi+b)=0,说明样本点 ( x i , y i ) (\mathbf{x}_i,y_i) (xi,yi)恰好落在分离超平面上,无法被正确分类;
      • ξ i > 1 \xi_i \gt 1 ξi>1,那么 y i ( w T x i + b ) = 1 − ξ i < 0 y_i (\mathbf{w}^T \mathbf{x}_i + b) = 1 - \xi_i \lt 0 yi(wTxi+b)=1ξi<0,说明样本点 ( x i , y i ) (\mathbf{x}_i,y_i) (xi,yi)落在超平面误分类的一侧

带松弛变量的SVM

软间隔最大化的线性SVM的算法过程

输入:训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N ) } T=\{(\mathbf{x}_1,y_1), (\mathbf{x}_2,y_2), \cdots, (\mathbf{x}_N,y_N)\} T={(x1,y1),(x2,y2),,(xN,yN)}

输出:分离超平面和分类决策函数。

算法步骤:

  1. 选择一个惩罚系数 C > 0 C \gt 0 C>0,构造约束优化问题
    min ⁡ α 1 2 ∑ i = 1 N ∑ j = 1 N α i α j y i y j x i T x j − ∑ i = 1 N α i s . t . ∑ i = 1 N α i y i = 0 , i = 1 , 2 , ⋯   , N 0 ≤ α i ≤ C , i = 1 , 2 , ⋯   , N \begin{aligned} \min_{\boldsymbol{\alpha}} \frac{1}{2} \sum_{i=1}^N \sum_{j=1}^N \alpha_i \alpha_j& y_i y_j \mathbf{x}_i^T \mathbf{x}_j - \sum_{i=1}^N \alpha_i \\ s.t. \quad \sum_{i=1}^N \alpha_i y_i = 0,& \quad i=1, 2,\cdots,N \\ 0 \le \alpha_i \le C,& \quad i=1, 2,\cdots,N \\ \end{aligned} αmin21i=1Nj=1Nαiαjs.t.i=1Nαiyi=0,0αiC,yiyjxiTxji=1Nαii=1,2,,Ni=1,2,,N

  2. 用SMO算法求出优化函数最小时的参数 α ∗ \boldsymbol{\alpha}^* α

  3. 计算 w ∗ = ∑ i = 1 N α i ∗ y i x i \mathbf{w}^* = \sum_{i=1}^N\alpha_i^* y_i \mathbf{x}_i w=i=1Nαiyixi

  4. 寻找一个满足 0 < α k ∗ < C 0 \lt \alpha_k^* \lt C 0<αk<C的样本点 ( x k , y k ) (\mathbf{x}_k,y_k) (xk,yk),计算 b ∗ = y k − w ∗ T x k b^* = y_k - {\mathbf{w}^*}^T \mathbf{x}_k b=ykwTxk

  5. 求得分离超平面 w ∗ T x + b ∗ = 0 {\mathbf{w}^*}^T \mathbf{x} + b^*=0 wTx+b=0和分类决策函数 f ( x ) = sgn ( w ∗ T x + b ∗ ) f(x) = \text{sgn}({\mathbf{w}^*}^T \mathbf{x} + b^*) f(x)=sgn(wTx+b)

软间隔最大化模型的一种解释:合页损失+L2正则

合页损失(hinge loss)

合页损失函数表达式
L h i n g e ( x ) = { 1 − x , x < 1 0 , x ≥ 1 L_{hinge}(x)= \left\{ \begin{aligned} 1 - x, \quad x \lt 1 \\ 0, \quad x \ge 1 \end{aligned} \right. Lhinge(x)={1x,x<10,x1

带松弛变量的SVM

软间隔最大化模型的一种解释

软间隔最大化模型的优化函数: L ( w , b ) = 1 2 ∣ ∣ w ∣ ∣ 2 2 + C ∑ i = 1 N ξ i L(\mathbf{w}, b) = \frac{1}{2}||\mathbf{w}||_2^2 + C\sum_{i=1}^N \xi_i L(w,b)=21w22+Ci=1Nξi

根据之前对支持向量的讨论,有

  • 对于非支持向量

    ξ i = 0 \xi_i = 0 ξi=0 y i ( w T x i + b ) ≥ 1 y_i(\mathbf{w}^T\mathbf{x}_i + b) \ge 1 yi(wTxi+b)1

  • 对于支持向量

    ξ i ≥ 0 \xi_i \ge 0 ξi0 y i ( w T x i + b ) = 1 − ξ i ≤ 1 y_i(\mathbf{w}^T\mathbf{x}_i + b) = 1-\xi_i \le 1 yi(wTxi+b)=1ξi1,有 ξ i = 1 − y i ( w T x i + b ) \xi_i = 1 - y_i(\mathbf{w}^T\mathbf{x}_i + b) ξi=1yi(wTxi+b)

ξ i \xi_i ξi能用合页损失表示:
ξ i = L h i n g e ( y i ( w T x i + b ) ) = { 1 − y i ( w T x i + b ) , y i ( w T x i + b ) < 1 0 , y i ( w T x i + b ) ≥ 1 \xi_i = L_{hinge}(y_i (\mathbf{w}^T \mathbf{x}_i + b))= \left\{ \begin{aligned} 1 - y_i(\mathbf{w}^T\mathbf{x}_i + b), \quad y_i(\mathbf{w}^T\mathbf{x}_i + b) \lt 1 \\ 0, \quad y_i(\mathbf{w}^T\mathbf{x}_i + b) \ge 1 \end{aligned} \right. ξi=Lhinge(yi(wTxi+b))={1yi(wTxi+b),yi(wTxi+b)<10,yi(wTxi+b)1

这个合页损失要传达的意思是:如果样本点被正确分类,且在间隔区域之外,损失为0;否则损失是 1 − y i ( w T x i + b ) 1 - y_i(\mathbf{w}^T\mathbf{x}_i + b) 1yi(wTxi+b)

软间隔最大化模型的优化函数可以写成
L ( w , b ) = C ∑ i = 1 N L h i n g e ( y i ( w T x i + b ) ) + 1 2 ∣ ∣ w ∣ ∣ 2 2 \begin{aligned} L(\mathbf{w}, b) &= C \sum_{i=1}^N L_{hinge}(y_i (\mathbf{w}^T\mathbf{x}_i + b)) + \frac{1}{2}||\mathbf{w}||_2^2 \end{aligned} L(w,b)=Ci=1NLhinge(yi(wTxi+b))+21w22
对比一般的机器学习模型的目标函数形式:
J ( θ ) = ∑ i = 1 N L ( y i , f ( x i ; θ ) ) + λ R ( θ ) J(\boldsymbol{\theta})=\sum_{i=1}^N L(y_i,f(\mathbf{x}_i;\boldsymbol{\theta})) + \lambda R(\boldsymbol{\theta}) J(θ)=i=1NL(yi,f(xi;θ))+λR(θ)

容易发现他们的形式非常相似。

所以,软间隔最大化模型的SVM可以解释为合页损失+L2正则的机器学习模型。