上一节介绍了支持向量机模型分类的朴素思想——最大间隔分类器,本节将利用拉格朗日乘数法进行分析。
最大间隔分类器选择最优模型 的朴素思想是:从能够将样本点分类正确的直线中找出这样一条直线:该直线与 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∣∣1∣WTx(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.1−y(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)⎝⎜⎜⎜⎛w1w2⋮wp⎠⎟⎟⎟⎞=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)=1−y(i)(WTx(i)+b)=1−y(i)⎣⎢⎢⎢⎢⎡(w1,w2,⋯,wp)⎝⎜⎜⎜⎜⎛x1(i)x2(i)⋮xp(i)⎠⎟⎟⎟⎟⎞+b⎦⎥⎥⎥⎥⎤=1−y(i)(w1⋅x1(i)+w2⋅x2(i)+⋯+wp⋅xp(i)+b)
至此,该问题从凸优化问题转化为一个 凸二次规划问题(Convex Quadratic Programming)。凸二次规划问题存在解,但是对凸二次规划问题求解存在较高约束:
理想状态下:
这种情况下对凸二次规划问题求解是方便的。但实际情况下,样本数量和特征空间维度都很高,甚至存在将样本点 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.1−y(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=1∑Nλ(i)[1−y(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=1∑Nλ(i)[1−y(i)(WTx(i)+b)]
1 − y ( i ) ( W T x ( i ) + b ) 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) 1−y(i)(WTx(i)+b)具有什么意义?结合回顾中的介绍,它的实际意义如下:
由于 在介绍最大间隔分类器朴素思想 时,就已经说明了前提条件:基于样本点分类正确的基础上。
假如并没有提到这个条件,即当前直线存在样本点被分类错误。数学语言表达即:
∃ ( 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))∈Data→1−y(i)(WTx(i)+b)>0
将上述两种情况分别带入拉格朗日函数 L ( W , b , λ ) \mathcal L(\mathcal W,b,\lambda) L(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) 1−y(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)[1−y(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 ∞;由于
λ ( i ) \lambda^{(i)} λ(i)与
1 − y ( i ) ( W T x ( i ) + b ) 1 - y^{(i)} \left(\mathcal W^{T}x^{(i)} + b\right) 1−y(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)[1−y(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;结果由两部分组成:
{ ∞ , 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取最小值
。最终结果发现和原问题的目标函数完全相同。回顾整个推导过程,这意味着 λ ( 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 1−y(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,λ)
具体证明如下:
首先观察公式两端的前半部分:
综上,我们可以得到如下关系:
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,其余均视作常数;
将该条件重新带回 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=1∑Nλ(i)−i=1∑Nλ(i)y(i)WTx(i)−i=1∑Nλ(i)y(i)b=21WTW+i=1∑Nλ(i)−i=1∑Nλ(i)y(i)WTx(i)−bi=1∑Nλ(i)y(i)=21WTW+i=1∑Nλ(i)−i=1∑Nλ(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} ∂W21WTW∂W∑i=1Nλ(i)y(i)WTx(i)=21⋅2⋅W=W=i=1∑Nλ(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=1∑Nλ(i)−i=1∑Nλ(i)y(i)WTx(i)]=21⋅2⋅W−i=1∑Nλ(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=1∑Nλ(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=1∑Nλ(i)y(i)x(i)→L(W,b,λ)=21WTW+i=1∑Nλ(i)−i=1∑Nλ(i)y(i)WTx(i)L(W,b,λ)=21(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))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=1∑Nj=1∑Nλ(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=1∑Nj=1∑Nλ(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=1∑Nj=1∑Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]+i=1∑Nλ(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=1∑Nj=1∑Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]+i=1∑Nλ(i)
最终,通过求解对偶问题,将对偶问题转化为 目标函数、约束条件中只含 λ ( i ) ( i = 1 , 2 , ⋯ , N ) \lambda^{(i)}(i=1,2,\cdots,N) λ(i)(i=1,2,⋯,N)的优化问题:
该公式对应于机器学习(周志华著)123页最下方。
于此同时,不要忘记加上因
∂ L ( W , b , λ ) ∂ b ≜ 0 \frac{\partial \mathcal L(\mathcal W,b,\lambda)}{\partial b} \triangleq 0 ∂b∂L(W,b,λ)≜0产生的新的约束条件。
{ 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 ∑ i = 1 N λ ( i ) y ( 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)} \\ \begin{cases} s.t. \quad \lambda^{(i)} \geq 0 \\ \sum_{i=1}^N \lambda^{(i)}y^{(i)} = 0 \end{cases} \end{cases} ⎩⎪⎪⎨⎪⎪⎧λmax−21[∑i=1N∑j=1Nλ(i)λ(j)y(i)y(j)(x(i))Tx(j)]+∑i=1Nλ(i){s.t.λ(i)≥0∑i=1Nλ(i)y(i)=0
下一节将引入 K K T KKT KKT条件,将最优直线的表达式求解出来。
相关参考:
仿射函数-百度百科
凸二次规划(convex quadratic programming)问题
机器学习-支持向量机2-硬间隔SVM-模型求解(对偶问题之引出)
机器学习-支持向量机5-约束优化问题-弱对偶性证明