6 深入浅出:支持向量机

支撑向量机(SVM)算法在分类问题中有着重要地位,其主要思想是最大化两类之间的间隔。按照数据集的特点:

  1. 线性可分问题,如之前的感知机算法处理的问题
  2. 线性可分,只有一点点错误点,如感知机算法发展出来的 Pocket 算法处理的问题
  3. 非线性问题,完全不可分,如在感知机问题发展出来的多层感知机和深度学习

这三种情况对于 SVM 分别有下面三种处理手段:

  1. hard-margin SVM
  2. soft-margin SVM
  3. kernel Method

SVM有三宝:间隔、对偶、核技巧

SVM 的求解中,大量用到了 Lagrange 乘子法,首先对这种方法进行介绍。

1 硬间隔SVM

SVM最早是为了解决二分类的问题,是一个判别模型,和排律概率没有关系在这里插入图片描述
那么什么样的超平面泛化能力最好呢?

从上图可以,可以有很多条线将数据分开。从几何上看,就是从多个分割线上找到一条鲁棒性最好的

1.1 模型定义

支持向量机也是一种硬分类模型,在之前的感知机模型中,我们在线性模型的基础上叠加了符号函数,在几何直观上,可以看到,如果两类分的很开的话,那么其实会存在无穷多条线可以将两类分开。在 SVM 中,我们引入最大化间隔这个概念,间隔指的是数据和直线的距离的最小值,因此最大化这个值反映了我们的模型倾向。

分割的超平面可以写为: 0 = w T x + b 0=w^Tx+b 0=wTx+b
最大间隔分类器
m a x m a r g i n ( w , b ) max \quad margin(w,b) maxmargin(wb) { w T x i + b > 0 y i = + 1 w T x i + b < 0 y i = − 1 → y i ( w T x i + b ) > 0 i = 1 , 2 , … N \left\{\begin{array}{l} w^{T} x_{i}+b>0 \quad y_{i}=+1 \\ w^{T} x_{i}+b<0 \quad y_{i}=-1 \end{array} \rightarrow y_{i}\left(w^{T} x_{i}+b\right)>0 \quad i=1,2, \dots N\right. {wTxi+b>0yi=+1wTxi+b<0yi=1yi(wTxi+b)>0i=1,2,N
在这里插入图片描述
w T x i + b w^{T} x_{i}+b wTxi+b 这个平面有很多个,因此点到平面的距离也就会有很多个,取** **。
margin ⁡ ( w , b ) = min ⁡ w , b , x i distance ⁡ ( w , b , x i ) = min ⁡ w , b , x i min ⁡ i = 1 , 2.. N 1 ∥ w ∥ ∣ w T x i + b ∣ \begin{aligned} \operatorname{margin}(w, b) &=\min _{w, b, x_{i}} \operatorname{distance}\left(w, b, x_{i}\right) \\ &=\min _{w, b, x_{i}} \min _{i=1,2 . . N} \frac{1}{\|w\|}\left|w^{T} x_{i}+b\right| \end{aligned} margin(w,b)=w,b,ximindistance(w,b,xi)=w,b,ximini=1,2..Nminw1wTxi+b ⇒ { max ⁡ w , b min ⁡ x 1 ∣ w ∣ ∣ w T x i + b ∣ = max ⁡ w , b min ⁡ x 1 ∥ w ∥ y i ( w T x i + b ) = max ⁡ w , b 1 ∥ w ∥ min ⁡ x y i ( w T x i + b ) = max ⁡ w , b 1 ∥ w ∥ Y  s.t.  y i ( w T x i + b ) > 0 ⇒ ∃ γ > 0 ,  s.t.  min ⁡ y i ( w T x i + b ) = γ \Rightarrow\left\{\begin{array}{l} \max _{w,b} \min _{x} \frac{1}{|w|}\left|w^{T} x_{i}+b\right|=\max _{w, b} \min _{x} \frac{1}{\|w\|} y_{i}\left(w^{T} x_{i}+b\right)=\max _{w, b} \frac{1}{\|w\|} \min _{x} y_{i}\left(w^{T} x_{i}+b\right)=\max _{w, b} \frac{1}{\|w\|} Y \\ \text { s.t. } y_{i}\left(w^{T} x_{i}+b\right)>0 \Rightarrow \exists \gamma>0, \text { s.t. } \min y_{i}\left(w^{T} x_{i}+b\right)=\gamma \end{array}\right. {maxw,bminxw1wTxi+b=maxw,bminxw1yi(wTxi+b)=maxw,bw1minxyi(wTxi+b)=maxw,bw1Y s.t. yi(wTxi+b)>0γ>0, s.t. minyi(wTxi+b)=γ
再此为了简化运算,令 γ = 1 \gamma=1 γ=1
在这里插入图片描述
w T x + b w^Tx+b wTx+b 等比例缩放 , 指向的都是同一个超平面,设定 γ \gamma γ 值,只是限定 w w w 的值。
⇒ { max ⁡ w , b 1 ∣ w ∣ s.t.  min ⁡ y i ( w T x i + b ) = 1 ⇒ { min ⁡ w , b 1 2 w T w s.t. y i ( w T x i + b ) ≥ 1 , f o r ∀ i = 1 , 2.. N \Rightarrow\left\{\begin{array}{l} \max _{w, b} \frac{1}{|w|} \\ \text {s.t. } \min y_{i}\left(w^{T} x_{i}+b\right)=1 \end{array} \Rightarrow\left\{\begin{array}{l} \min _{w, b} \frac{1}{2} w^{T} w \\ \text {s.t.} y_{i}\left(w^{T} x_{i}+b\right) \geq 1, f o r \forall i=1,2 . . N \end{array}\right.\right. {maxw,bw1s.t. minyi(wTxi+b)=1{minw,b21wTws.t.yi(wTxi+b)1,fori=1,2..N
这就是⼀个包含N个约束的凸优化问题,有很多求解这种问题的软件。
但是,如果样本数量或维度⾮常⾼,直接求解困难甚⾄不可解,于是需要对这个问题进⼀步处理。引入 Lagrange 函数。

没看明白 。

1.1 模型求解:引出对偶问题

1.1.1 primal problem原问题

带 约 束 : { min ⁡ w , b 1 2 w T w s.t. y i ( w T x i + b ) ≥ 1 , f o r ∀ i = 1 , 2.. N 带约束:\left\{\begin{array}{l} \min _{w, b} \frac{1}{2} w^{T} w \\ \text {s.t.} y_{i}\left(w^{T} x_{i}+b\right) \geq 1, f o r \forall i=1,2 . . N\end{array}\right. {minw,b21wTws.t.yi(wTxi+b)1,fori=1,2..N
拉格朗日函数:
L ( w , b , λ ) = 1 2 w T w + ∑ i = 1 N λ i ( 1 − y i ( w T x i + b ) ) λ ≥ 0 1 − y i ( w T x i + b ) ≤ 0 \begin{array}{l} L(w, b, \lambda)=\frac{1}{2} w^{T} w+\sum_{i=1}^{N} \lambda_{i}\left(1-y_{i}\left(w^{T} x_{i}+b\right)\right) \\ \lambda \geq 0 \quad 1-y_{i}\left(w^{T} x_{i}+b\right) \leq 0 \end{array} L(w,b,λ)=21wTw+i=1Nλi(1yi(wTxi+b))λ01yi(wTxi+b)0

转化为无约束问题:
 无纳束:  { min ⁡ w , b max ⁡ λ L ( w , b , λ )  s.t.  λ ≥ 0 \text { 无纳束: }\left\{\begin{array}{l} \min _{w, b} \max _{\lambda} L(w, b, \lambda) \\ \text { s.t. } \lambda \geq 0 \end{array}\right.  无纳束{minw,bmaxλL(w,b,λ) s.t. λ0

那么怎么证明有约束与无约束是等价的呢?下面将数据分为两部分,即 1 − y i ( w T x i + b ) 1-y_i(w^{T} x_{i}+b) 1yi(wTxi+b) 大于0 和小于等于 0 两部分
下面分情况来看一下:
{ i f : 1 − y i ( w T x i + b ) > 0 , max ⁡ λ L ( w , b , λ ) = 1 2 w T w + ∞ = ∞ i f : 1 − y i ( w T x i + b ) ≤ 0 , max ⁡ λ L ( w , b , λ ) = 1 2 w T w + 0 = 1 2 w T w ⇒ min ⁡ w , b max ⁡ λ L ( w , b , λ ) = min ⁡ w , b 1 2 w T w \left\{\begin{array}{l} i f: 1-y_{i}\left(w^{T} x_{i}+b\right)>0, \max _{\lambda} L(w, b, \lambda)=\frac{1}{2} w^{T} w+\infty=\infty \\ i f: 1-y_{i}\left(w^{T} x_{i}+b\right) \leq 0, \max _{\lambda} L(w, b, \lambda)=\frac{1}{2} w^{T} w+0=\frac{1}{2} w^{T} w\Rightarrow \min _{w, b} \max _{\lambda} L(w, b, \lambda)=\min _{w, b} \frac{1}{2} w^{T} w \end{array}\right. {if:1yi(wTxi+b)>0,maxλL(w,b,λ)=21wTw+=if:1yi(wTxi+b)0,maxλL(w,b,λ)=21wTw+0=21wTwminw,bmaxλL(w,b,λ)=minw,b21wTw ⇒ min ⁡ w , b max ⁡ λ L ( w , b , λ ) = min ⁡ w , b ( ∞ , 1 2 w T w ) = min ⁡ w , b 1 2 w T w \begin{aligned} &\Rightarrow \min _{w, b} \max _{\lambda} L(w, b, \lambda)=\min _{w, b}\left(\infty, \frac{1}{2} w^{T} w\right)=\min _{w, b} \frac{1}{2} w^{T} w \end{aligned} w,bminλmaxL(w,b,λ)=w,bmin(,21wTw)=w,bmin21wTw
也就是说无约束问题虽然没有显式的考虑 y i ( w T x i + b ) ≥ 1 y_{i}\left(w^{T} x_{i}+b\right) \geq 1 yi(wTxi+b)1,但是模型自动将 1 − y i ( w T x i + b ) > 0 1-y_{i}\left(w^{T} x_{i}+b\right)>0 1yi(wTxi+b)>0的情况给过滤掉了,因此最优解必然出于 1 − y i ( w T x i + b ) ≤ 0 1-y_{i}\left(w^{T} x_{i}+b\right) \leq 0 1yi(wTxi+b)0

带约束的原问题 和 不带约束的对偶问题 为什么等价,没看懂。

1.1.2 dual problem 对偶问题

原问题:  原问题:  { min ⁡ w , b max ⁡ λ L ( w , b , λ )  s.t.  λ ≥ 0 \text { 原问题: }\left\{\begin{array}{l} \min _{w, b} \max _{\lambda} L(w, b, \lambda) \\ \text { s.t. } \lambda \geq 0 \end{array}\right.  原问题{minw,bmaxλL(w,b,λ) s.t. λ0
 对偶问题:  { max ⁡ λ min ⁡ w , b L ( w , b , λ )  s.t.  λ ≥ 0 \text { 对偶问题: }\left\{ \begin{array}{l} \max _{\lambda} \min _{w, b} L(w, b, \lambda) \\ \text { s.t. } \lambda \geq 0 \end{array}\right.  对偶问题{maxλminw,bL(w,b,λ) s.t. λ0

  • 若对偶关系: m i n m a x L ≥ m a x m i n L min \quad maxL≥max \quad minL minmaxLmaxminL
  • 强对偶关系: m i n m a x L = m a x m i n L min \quad maxL=max \quad minL minmaxL=maxminL
  • 凸优化二次型问题,满足强对偶。

注意到 min ⁡ w , b L ( w , b , λ ) \min _{w, b} L(w, b, \lambda) minw,bL(w,b,λ) 式子,对 w w w b b b 是没有约束的,所以我们就直接通过求偏导,令其为0。
L ( w , b , λ ) = 1 2 w T w + ∑ i = 1 N λ i ( 1 − y i ( w T x i + b ) ) \begin{array}{l} L(w, b, \lambda)=\frac{1}{2} w^{T} w+\sum_{i=1}^{N} \lambda_{i}\left(1-y_{i}\left(w^{T} x_{i}+b\right)\right) \end{array} L(w,b,λ)=21wTw+i=1Nλi(1yi(wTxi+b)) ∂ L ∂ b = ∂ ∂ b [ ∑ i = 1 N λ i − ∑ i = 1 N λ i y i ( w T x i + b ) ] = ∂ ∂ b [ − ∑ i = 1 N λ i y i b ] = − ∑ i = 1 N λ i y i = 0 \begin{aligned} \frac{\partial L}{\partial b} &=\frac{\partial}{\partial b}\left[\sum_{i=1}^{N} \lambda_{i}-\sum_{i=1}^{N} \lambda_{i} y_{i}\left(w^{T} x_{i}+b\right)\right] \\ &=\frac{\partial}{\partial b}\left[-\sum_{i=1}^{N} \lambda_{i} y_{i} b\right] \\ &=-\sum_{i=1}^{N} \lambda_{i} y_{i}=0 \end{aligned} bL=b[i=1Nλii=1Nλiyi(wTxi+b)]=b[i=1Nλiyib]=i=1Nλiyi=0
将其带入 L ( w , b , λ ) L(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 ) ) = 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 \begin{aligned} L(w, b, \lambda)=& \frac{1}{2} w^{T} w+\sum_{i=1}^{N} \lambda_{i}\left(1-y_{i}\left(w^{T} x_{i}+b\right)\right) \\ =& \frac{1}{2} w^{T} w+\sum_{i=1}^{N} \lambda_{i}-\sum_{i=1}^{N} \lambda_{i} y_{i} w^{T} x_{i}-\sum_{i=1}^{N} \lambda_{i} y_{i} b \\ =&\frac{1}{2} w^{T} w+\sum_{i=1}^{N} \lambda_{i}-\sum_{i=1}^{N} \lambda_{i} y_{i} w^{T} x_{i} \end{aligned} L(w,b,λ)===21wTw+i=1Nλi(1yi(wTxi+b))21wTw+i=1Nλii=1NλiyiwTxii=1Nλiyib21wTw+i=1Nλii=1NλiyiwTxi

∂ L ∂ w = w − ∑ i = 1 N λ i y i x i = 0 \begin{aligned} \frac{\partial L}{\partial w}=w-\sum_{i=1}^{N} \lambda_{i} y_{i} x_{i}=0 \end{aligned} wL=wi=1Nλiyixi=0 ⇒ w = ∑ i = 1 N λ i y i x i \Rightarrow w= \sum_{i=1}^{N} \lambda_{i} y_{i} x_{i} w=i=1Nλiyixi
将其带入 L ( w , b , λ ) L(w, b, \lambda) L(w,b,λ)
L ( w , b , λ ) = 1 2 ( ∑ i = 1 N λ i y i x i ) T ( ∑ i = 1 N λ i y i x i ) − ∑ i = 1 N λ i y i ( ∑ j = 1 N λ j y j x j ) T x i + ∑ j = 1 N λ i = 1 2 ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j x i T x j − ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j x j T x i + ∑ j = 1 N λ i = − 1 2 ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j x i T x j + ∑ j = 1 N λ i \begin{aligned} L(w, b, \lambda) &=\frac{1}{2}\left(\sum_{i=1}^{N} \lambda_{i} y_{i} x_{i}\right)^{T}\left(\sum_{i=1}^{N} \lambda_{i} y_{i} x_{i}\right)-\sum_{i=1}^{N} \lambda_{i} y_{i}\left(\sum_{j=1}^{N} \lambda_{j} y_{j} x_{j}\right)^{T} x_{i}+\sum_{j=1}^{N} \lambda_{i} \\ &=\frac{1}{2} \sum_{i=1}^{N} \sum_{j=1}^{N} \lambda_{i} \lambda_{j} y_{i} y_{j} x_{i}^{T} x_{j}-\sum_{i=1}^{N} \sum_{j=1}^{N} \lambda_{i} \lambda_{j} y_{i} y_{j} x_{j}^{T} x_{i}+\sum_{j=1}^{N} \lambda_{i} \\ &=-\frac{1}{2} \sum_{i=1}^{N} \sum_{j=1}^{N} \lambda_{i} \lambda_{j} y_{i} y_{j} x_{i}^{T} x_{j}+\sum_{j=1}^{N} \lambda_{i} \end{aligned} L(w,b,λ)=21(i=1Nλiyixi)T(i=1Nλiyixi)i=1Nλiyi(j=1Nλjyjxj)Txi+j=1Nλi=21i=1Nj=1NλiλjyiyjxiTxji=1Nj=1NλiλjyiyjxjTxi+j=1Nλi=21i=1Nj=1NλiλjyiyjxiTxj+j=1Nλi
对偶问题就变成
 等价代换求 λ 的最大值:  { max ⁡ λ − 1 2 ∑ i = 1 N ∑ j = 1 N λ i λ j y i y j x i T x j + ∑ j = 1 N λ i s . t . λ i ≥ 0 ∑ i = 1 N λ i y i = 0 \text { 等价代换求$\lambda$的最大值: }\left\{\begin{array}{l} \max _{\lambda}-\frac{1}{2} \sum_{i=1}^{N} \sum_{j=1}^{N} \lambda_{i} \lambda_{j} y_{i} y_{j} x_{i}^{T} x_{j}+\sum_{j=1}^{N} \lambda_{i} \\ \\ s . t . \lambda_{i} \geq 0 \\ \\ \sum_{i=1}^{N} \lambda_{i} y_{i}=0 \end{array}\right.  等价代换求λ的最大值: maxλ21i=1Nj=1NλiλjyiyjxiTxj+j=1Nλis.t.λi0i=1Nλiyi=0

1.1.3 KKT条件

对于任何一个优化问题,假如原问题与对偶问题强对偶性成立,那么问题的最优解将满足 KKT 条件【充要条件】。

原问题与对偶问题一定是满足弱对偶关系的,因为这是凸二次规划问题约束是线性的,目标函数是二次的,所以满足了强对偶关系。(需要证明,这里直接拿来用了)

(所以凸二次规划一定满足强对偶条件,也必满足KKT 条件)

KKT条件:

{ ∂ L ∂ w = w − ∑ i = 1 N λ i y i x i = 0 ∂ f ∂ b = 0 λ i ( 1 − y i ( w ⊤ x i + b ) ) = 0 ( s l a c k n e s s   c o m p l e m e n t a r y 松 弛 互 补 条 件 ) λ i ⩾ 0 1 − y i ( w ⊤ x i + b ) ⩽ 0 \left\{\begin{array}{l} \frac{\partial \mathcal{L}}{\partial w}=w-\sum_{i=1}^{N} \lambda_{i} y_{i} x_{i}=0 \\ \\ \frac{\partial f}{\partial b}=0 \\ \\ \lambda_{i}\left(1-y_{i}\left(w^{\top} x_{i}+b\right)\right)=0 (slackness\ complementary松弛互补条件)\\ \\ \lambda_{i} \geqslant 0 \\ \\ 1-y_{i}\left(w^{\top} x_{i}+b\right) \leqslant 0 \end{array}\right. wL=wi=1Nλiyixi=0bf=0λi(1yi(wxi+b))=0(slackness complementary)λi01yi(wxi+b)0
因为对偶最优化问题的原问题与对偶问题满足强对偶性,因此 w , b w,b w,b 的最优解就满足KKT条件。
根据这个条件就得到了对应的最佳参数: w ^ = ∑ i = 1 N λ i y i x i   ( ∂ L ∂ w = 0 ) \hat{w}=\sum\limits_{i=1}^N\lambda_iy_ix_i\ (\frac{\partial \mathcal{L}} {\partial w}=0) w^=i=1Nλiyixi (wL=0) 其中至少有一个 λ k \lambda_k λk ​大于0 (用反证法,若 λ k = 0 \lambda_k=0 λk=0 ,从 KKT 的第一个条件可得 w = 0 w=0 w=0,但是 w = 0 w=0 w=0 并不是原始最优化问题的最优解,因此至少有一个 λ k \lambda_k λk ​大于0),那么存在 λ k \lambda_k λk 对应的 ( x k , y k ) (x_k,y_k) (xk,yk) 使得 1 − y k ( w T x k + b ) = 0 1-y_{k}(w^{T} x_{k}+b)=0 1yk(wTxk+b)=0,可得
b ^ = y k − w T x k = y k − ∑ i = 1 N λ i y i x i T x k \hat{b}=y_k-w^Tx_k=y_k-\sum\limits_{i=1}^N\lambda_iy_ix_i^Tx_k b^=ykwTxk=yki=1NλiyixiTxk 于是这个超平面的参数 w w w 就是数据点的线性组合,最终的参数值就是部分满足 y i ( w T x i + b ) = 1 y_i(w^Tx_i+b)=1 yi(wTxi+b)=1 向量的线性组合(互补松弛条件给出),这些向量也叫支撑向量。对应的 λ \lambda λ 是一个向量,只有对应的支持向量时不为 0,其余时候均为 0。

KKT条件没看懂。

1.2 软间隔SVM

Hard-margin 的 SVM 只对可分数据可解,如果不可分的情况,我们的基本想法是在损失函数中加入错误分类的可能性。错误分类的个数可以写成: loss = ∑ i = 1 N I { y i ( w T x i + b ) < 1 } \text {loss}=\sum_{i=1}^{N} \mathbb{I}\left\{y_{i}\left(w^{T} x_{i}+b\right)<1\right\} loss=i=1NI{yi(wTxi+b)<1}这个函数不连续,可以将其改写为: loss = ∑ i = 1 N max ⁡ { 0 , 1 − y i ( w T x i + b ) } \text {loss}=\sum_{i=1}^{N} \max \left\{0,1-y_{i}\left(w^{T} x_{i}+b\right)\right\} loss=i=1Nmax{0,1yi(wTxi+b)} 求和符号中的式子又叫做 Hinge Function(合页函数)。
在这里插入图片描述
{ min ⁡ w . b 1 2 w r w + C ∑ i = 1 N m a x { 0 , 1 − y i ( w ⊤ x i + b ) }  s.t.  y i ( w ⊤ x i + b ) ⩾ 1 \left\{\begin{array}{l} \min _{w . b} \frac{1}{2} w^{r} w+C \sum_{i=1}^{N} m a x\left\{0,1-y_{i}\left(w^{\top} x_{i}+b\right)\right\} \\ \\ \text { s.t. } \quad y_{i}\left(w^{\top} x_{i}+b\right) \geqslant 1 \end{array}\right. minw.b21wrw+Ci=1Nmax{0,1yi(wxi+b)} s.t. yi(wxi+b)1
这个式子中,常数 C C C 可以看作允许的错误水平,同时上式为了进一步消除 max ⁡ \max max 符号,对数据集中的每一个观测,我们可以认为其大部分满足约束,但是其中部分违反约束,因此这部分约束变成 y i ( w T x + b ) ≥ 1 − ξ i y_i(w^Tx+b)\ge1-\xi_i yi(wTx+b)1ξi ,其中 ξ i = 1 − y i ( w T x i + b ) , ξ i ⩾ 0 \xi_i=1-y_i(w^Tx_i+b) ,\xi_i \geqslant0 ξi=1yi(wTxi+b),ξi0
{ min ⁡ w . b 1 2 w r w + C ∑ i = 1 N ξ i  s.t.  y i ( w ⊤ x i + b ) ⩾ 1 − ξ i ξ i ⩾ 0 \left\{\begin{array}{l} \min _{w . b} \frac{1}{2} w^{r} w+C \sum_{i=1}^{N} \xi_i \\ \\ \text { s.t. } \quad y_{i}\left(w^{\top} x_{i}+b\right) \geqslant 1-\xi_i \\ \\ \xi_i \geqslant 0 \end{array}\right. minw.b21wrw+Ci=1Nξi s.t. yi(wxi+b)1ξiξi0
在这里插入图片描述
上图中第一条虚线到 w T x + b w^Tx+b wTx+b 的距离时 ξ i \xi_i ξi​,两条虚线之间的距离就是 ξ i \xi_i ξi

1.3 约束优化问题

前面的SVM计算中,使用到了对偶问题以及KKT条件等,但是未对其进行证明,因此接下来几节将对之前使用到的结论进行证明,其都属于约束优化问题。

1.3.1 弱对偶性证明

一般地,通用型约束优化问题(原问题)可以写成:
min ⁡ x ∈ R p f ( x ) s . t . m i ( x ) ≤ 0 , i = 1 , 2 , ⋯   , M n j ( x ) = 0 , j = 1 , 2 , ⋯   , N \begin{aligned} &\min _{x \in \mathbb{R}^{\mathrm{p}}} f(x)\\ &s . t . m_{i}(x) \leq 0, i=1,2, \cdots, M\\ & n_{j}(x)=0, j=1,2, \cdots, N \end{aligned} xRpminf(x)s.t.mi(x)0,i=1,2,,Mnj(x)=0,j=1,2,,N 定义 Lagrange 函数: L ( x , λ , η ) = f ( x ) + ∑ i = 1 M λ i m i ( x ) + ∑ i = 1 N η i n i ( x ) L(x,\lambda,\eta)=f(x)+\sum\limits_{i=1}^M\lambda_im_i(x)+\sum\limits_{i=1}^N\eta_in_i(x) L(x,λ,η)=f(x)+i=1Mλimi(x)+i=1Nηini(x) 那么原问题可以等价于无约束形式 min ⁡ x ∈ R p max ⁡ λ , η L ( x , λ , η )   s . t .   λ i ≥ 0 \min_{x\in\mathbb{R}^p}\max_{\lambda,\eta}L(x,\lambda,\eta)\ s.t.\ \lambda_i\ge0 xRpminλ,ηmaxL(x,λ,η) s.t. λi0 这是由于,当满足原问题的不等式约束的时候, λ i = 0 \lambda_i=0 λi=0 才能取得最大值,直接等价于原问题,如果不满足原问题的不等式约束,那么最大值就为 + ∞ +\infin +,由于需要取最小值,于是不会取到这个情况。所以无约束形式默认使得 x x x 满足有约束形式的约束
在这里插入图片描述
这个问题的对偶形式(无约束原问题的对偶形式): max ⁡ λ , η min ⁡ x ∈ R p L ( x , λ , η )   s . t .   λ i ≥ 0 \max_{\lambda,\eta}\min_{x\in\mathbb{R}^p}L(x,\lambda,\eta)\ s.t.\ \lambda_i\ge0 λ,ηmaxxRpminL(x,λ,η) s.t. λi0 对偶问题是关于 λ , η \lambda, \eta λ,η 的最大化问题。
弱对偶性:对偶问题 ≤ \le 原问题
max ⁡ λ i , η j min ⁡ x L ( x , λ i , η j ) ≤ min ⁡ x max ⁡ λ i , η j L ( x , λ i , η j ) \max_{\lambda_i,\eta_j}\min_{x}L(x,\lambda_i,\eta_j)\le\min_{x}\max_{\lambda_i,\eta_j}L(x,\lambda_i,\eta_j) λi,ηjmaxxminL(x,λi,ηj)xminλi,ηjmaxL(x,λi,ηj)
证明:显然有 min ⁡ x L ≤ L ≤ max ⁡ λ , η L \min\limits_{x}L\le L\le\max\limits_{\lambda,\eta}L xminLLλ,ηmaxL(函数肯定大于等于最小值,小于等于最大值)。现在记 min ⁡ x L = A , max ⁡ λ , η L = B \min\limits_{x}L=A,\max\limits_{\lambda,\eta}L=B xminL=Aλ,ηmaxL=B,那么就有 A ≤ B A\le B AB 恒成立,那么 A A A 的最大值也会小于 B B B 的最小值,即 m a x A ≤ m i n B maxA \le minB maxAminB,于是显然有 max ⁡ λ , η min ⁡ x L ≤ min ⁡ x max ⁡ λ , η L \max\limits_{\lambda,\eta}\min\limits_{x}L\le \min\limits_{x}\max\limits_{\lambda,\eta}L λ,ηmaxxminLxminλ,ηmaxL

这个解释没看懂。为什么这里是弱对偶性?

1.3.2 对偶关系的几何表达

在这里插入图片描述
如上图所示,原问题的最优解 p ∗ p^* p 的位置如上图,其中 inf 表示下确界,也就是取最小值点。
在这里插入图片描述
直线 t + λ u t+\lambda u t+λu在平移过程中会有与 t t t 轴很多交点,要取最小值。所以 g ( λ ) g(\lambda) g(λ) 就是直线 t + λ u t+\lambda u t+λu 与区域 G G G 最小边的切线与 t t t 轴的相交值。那么 d ∗ = max ⁡ g ( λ ) d^*=\max g(\lambda) d=maxg(λ) 又怎么表示呢?因为此时 λ \lambda λ 还没确定,最大的 d ∗ d* d 如下图:黄框的点
在这里插入图片描述
所以,从上图可以看出来 d ∗ ≤ p ∗ d^* \le p^* dp 成立
上面是非凸情况,那么凸的情况,也必然成立。
在这里插入图片描述

凸优化 + Slater 条件可以得出强对偶关系,即 d ∗ = p ∗ d^* = p^* d=p,注意这里是充分条件,而不是充要条件(其他也可推出强对偶)。

1.3.3 对偶关系的Slater Condition的解释

对于一个凸优化问题,有如下定理

  • 如果凸优化问题满足某些条件如 Slater 条件,那么它和其对偶问题满足强对偶关系。记问题的定义域为:
    D = d o m f ( x ) ∩ d o m m i ( x ) ∩ d o m n j ( x ) \mathcal{D}=domf(x)\cap dom m_i(x)\cap domn_j(x) D=domf(x)dommi(x)domnj(x) 。于是 Slater 条件为:
    ∃ x ^ ∈ R e l i n t D   s . t .   ∀ i = 1 , 2 , ⋯   , M , m i ( x ) < 0 \exist\hat{x}\in Relint\mathcal{D}\ s.t.\ \forall i=1,2,\cdots,M,m_i(x)\lt0 x^RelintD s.t. i=1,2,,M,mi(x)<0 其中 Relint 表示相对内部(不包含边界的内部)。
  • 仿射函数,即最高次数为1的多项式函数。常数项为零的仿射函数称为线性函数。
  • 对于大多数凸优化问题,Slater 条件成立。
  • 松弛 Slater 条件,如果 M 个不等式约束中,有 K 个函数为仿射函数,那么只要其余的函数满足 Slater 条件即可。

SVM是一个凸二次优化问题,约束满足松弛 Slater 条件,所以也就是强对偶关系

Slater 条件的几何意义,如下图,Slater 条件就是要求数据落在 u < 0 u< 0 u<0 区域,甚至不可以 g ( λ ) g(\lambda) g(λ) 不可以与 t t t 轴相交,而 SVM 天然的满足这项条件。
在这里插入图片描述

1.3.3 对偶关系的KKT条件

上⾯介绍了原问题和对偶问题的对偶关系,但是实际还需要对参数进⾏求解,求解⽅法使⽤ KKT 条件进
⾏:

KKT 条件和强对偶关系是等价关系。KKT 条件对最优解的条件为:
.1. 可行域: m i ( x ∗ ) ≤ 0 n j ( x ∗ ) = 0 λ ∗ ≥ 0 m_i(x^*)\le 0\\ n_j(x^*)=0\\ \lambda^*\ge0 mi(x)0nj(x)=0λ0
.2. 互补松弛 λ i m ( x ∗ ) = 0 , ∀ m i \lambda^m_i(x^*)=0,\forall m_i λim(x)=0,mi,对偶问题的最佳值为 d ∗ d^* d ,原问题为 d ∗ = max ⁡ λ , η g ( λ , η ) = g ( λ ∗ , η ∗ ) = min ⁡ x L ( x , λ ∗ , η ∗ ) ≤ L ( x ∗ , λ ∗ , η ∗ ) = f ( x ∗ ) + ∑ i = 1 M λ ∗ m i ( x ∗ ) ≤ f ( x ∗ ) = p ∗ \begin{aligned} d^{*} &=\max _{\lambda, \eta} g(\lambda, \eta)=g\left(\lambda^{*}, \eta^{*}\right) \\ &=\min _{x} L\left(x, \lambda^{*}, \eta^{*}\right) \\ & \leq L\left(x^{*}, \lambda^{*}, \eta^{*}\right) \\ &=f\left(x^{*}\right)+\sum_{i=1}^{M} \lambda^{*} m_{i}\left(x^{*}\right) \\ & \leq f\left(x^{*}\right)=p^{*} \end{aligned} d=λ,ηmaxg(λ,η)=g(λ,η)=xminL(x,λ,η)L(x,λ,η)=f(x)+i=1Mλmi(x)f(x)=p​为了满足相等,两个不等式必须成立,于是,对于第一个不等于号,需要有梯度为0条件,对于第二个不等于号需要满足互补松弛条件。
3. 梯度为0: ∂ L ( x , λ , η ) ∂ x ∣ x = x ∗ = 0 \frac{\partial L(x,\lambda^,\eta^)}{\partial x}|_{x=x^*}=0 xL(x,λ,η)x=x=0

在这里插入图片描述

版权声明:本文为CSDN博主「AI路上的小白」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cengjing12/article/details/106299923

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值