当前位置: 首页 > news >正文

机器学习笔记之支持向量机(二)引出对偶问题

机器学习笔记之支持向量机——引出对偶问题

  • 引言
    • 回顾:最大间隔分类器
    • 问题的转化过程
      • 凸二次规划问题求解及其弊端
      • 拉格朗日乘数法求解——原问题与无约束问题
      • 小插曲:关于原问题与无约束问题等价的解释
      • 无约束问题与对偶问题关联关系
      • 模型求解

引言

上一节介绍了支持向量机模型分类的朴素思想——最大间隔分类器,本节将利用拉格朗日乘数法进行分析

回顾:最大间隔分类器

最大间隔分类器选择最优模型 的朴素思想是:从能够将样本点分类正确的直线中找出这样一条直线:该直线与 N N N个样本点对应的 N N N个距离中找出长度最小的距离,而基于该直线找出的最小距离比其他直线的都要大,那么该直线即为所求。

使用数学语言进行表达:
max ⁡ W , b min ⁡ x ( i ) ∈ X 1 ∣ ∣ W ∣ ∣ ∣ W T x ( i ) + b ∣ = max ⁡ W , b 1 ∣ ∣ W ∣ ∣ min ⁡ x ( i ) ∈ X y ( i ) ( W T x ( i ) + b ) \mathop{\max}\limits_{\mathcal W,b} \mathop{\min}\limits_{x^{(i)} \in \mathcal X} \frac{1}{||\mathcal W||}|\mathcal W^{T}x^{(i)} + b| = \mathop{\max}\limits_{\mathcal W,b} \frac{1}{||\mathcal W||} \mathop{\min}\limits_{x^{(i)} \in \mathcal X} y^{(i)}\left(\mathcal W^{T}x^{(i)} + b \right) W,bmaxx(i)Xmin∣∣W∣∣1WTx(i)+b=W,bmax∣∣W∣∣1x(i)Xminy(i)(WTx(i)+b)
其中 X \mathcal X X表示样本集合 { x ( 1 ) , x ( 2 ) , ⋯   , x ( N ) } \{x^{(1)},x^{(2)},\cdots,x^{(N)}\} {x(1),x(2),,x(N)},约束条件即直线能够将所有样本点分类正确
y ( i ) ( W T x ( i ) + b ) > 0 ∀ ( x ( i ) , y ( i ) ) ∈ D a t a y^{(i)}(\mathcal W^{T}x^{(i)} + b) > 0 \quad \forall (x^{(i)},y^{(i)}) \in Data y(i)(WTx(i)+b)>0(x(i),y(i))Data
至此,最大间隔分类器朴素思想表示如下
{ max ⁡ W , b 1 ∣ ∣ W ∣ ∣ min ⁡ x ( i ) ∈ X y ( i ) ( W T x ( i ) + b ) s . t . y ( i ) ( W T x ( i ) + b ) > 0 \begin{cases} \mathop{\max}\limits_{\mathcal W,b} \frac{1}{||\mathcal W||} \mathop{\min}\limits_{x^{(i)} \in \mathcal X} y^{(i)}\left(\mathcal W^{T}x^{(i)} + b \right) \\ s.t. \quad y^{(i)}(\mathcal W^{T}x^{(i)} + b) > 0 \end{cases} W,bmax∣∣W∣∣1x(i)Xminy(i)(WTx(i)+b)s.t.y(i)(WTx(i)+b)>0
经过对函数间隔(Function Margin)的约束,化简结果为:
函数间隔的相关介绍同见上一节
{ min ⁡ W , b 1 2 W T W s . t . y ( i ) ( W T x ( i ) + b ) ≥ 1 ∀ ( x ( i ) , y ( i ) ) ∈ D a t a \begin{cases} \mathop{\min}\limits_{\mathcal W,b} \frac{1}{2} \mathcal W^{T}\mathcal W \\ s.t. \quad y^{(i)}(\mathcal W^{T}x^{(i)} + b) \geq 1 \quad \forall (x^{(i)},y^{(i)}) \in Data \end{cases} W,bmin21WTWs.t.y(i)(WTx(i)+b)1(x(i),y(i))Data

问题的转化过程

凸二次规划问题求解及其弊端

可以将上式理解成包含 N N N个约束条件的凸优化问题( 1 2 W T W \frac{1}{2}\mathcal W^{T}\mathcal W 21WTW是一个凸函数,每一个 ( x ( i ) , y ( i ) ) (x^{(i)},y^{(i)}) (x(i),y(i))均对应一个约束条件)。
约束条件移项,将其写成如下形式:
{ min ⁡ W , b 1 2 W T W s . t . 1 − y ( i ) ( W T x ( i ) + b ) ≤ 0 ∀ ( x ( i ) , y ( i ) ) ∈ D a t a \begin{cases}\mathop{\min}\limits_{\mathcal W,b} \frac{1}{2} \mathcal W^{T}\mathcal W \\ s.t. \quad 1 - y^{(i)}(\mathcal W^{T}x^{(i)} + b) \leq 0 \quad \forall (x^{(i)},y^{(i)}) \in Data \end{cases} W,bmin21WTWs.t.1y(i)(WTx(i)+b)0(x(i),y(i))Data

观察,目标函数 1 2 W T W \frac{1}{2}\mathcal W^{T}\mathcal W 21WTW是一个二次型函数。即:
f ( W ) = 1 2 W T W = 1 2 ( w 1 , w 2 , ⋯   , w p ) ( w 1 w 2 ⋮ w p ) = 1 2 ( w 1 2 + w 2 2 + ⋯ + w p 2 ) f(\mathcal W) =\frac{1}{2}\mathcal W^{T}\mathcal W =\frac{1}{2}(w_1,w_2,\cdots,w_p)\begin{pmatrix}w_1 \\ w_2 \\ \vdots \\ w_p\end{pmatrix} = \frac{1}{2}(w_1^2 + w_2^2 + \cdots +w_p^2) f(W)=21WTW=21(w1,w2,,wp) w1w2wp =21(w12+w22++wp2)
并且 N N N个约束均为不等式约束,且每个不等式约束均为仿射函数(affine function),即 最高次数为1的多项式函数
w i ( i = 1 , 2 , ⋯ p ) , b w_i(i=1,2,\cdots p),b wi(i=1,2,p),b均是一次项。
g ( W , b ) = 1 − y ( i ) ( W T x ( i ) + b ) = 1 − y ( i ) [ ( w 1 , w 2 , ⋯   , w p ) ( x 1 ( i ) x 2 ( i ) ⋮ x p ( i ) ) + b ] = 1 − y ( i ) ( w 1 ⋅ x 1 ( i ) + w 2 ⋅ x 2 ( i ) + ⋯ + w p ⋅ x p ( i ) + b ) \begin{aligned}g(\mathcal W,b) & = 1 - y^{(i)}(\mathcal W^{T}x^{(i)} + b) \\ & = 1 - y^{(i)}\left[(w_1,w_2,\cdots,w_p)\begin{pmatrix}x_1^{(i)} \\ x_2^{(i)} \\ \vdots \\ x_p^{(i)}\end{pmatrix} + b \right] \\ & = 1 - y^{(i)}(w_1\cdot x_1^{(i)} + w_2 \cdot x_2^{(i)} + \cdots +w_p \cdot x_p^{(i)} + b) \end{aligned} g(W,b)=1y(i)(WTx(i)+b)=1y(i) (w1,w2,,wp) x1(i)x2(i)xp(i) +b =1y(i)(w1x1(i)+w2x2(i)++wpxp(i)+b)

至此,该问题从凸优化问题转化为一个 凸二次规划问题(Convex Quadratic Programming)凸二次规划问题存在解,但是对凸二次规划问题求解存在较高约束:
理想状态下:

  • 样本空间(样本点 x ( i ) x^{(i)} x(i)的维度)或者特征空间( W \mathcal W W的维度) p p p不高
  • 样本空间中的样本数量 N N N不多

这种情况下对凸二次规划问题求解是方便的。但实际情况下,样本数量和特征空间维度都很高,甚至存在将样本点 x ( i ) x^{(i)} x(i)的维度通过特征转换将其映射到高维空间甚至是无限维空间。这种情况下,凸二次规划很难求解。本节将介绍通过求解对偶问题对原问题进行求解

拉格朗日乘数法求解——原问题与无约束问题

继续观察化简结果
{ min ⁡ W , b 1 2 W T W s . t . 1 − y ( i ) ( W T x ( i ) + b ) ≤ 0 ∀ ( x ( i ) , y ( i ) ) ∈ D a t a \begin{cases}\mathop{\min}\limits_{\mathcal W,b} \frac{1}{2} \mathcal W^{T}\mathcal W \\ s.t. \quad 1 - y^{(i)}(\mathcal W^{T}x^{(i)} + b) \leq 0 \quad \forall (x^{(i)},y^{(i)}) \in Data \end{cases} W,bmin21WTWs.t.1y(i)(WTx(i)+b)0(x(i),y(i))Data
该化简结果称为原问题(Primal Problem),使用拉格朗日乘数法引出它的无约束原问题
首先,列出原问题的拉格朗日函数 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)
由于‘原问题’中包含 N N N个约束条件,因此 λ \lambda λ中一共包含 N N N个分量:
λ = { λ ( 1 ) , λ ( 2 ) , ⋯   , λ ( N ) } L ( W , b , λ ) = 1 2 W T W + ∑ i = 1 N λ ( i ) [ 1 − y ( i ) ( W T x ( i ) + b ) ] \lambda = \{\lambda^{(1)},\lambda^{(2)},\cdots,\lambda^{(N)}\} \\ \mathcal L(\mathcal W,b,\lambda) = \frac{1}{2} \mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} \left[1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \right] λ={λ(1),λ(2),,λ(N)}L(W,b,λ)=21WTW+i=1Nλ(i)[1y(i)(WTx(i)+b)]
根据拉格朗日函数自身性质 λ ( i ) ( i = 1 , 2 , ⋯   , N ) ≥ 0 \lambda^{(i)}(i=1,2,\cdots,N)\geq 0 λ(i)(i=1,2,,N)0

至此,原问题通过拉格朗日函数转化为如下形式:
{ min ⁡ W , b max ⁡ λ L ( W , b , λ ) s . t . λ ( i ) ≥ 0 ( i = 1 , 2 , ⋯   , N ) \begin{cases}\mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) \\ s.t. \quad \lambda^{(i)} \geq 0 \quad (i=1,2,\cdots,N)\end{cases} W,bminλmaxL(W,b,λ)s.t.λ(i)0(i=1,2,,N)

观察上述式子,和原问题相比,原问题的约束条件拉格朗日乘数 λ \lambda λ并入到了目标函数中,新式子的约束条件中多出关于 λ \lambda λ的约束条件。称该式子为 无约束原问题
这里的无约束指‘带约束原问题’的约束条件消失了。对于求解模型参数 W , b \mathcal W,b W,b,原问题与无约束问题是等价的。

小插曲:关于原问题与无约束问题等价的解释

求解最优模型参数过程中,为什么 原问题和无约束原问题是等价的
观察拉格朗日函数 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)
L ( W , b , λ ) = 1 2 W T W + ∑ i = 1 N λ ( i ) [ 1 − y ( i ) ( W T x ( i ) + b ) ] \mathcal L(\mathcal W,b,\lambda) = \frac{1}{2} \mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} \left[1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \right] L(W,b,λ)=21WTW+i=1Nλ(i)[1y(i)(WTx(i)+b)]

1 − y ( i ) ( W T x ( i ) + b ) 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) 1y(i)(WTx(i)+b)具有什么意义?结合回顾中的介绍,它的实际意义如下:

  • 1 − y ( i ) ( W T x ( i ) + b ) ≤ 0 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \leq 0 1y(i)(WTx(i)+b)0,意味着直线 W T x + b = 0 \mathcal W^{T}x + b = 0 WTx+b=0具体样本 ( x ( i ) , y ( i ) ) (x^{(i)},y^{(i)}) (x(i),y(i))分类正确
  • 反之, 1 − y ( i ) ( W T x ( i ) + b ) > 0 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) > 0 1y(i)(WTx(i)+b)>0,意味着直线 W T x ( i ) + b = 0 \mathcal W^{T}x^{(i)} + b = 0 WTx(i)+b=0具体样本 ( x ( i ) , y ( i ) ) (x^{(i)},y^{(i)}) (x(i),y(i))分类错误

由于 在介绍最大间隔分类器朴素思想 时,就已经说明了前提条件:基于样本点分类正确的基础上

假如并没有提到这个条件,即当前直线存在样本点被分类错误。数学语言表达即:
∃ ( x ( i ) , y ( i ) ) ∈ D a t a → 1 − y ( i ) ( W T x ( i ) + b ) > 0 \exists (x^{(i)},y^{(i)}) \in Data \to 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) > 0 (x(i),y(i))Data1y(i)(WTx(i)+b)>0
上述两种情况分别带入拉格朗日函数 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)中进行分析:

  • 1 − y ( i ) ( W T x ( i ) + b ) > 0 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) > 0 1y(i)(WTx(i)+b)>0时,已知 λ ( i ) ≥ 0 \lambda^{(i)} \geq 0 λ(i)0恒成立,则 max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda} \mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)结果表示如下:
    由于 λ ( i ) \lambda^{(i)} λ(i) 1 − y ( i ) ( W T x ( i ) + b ) 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) 1y(i)(WTx(i)+b)同号,因此 ∑ i = 1 N λ ( i ) [ 1 − y ( i ) ( W T x ( i ) + b ) ] \sum_{i=1}^N \lambda^{(i)} \left[1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \right] i=1Nλ(i)[1y(i)(WTx(i)+b)]部分没有上界,即当 λ ( i ) \lambda^{(i)} λ(i)均取值 ∞ \infty 时, max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda} \mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)取得最大值 ∞ \infty ;
    max ⁡ λ L ( W , b , λ ) = 1 2 W T W + ∑ i = 1 N λ ( i ) [ 1 − y ( i ) ( W T x ( i ) + b ) ] = 1 2 W T W + ∑ i = 1 N ∞ = ∞ \begin{aligned}\mathop{\max}\limits_{\lambda} \mathcal L(\mathcal W,b,\lambda) & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} \left[1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \right] \\ & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \infty \\ & = \infty \end{aligned} λmaxL(W,b,λ)=21WTW+i=1Nλ(i)[1y(i)(WTx(i)+b)]=21WTW+i=1N=
  • 1 − y ( i ) ( W T x ( i ) + b ) ≤ 0 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \leq 0 1y(i)(WTx(i)+b)0时,同理,对应的 max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda} \mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)结果表示如下:
    由于 λ ( i ) \lambda^{(i)} λ(i) 1 − y ( i ) ( W T x ( i ) + b ) 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) 1y(i)(WTx(i)+b)异号,因此 ∑ i = 1 N λ ( i ) [ 1 − y ( i ) ( W T x ( i ) + b ) ] \sum_{i=1}^N \lambda^{(i)} \left[1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \right] i=1Nλ(i)[1y(i)(WTx(i)+b)]结果是’非正数‘,即存在上界0,当 λ ( i ) = 0 ( i = 1 , 2 , ⋯   , N ) \lambda^{(i)} = 0 (i=1,2,\cdots,N) λ(i)=0(i=1,2,,N)时, max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda} \mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)取得最大值 1 2 W T W \frac{1}{2}\mathcal W^{T}\mathcal W 21WTW
    max ⁡ λ L ( W , b , λ ) = 1 2 W T W + ∑ i = 1 N λ ( i ) [ 1 − y ( i ) ( W T x ( i ) + b ) ] = 1 2 W T W + ∑ i = 1 N 0 = 1 2 W T W \begin{aligned}\mathop{\max}\limits_{\lambda} \mathcal L(\mathcal W,b,\lambda) & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} \left[1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \right] \\ & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N 0 \\ & = \frac{1}{2}\mathcal W^{T}\mathcal W \end{aligned} λmaxL(W,b,λ)=21WTW+i=1Nλ(i)[1y(i)(WTx(i)+b)]=21WTW+i=1N0=21WTW
  • 综上,目标函数 min ⁡ W , b max ⁡ λ L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) W,bminλmaxL(W,b,λ)可以表示为如下形式:
    max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)结果由两部分组成: { ∞ , 1 2 W T W } \{\infty,\frac{1}{2}\mathcal W^{T}\mathcal W\} {,21WTW},对 ∞ \infty 取最小值没有意义;只能对 1 2 W T W \frac{1}{2}\mathcal W^{T}\mathcal W 21WTW取最小值
    min ⁡ W , b max ⁡ λ L ( W , b , λ ) = min ⁡ W , b { ∞ , 1 2 W T W } = min ⁡ W , b 1 2 W T W \mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) = \mathop{\min}\limits_{\mathcal W,b}\{\infty,\frac{1}{2}\mathcal W^{T}\mathcal W\}=\mathop{\min}\limits_{\mathcal W,b} \frac{1}{2}\mathcal W^{T}\mathcal W W,bminλmaxL(W,b,λ)=W,bmin{,21WTW}=W,bmin21WTW

最终结果发现原问题的目标函数完全相同。回顾整个推导过程,这意味着 λ ( i ) ≥ 0 ( i = 1 , 2 , ⋯   , N ) \lambda^{(i)} \geq 0(i=1,2,\cdots,N) λ(i)0(i=1,2,,N)条件满足的同时,还隐含地满足了另一个条件 1 − y ( i ) ( W T x ( i ) + b ) ≤ 0 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) \leq 0 1y(i)(WTx(i)+b)0

无约束问题与对偶问题关联关系

基于无约束问题,它的 对偶问题表示如下
{ max ⁡ λ min ⁡ W , b L ( W , b , λ ) s . t . λ ( i ) ≥ 0 ( i = 1 , 2 , ⋯   , N ) \begin{cases}\mathop{\max}\limits_{\lambda} \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) \\ s.t. \quad \lambda^{(i)} \geq 0 \quad (i=1,2,\cdots,N)\end{cases} λmaxW,bminL(W,b,λ)s.t.λ(i)0(i=1,2,,N)
从数学角度观察,无约束问题也是原问题,即“没有约束的原问题”,它和对偶问题之间存在对偶关系。从公式中表示即 min ⁡ , max ⁡ \min,\max min,max调换了位置,约束条件没有变化。

首先探究:无约束问题的目标函数与其对偶问题的目标函数之间的关系。即:
min ⁡ W , b max ⁡ λ L ( W , b , λ ) ⇔ ? max ⁡ λ min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda)\overset{\text{?}}{\Leftrightarrow}\mathop{\max}\limits_{\lambda} \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminλmaxL(W,b,λ)?λmaxW,bminL(W,b,λ)
如果没有其他限制条件,该问题是被数学证明了的,其结果为:对偶问题 ≤ \leq 原问题。即:
min ⁡ W , b max ⁡ λ L ( W , b , λ ) ≥ max ⁡ λ min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda)\geq \mathop{\max}\limits_{\lambda} \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminλmaxL(W,b,λ)λmaxW,bminL(W,b,λ)

具体证明如下:
首先观察公式两端的前半部分

  • 公式左端: max ⁡ λ L ( W , b , λ ) ≥ L ( W , b , λ ) \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) \geq \mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)L(W,b,λ)恒成立
    解释:从字面意义上解释 max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ),即:通过选择最优参数 λ \lambda λ,选择该参数的结果是:使 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)最大。那么它 必然大于等于任意一个 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)结果
  • 同理,公式右端: min ⁡ W , b L ( W , b , λ ) ≤ L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) \leq \mathcal L(\mathcal W,b,\lambda) W,bminL(W,b,λ)L(W,b,λ)恒成立。即: min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminL(W,b,λ)是关于 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)的最小值,那么它必然小于等于任意一个 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)结果

综上,我们可以得到如下关系
min ⁡ W , b L ( W , b , λ ) ≤ L ( W , b , λ ) ≤ max ⁡ λ L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) \leq \mathcal L(\mathcal W,b,\lambda) \leq \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) W,bminL(W,b,λ)L(W,b,λ)λmaxL(W,b,λ)
即:
min ⁡ W , b L ( W , b , λ ) ≤ max ⁡ λ L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) \leq \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) W,bminL(W,b,λ)λmaxL(W,b,λ)
此时 min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminL(W,b,λ)是关于 λ \lambda λ的函数
原因: W , b \mathcal W,b W,b已经被确定,对应结果是’使 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)最小’。因此,该式中仅包含 λ \lambda λ一个变量;
min ⁡ W , b L ( W , b , λ ) = A ( λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) = \mathcal A(\lambda) W,bminL(W,b,λ)=A(λ)
同理, max ⁡ λ L ( W , b , λ ) \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) λmaxL(W,b,λ)是关于 W , b \mathcal W,b W,b的函数
原因:与上面类似~
max ⁡ λ L ( W , b , λ ) = B ( W , b ) \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) = \mathcal B(\mathcal W,b) λmaxL(W,b,λ)=B(W,b)
则有:
A ( λ ) ≤ B ( W , b ) \mathcal A(\lambda)\leq \mathcal B(\mathcal W,b) A(λ)B(W,b)
那么:基于上述公式, A ( λ ) \mathcal A(\lambda) A(λ)必然小于等于 B ( W , b ) \mathcal B(\mathcal W,b) B(W,b)的最小值。即:
A ( λ ) ≤ min ⁡ W , b B ( W , b ) \mathcal A(\lambda) \leq \mathop{\min}\limits_{\mathcal W,b} \mathcal B(\mathcal W,b) A(λ)W,bminB(W,b)
同理,基于上述公式, A ( λ ) \mathcal A(\lambda) A(λ)中的最大值 max ⁡ λ A ( λ ) \mathop{\max}\limits_{\lambda} \mathcal A(\lambda) λmaxA(λ)也必然小于 B ( W , b ) \mathcal B(\mathcal W,b) B(W,b)中的任意一个结果,包括最小值 min ⁡ W , b B ( W , b ) \mathop{\min}\limits_{\mathcal W,b}\mathcal B(\mathcal W,b) W,bminB(W,b)。即:
max ⁡ λ A ( λ ) ≤ min ⁡ W , b B ( W , b ) \mathop{\max}\limits_{\lambda} \mathcal A(\lambda) \leq \mathop{\min}\limits_{\mathcal W,b}\mathcal B(\mathcal W,b) λmaxA(λ)W,bminB(W,b)
A ( λ ) , B ( W , b ) \mathcal A(\lambda),\mathcal B(\mathcal W,b) A(λ),B(W,b)进行替换,即可得到如下公式:
min ⁡ W , b max ⁡ λ L ( W , b , λ ) ≥ max ⁡ λ min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda)\geq \mathop{\max}\limits_{\lambda} \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminλmaxL(W,b,λ)λmaxW,bminL(W,b,λ)
证明完毕
我们称该关系为弱对偶关系。与弱对偶关系相反的是强对偶关系。强对偶关系表示如下:
min ⁡ W , b max ⁡ λ L ( W , b , λ ) = max ⁡ λ min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathop{\max}\limits_{\lambda}\mathcal L(\mathcal W,b,\lambda) = \mathop{\max}\limits_{\lambda} \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminλmaxL(W,b,λ)=λmaxW,bminL(W,b,λ)
弱对偶关系强对偶关系需要满足一些条件。由于原问题是凸二次规划问题,该类问题可以通过数学证明其原问题对偶问题之间是强对偶关系。这里篇幅有限,不在此证明了。

至此,无约束问题和它的对偶问题是强对偶关系,因次它们之间是等价关系

模型求解

重新观察对偶问题
{ max ⁡ λ min ⁡ W , b L ( W , b , λ ) s . t . λ ( i ) ≥ 0 ( i = 1 , 2 , ⋯   , N ) \begin{cases}\mathop{\max}\limits_{\lambda} \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) \\ s.t. \quad \lambda^{(i)} \geq 0 \quad (i=1,2,\cdots,N)\end{cases} λmaxW,bminL(W,b,λ)s.t.λ(i)0(i=1,2,,N)
继续观察目标函数的前半部分
min ⁡ W , b L ( W , b , λ ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) W,bminL(W,b,λ)
可以将其理解为:求解最优参数 W , b \mathcal W,b W,b使 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)最小。由于上式中对 λ \lambda λ没有任何约束,因此将 λ \lambda λ视作常数,直接分别对 W , b \mathcal W,b W,b求导:
个人理解:之所以要求解其‘对偶问题‘,原因在于’无约束问题‘的前半部分是关于 λ \lambda λ的函数,而 λ \lambda λ存在约束条件,不容易直接求解。

  • 首先对参数 b b b进行求导( W \mathcal W W同样被视作常数):
    展开的大括号中只有最后一项包含 b b b,其余均视作常数;
    ∂ L ( W , b , λ ) ∂ b = ∂ ∂ b [ 1 2 W T W + ∑ i = 1 N λ ( i ) − ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) − ∑ i = 1 N λ ( i ) y ( i ) b ] = ∂ ∂ b [ − ∑ i = 1 N λ ( i ) y ( i ) b ] = − ∑ i = 1 N λ ( i ) y ( i ) \begin{aligned} \frac{\partial \mathcal L(\mathcal W,b,\lambda)}{\partial b} & = \frac{\partial}{\partial b}\left[\frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N\lambda^{(i)} y^{(i)}\mathcal W^{T}x^{(i)} - \sum_{i=1}^N \lambda^{(i)}y^{(i)}b \right] \\ & = \frac{\partial}{\partial b}\left[-\sum_{i=1}^N \lambda^{(i)} y^{(i)} b \right] \\ & = -\sum_{i=1}^N\lambda^{(i)}y^{(i)} \end{aligned} bL(W,b,λ)=b[21WTW+i=1Nλ(i)i=1Nλ(i)y(i)WTx(i)i=1Nλ(i)y(i)b]=b[i=1Nλ(i)y(i)b]=i=1Nλ(i)y(i)
    ∂ L ( W , b , λ ) ∂ b ≜ 0 \frac{\partial \mathcal L(\mathcal W,b,\lambda)}{\partial b} \triangleq 0 bL(W,b,λ)0,此时得到一个新的条件
    ∑ i = 1 N λ ( i ) y ( i ) = 0 \sum_{i=1}^N \lambda^{(i)}y^{(i)} = 0 i=1Nλ(i)y(i)=0

该条件重新带回 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ),对拉格朗日函数进行化简
展开的最后一项中 b b b不含 i i i,因此视作常数,提到连加号前面;又因为新条件,最后一项消除;但由于第三项中包含 x ( i ) x^{(i)} x(i),因此不能被消除;
L ( W , b , λ ) = 1 2 W T W + ∑ i = 1 N λ ( i ) − ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) − ∑ i = 1 N λ ( i ) y ( i ) b = 1 2 W T W + ∑ i = 1 N λ ( i ) − ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) − b ∑ i = 1 N λ ( i ) y ( i ) = 1 2 W T W + ∑ i = 1 N λ ( i ) − ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) \begin{aligned}\mathcal L(\mathcal W,b,\lambda) & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N\lambda^{(i)} y^{(i)}\mathcal W^{T}x^{(i)} - \sum_{i=1}^N \lambda^{(i)}y^{(i)}b \\ & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N\lambda^{(i)} y^{(i)}\mathcal W^{T}x^{(i)} - b\sum_{i=1}^N \lambda^{(i)}y^{(i)} \\ & = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N\lambda^{(i)} y^{(i)}\mathcal W^{T}x^{(i)} \end{aligned} L(W,b,λ)=21WTW+i=1Nλ(i)i=1Nλ(i)y(i)WTx(i)i=1Nλ(i)y(i)b=21WTW+i=1Nλ(i)i=1Nλ(i)y(i)WTx(i)bi=1Nλ(i)y(i)=21WTW+i=1Nλ(i)i=1Nλ(i)y(i)WTx(i)
对化简结果继续对 W \mathcal W W进行求导:
大括号中只有第一项和第三项含 W \mathcal W W,这里仍然使用矩阵论中的矩阵求导法则~
1 2 W T W ∂ W = 1 2 ⋅ 2 ⋅ W = W ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) ∂ W = ∑ i = 1 N λ ( i ) y ( i ) x ( i ) \begin{aligned} \frac{\frac{1}{2} \mathcal W^{T}\mathcal W}{\partial \mathcal W} & = \frac{1}{2} \cdot 2 \cdot \mathcal W = \mathcal W \\ \frac{\sum_{i=1}^N \lambda^{(i)} y^{(i)} \mathcal W^{T}x^{(i)}}{\partial \mathcal W} &=\sum_{i=1}^N\lambda^{(i)}y^{(i)}x^{(i)} \end{aligned} W21WTWWi=1Nλ(i)y(i)WTx(i)=212W=W=i=1Nλ(i)y(i)x(i)

求导结果如下:
L ( W , b , λ ) ∂ W = ∂ ∂ W [ 1 2 W T W + ∑ i = 1 N λ ( i ) − ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) ] = 1 2 ⋅ 2 ⋅ W − ∑ i = 1 N λ ( i ) y ( i ) x ( i ) \begin{aligned} \frac{\mathcal L(\mathcal W,b,\lambda)}{\partial \mathcal W} & = \frac{\partial}{\partial \mathcal W}\left[\frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N\lambda^{(i)} y^{(i)}\mathcal W^{T}x^{(i)}\right] \\ & = \frac{1}{2} \cdot 2 \cdot \mathcal W - \sum_{i=1}^N\lambda^{(i)}y^{(i)}x^{(i)} \end{aligned} WL(W,b,λ)=W[21WTW+i=1Nλ(i)i=1Nλ(i)y(i)WTx(i)]=212Wi=1Nλ(i)y(i)x(i)

继续令 L ( W , b , λ ) ∂ W ≜ 0 \frac{\mathcal L(\mathcal W,b,\lambda)}{\partial \mathcal W} \triangleq 0 WL(W,b,λ)0,则有:
W = ∑ i = 1 N λ ( i ) y ( i ) x ( i ) \mathcal W = \sum_{i=1}^N \lambda^{(i)}y^{(i)}x^{(i)} W=i=1Nλ(i)y(i)x(i)
最后,将 W \mathcal W W的表达式带回第一次化简后的 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)中,此时该函数是只关于参数 λ \lambda λ的一个函数:
W = ∑ i = 1 N λ ( i ) y ( i ) x ( i ) → L ( W , b , λ ) = 1 2 W T W + ∑ i = 1 N λ ( i ) − ∑ i = 1 N λ ( i ) y ( i ) W T x ( i ) L ( W , b , λ ) = 1 2 ( ∑ i = 1 N λ ( i ) y ( i ) x ( i ) ) T ( ∑ j = 1 N λ ( j ) y ( j ) x ( j ) ) + ∑ i = 1 N λ ( i ) − ∑ i = 1 N [ λ ( i ) y ( i ) ( ∑ i = 1 N λ ( i ) y ( i ) x ( i ) ) T x ( i ) ] \mathcal W = \sum_{i=1}^N \lambda^{(i)}y^{(i)}x^{(i)} \to \mathcal L(\mathcal W,b,\lambda) = \frac{1}{2}\mathcal W^{T}\mathcal W + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N\lambda^{(i)} y^{(i)}\mathcal W^{T}x^{(i)} \\ \begin{aligned} \mathcal L(\mathcal W,b,\lambda) & = \frac{1}{2}\left(\sum_{i=1}^N \lambda^{(i)}y^{(i)}x^{(i)}\right)^{T}\left(\sum_{j=1}^N \lambda^{(j)}y^{(j)}x^{(j)}\right) + \sum_{i=1}^N \lambda^{(i)} - \sum_{i=1}^N \left[\lambda^{(i)} y^{(i)}\left(\sum_{i=1}^N \lambda^{(i)}y^{(i)}x^{(i)}\right)^{T}x^{(i)} \right]\\ \end{aligned} W=i=1Nλ(i)y(i)x(i)L(W,b,λ)=21WTW+i=1Nλ(i)i=1Nλ(i)y(i)WTx(i)L(W,b,λ)=21(i=1Nλ(i)y(i)x(i))T(j=1Nλ(j)y(j)x(j))+i=1Nλ(i)i=1N λ(i)y(i)(i=1Nλ(i)y(i)x(i))Tx(i)
观察第一项,由于 λ ( i ) \lambda^{(i)} λ(i)是每个样本点 ( x ( i ) , y ( i ) ) (x^{(i)},y^{(i)}) (x(i),y(i))对应的 拉格朗日乘数,是一个标量、常数 y ( i ) ∈ { − 1 , 1 } y^{(i)} \in \{-1,1\} y(i){1,1},也是一个标量、常数;因此则有:
( λ ( i ) ) T = λ ( i ) ; ( y ( i ) ) T = y ( i ) \left(\lambda^{(i)}\right)^{T} = \lambda^{(i)};\left(y^{(i)}\right)^{T} = y^{(i)} (λ(i))T=λ(i);(y(i))T=y(i)

至此,将第一项展开,并将上式带入:
1 2 [ ∑ i = 1 N ∑ j = 1 N λ ( i ) λ ( j ) y ( i ) y ( j ) ( x ( i ) ) T x ( j ) ] \frac{1}{2} \left[\sum_{i=1}^N\sum_{j=1}^N \lambda^{(i)}\lambda^{(j)}y^{(i)}y^{(j)}\left(x^{(i)}\right)^{T}x^{(j)}\right] 21[i=1Nj=1Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]
同理,将第三项展开,并将上式带入:
[ ∑ i = 1 N ∑ j = 1 N λ ( i ) λ ( j ) y ( i ) y ( j ) ( x ( i ) ) T x ( j ) ] \left[\sum_{i=1}^N\sum_{j=1}^N \lambda^{(i)}\lambda^{(j)}y^{(i)}y^{(j)}\left(x^{(i)}\right)^{T}x^{(j)}\right] [i=1Nj=1Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]
发现,第一项第三项之间只有系数上的差异。重新将三项合并,得到最终的 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(W,b,λ)结果:
此时结果只包含 λ ( i ) ( i = 1 , 2 , ⋯   , N ) \lambda^{(i)}(i=1,2,\cdots,N) λ(i)(i=1,2,,N)一种类型的变量。
L ( W , b , λ ) = − 1 2 [ ∑ i = 1 N ∑ j = 1 N λ ( i ) λ ( j ) y ( i ) y ( j ) ( x ( i ) ) T x ( j ) ] + ∑ i = 1 N λ ( i ) \mathcal L(\mathcal W,b,\lambda) = -\frac{1}{2} \left[\sum_{i=1}^N\sum_{j=1}^N \lambda^{(i)}\lambda^{(j)}y^{(i)}y^{(j)}\left(x^{(i)}\right)^{T}x^{(j)}\right] + \sum_{i=1}^N\lambda^{(i)} L(W,b,λ)=21[i=1Nj=1Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]+i=1Nλ(i)
由于对 b b b求解偏导化为了新的条件;对 W \mathcal W W求偏导得到了 W \mathcal W W关于 λ \lambda λ最优解。因此,则有:
min ⁡ W , b L ( W , b , λ ) = − 1 2 [ ∑ i = 1 N ∑ j = 1 N λ ( i ) λ ( j ) y ( i ) y ( j ) ( x ( i ) ) T x ( j ) ] + ∑ i = 1 N λ ( i ) \mathop{\min}\limits_{\mathcal W,b} \mathcal L(\mathcal W,b,\lambda) = -\frac{1}{2} \left[\sum_{i=1}^N\sum_{j=1}^N \lambda^{(i)}\lambda^{(j)}y^{(i)}y^{(j)}\left(x^{(i)}\right)^{T}x^{(j)}\right] + \sum_{i=1}^N\lambda^{(i)} W,bminL(W,b,λ)=21[i=1Nj=1Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]+i=1Nλ(i)

最终,通过求解对偶问题,将对偶问题转化为 目标函数、约束条件中只含 λ ( i ) ( i = 1 , 2 , ⋯   , N ) \lambda^{(i)}(i=1,2,\cdots,N) λ(i)(i=1,2,,N)的优化问题
该公式对应于机器学习(周志华著)123页最下方。
{ max ⁡ λ − 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 ) ≤ 0 \begin{cases}\mathop{\max}\limits_{\lambda} -\frac{1}{2} \left[\sum_{i=1}^N\sum_{j=1}^N \lambda^{(i)}\lambda^{(j)}y^{(i)}y^{(j)}\left(x^{(i)}\right)^{T}x^{(j)}\right] + \sum_{i=1}^N\lambda^{(i)} \\ s.t. \quad \lambda^{(i)} \leq 0\end{cases} λmax21[i=1Nj=1Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]+i=1Nλ(i)s.t.λ(i)0

下一节将引入 K K T KKT KKT条件,将最优直线的表达式求解出来。

相关参考:
仿射函数-百度百科
凸二次规划(convex quadratic programming)问题
机器学习-支持向量机2-硬间隔SVM-模型求解(对偶问题之引出)
机器学习-支持向量机5-约束优化问题-弱对偶性证明

相关文章:

  • invokeBeanFactoryPostProcessors
  • 使用 pnpm monorepo + ts 制作个功能完善的 CLI 命令行工具
  • leetcode:714. 买卖股票的最佳时机含手续费
  • 基于MATLAB的曼彻斯特调制与解调实现
  • SpringBoot 实现 Oracle 主从数据库的动态切换,并实现读写分离
  • 24.缓存
  • 【AJAX是什么】【AJAX的基本使用】
  • 丈母娘想女婿了,小伟和陈萌刚拍完婚纱照,就被大衣哥安排去看望
  • 猿创征文|Android kotlin实现动态更换应用图标和名称
  • Java高阶数据结构之红黑树
  • 获取泛型对应的类
  • java学习之springcloud之服务配置+服务总线+消息驱动+链路跟踪篇
  • 在线教育项目【统一异常处理】
  • 【优化选址】基于matlab帝国企鹅算法求解工厂-中心-需求点三级选址问题【含Matlab源码 2081期】
  • 网络安全——钓鱼邮件和网站克隆
  • $translatePartialLoader加载失败及解决方式
  • bearychat的java client
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • Cookie 在前端中的实践
  • C语言笔记(第一章:C语言编程)
  • Electron入门介绍
  • ES6语法详解(一)
  • express + mock 让前后台并行开发
  • extract-text-webpack-plugin用法
  • GitUp, 你不可错过的秀外慧中的git工具
  • JAVA SE 6 GC调优笔记
  • Linux中的硬链接与软链接
  • Python3爬取英雄联盟英雄皮肤大图
  • react 代码优化(一) ——事件处理
  • webpack入门学习手记(二)
  • Yii源码解读-服务定位器(Service Locator)
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 分布式事物理论与实践
  • 回顾2016
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • 树莓派用上kodexplorer也能玩成私有网盘
  • 组复制官方翻译九、Group Replication Technical Details
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • #前后端分离# 头条发布系统
  • (42)STM32——LCD显示屏实验笔记
  • (Forward) Music Player: From UI Proposal to Code
  • (windows2012共享文件夹和防火墙设置
  • (ZT)一个美国文科博士的YardLife
  • (二十三)Flask之高频面试点
  • (附源码)ssm高校实验室 毕业设计 800008
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (附源码)计算机毕业设计高校学生选课系统
  • (六)Hibernate的二级缓存
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (五)MySQL的备份及恢复
  • (转)http-server应用
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • .net core 6 集成和使用 mongodb
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证