支撑向量机(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=wTx+b 0=w^Tx+b 0=wTx+b
最大间隔分类器
maxmargin(w,b)max \quad margin(w,b)maxmargin(wb)
{wTxi+b>0yi=+1wTxi+b<0yi=−1→yi(wTxi+b)>0i=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
在这里插入图片描述
wTxi+bw^{T} x_{i}+bwTxi+b这个平面有很多个,因此点到平面的距离也就会有很多个,取最小的距离。
margin⁡(w,b)=min⁡w,b,xidistance⁡(w,b,xi)=min⁡w,b,ximin⁡i=1,2..N1∥w∥∣wTxi+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,bmin⁡x1∣w∣∣wTxi+b∣=max⁡w,bmin⁡x1∥w∥yi(wTxi+b)=max⁡w,b1∥w∥min⁡xyi(wTxi+b)=max⁡w,b1∥w∥Y s.t. yi(wTxi+b)>0⇒∃γ>0, s.t. min⁡yi(wTxi+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
在这里插入图片描述
wTx+bw^Tx+bwTx+b等比例缩放,指向的都是同一个超平面,设定γ\gammaγ值,只是限定www的值。
⇒{max⁡w,b1∣w∣s.t. min⁡yi(wTxi+b)=1⇒{min⁡w,b12wTws.t.yi(wTxi+b)≥1,for∀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,b12wTws.t.yi(wTxi+b)≥1,for∀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,λ)=12wTw+∑i=1Nλi(1−yi(wTxi+b))λ≥01−yi(wTxi+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,bmax⁡λ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−yi(wTxi+b)1-y_i(w^{T} x_{i}+b)1yi(wTxi+b)大于0和小于等于0两部分
下面分情况来看一下:
{if:1−yi(wTxi+b)>0,max⁡λL(w,b,λ)=12wTw+∞=∞if:1−yi(wTxi+b)≤0,max⁡λL(w,b,λ)=12wTw+0=12wTw,min⁡w,bmax⁡λL(w,b,λ)=min⁡w,b12wTw\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, \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=21wTw,minw,bmaxλL(w,b,λ)=minw,b21wTw
⇒min⁡w,bmax⁡λL(w,b,λ)=min⁡w,b(∞,12wTw)=min⁡w,b12wTw\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
也就是说无约束问题虽然没有显式的考虑yi(wTxi+b)≥1y_{i}\left(w^{T} x_{i}+b\right) \geq 1yi(wTxi+b)1,但是模型自动将1−yi(wTxi+b)>01-y_{i}\left(w^{T} x_{i}+b\right)>01yi(wTxi+b)>0的情况给过滤掉了,因此最优解必然出于1−yi(wTxi+b)≤01-y_{i}\left(w^{T} x_{i}+b\right) \leq 01yi(wTxi+b)0

1.1.2 dual problem 对偶问题

 原问题: {min⁡w,bmax⁡λ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,bL(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

  • 若对偶关系:minmaxL≥maxminLmin \quad maxL≥max \quad minLminmaxLmaxminL
  • 强对偶关系:minmaxL=maxminLmin \quad maxL=max \quad minLminmaxL=maxminL
  • 凸优化二次型问题,满足强对偶。

注意到min⁡w,bL(w,b,λ)\min _{w, b} L(w, b, \lambda)minw,bL(w,b,λ)式子,对w和b是没有约束的,所以我们就直接通过求偏导,零其为0。
L(w,b,λ)=12wTw+∑i=1Nλi(1−yi(wTxi+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=1Nλi−∑i=1Nλiyi(wTxi+b)]=∂∂b[−∑i=1Nλiyib]=−∑i=1Nλiyi=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,λ)=12wTw+∑i=1Nλi(1−yi(wTxi+b))=12wTw+∑i=1Nλi−∑i=1NλiyiwTxi−∑i=1Nλiyib=12wTw+∑i=1Nλi−∑i=1NλiyiwTxi\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=1Nλiyixi=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=1Nλiyixi\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,λ)=12(∑i=1Nλiyixi)T(∑i=1Nλiyixi)−∑i=1Nλiyi(∑j=1Nλjyjxj)Txi+∑j=1Nλi=12∑i=1N∑j=1NλiλjyiyjxiTxj−∑i=1N∑j=1NλiλjyiyjxjTxi+∑j=1Nλi=−12∑i=1N∑j=1NλiλjyiyjxiTxj+∑j=1Nλ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⁡λ−12∑i=1N∑j=1NλiλjyiyjxiTxj+∑j=1Nλis.t.λi≥0∑i=1Nλiyi=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条件:
{∂L∂w=w−∑i=1Nλiyixi=0∂f∂b=0λi(1−yi(w⊤xi+b))=0(slackness complementary)λi⩾01−yi(w⊤xi+b)⩽0\left\{\begin{array}{l} \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} \end{array}\right.wL=wi=1Nλiyixi=0bf=0λi(1yi(wxi+b))=0(slackness complementary)λi01yi(wxi+b)0
因为对偶最优化问题的原问题与对偶问题满足强对偶性,因此w,bw,bw,b的最优解就满足KKT条件。
根据这个条件就得到了对应的最佳参数: w^=∑i=1Nλiyixi (∂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=0w=0w=0,但是w=0w=0w=0并不是原始最优化问题的最优解,因此至少有一个λk\lambda_kλk大于0),那么存在λk\lambda_kλk对应的(xk,yk)(x_k,y_k)(xk,yk)使得1−yk(wTxk+b)=01-y_{k}(w^{T} x_{k}+b)=01yk(wTxk+b)=0,可得
b^=yk−wTxk=yk−∑i=1NλiyixiTxk \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 于是这个超平面的参数 www 就是数据点的线性组合,最终的参数值就是部分满足 yi(wTxi+b)=1y_i(w^Tx_i+b)=1yi(wTxi+b)=1向量的线性组合(互补松弛条件给出),这些向量也叫支撑向量。对应的λ\lambdaλ是一个向量,只有对应的支持向量时不为0,其余时候均为0。

1.2 软间隔SVM

Hard-margin 的 SVM 只对可分数据可解,如果不可分的情况,我们的基本想法是在损失函数中加入错误分类的可能性。错误分类的个数可以写成:loss=∑i=1NI{yi(wTxi+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=1Nmax⁡{0,1−yi(wTxi+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.b12wrw+C∑i=1Nmax{0,1−yi(w⊤xi+b)} s.t. yi(w⊤xi+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
这个式子中,常数 CCC 可以看作允许的错误水平,同时上式为了进一步消除 max⁡\maxmax 符号,对数据集中的每一个观测,我们可以认为其大部分满足约束,但是其中部分违反约束,因此这部分约束变成 yi(wTx+b)≥1−ξiy_i(w^Tx+b)\ge1-\xi_iyi(wTx+b)1ξi,其中 ξi=1−yi(wTxi+b),ξi⩾0\xi_i=1-y_i(w^Tx_i+b) ,\xi_i \geqslant0ξi=1yi(wTxi+b),ξi0
{min⁡w.b12wrw+C∑i=1Nξi s.t. yi(w⊤xi+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
在这里插入图片描述
上图中第一条虚线到wTx+bw^Tx+bwTx+bd的距离时1−ξi1-\xi_i1ξi,两条虚线之间的距离就是ξi\xi_iξi

1.3 约束优化问题

1.3.1 弱对偶性证明

一般地,通用型约束优化问题(原问题)可以写成:
min⁡x∈Rpf(x)s.t.mi(x)≤0,i=1,2,⋯ ,Mnj(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=1Mλimi(x)+∑i=1Nηini(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∈Rpmax⁡λ,η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满足有约束形式的约束
在这里插入图片描述
这个问题的对偶形式max⁡λ,ηmin⁡x∈RpL(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,ηjmin⁡xL(x,λi,ηj)≤min⁡xmax⁡λi,ηjL(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⁡xL≤L≤max⁡λ,ηL\min\limits_{x}L\le L\le\max\limits_{\lambda,\eta}LxminLLλ,ηmaxL(函数肯定大于等于最小值,小于等于最大值)。现在记 min⁡xL=A,max⁡λ,ηL=B\min\limits_{x}L=A,\max\limits_{\lambda,\eta}L=BxminL=Aλ,ηmaxL=B,那么就有A≤BA\le BAB恒成立,那么A的最大值也会小于B的最小值,即maxA≤minBmaxA \le minBmaxAminB,于是显然有 max⁡λ,ηmin⁡xL≤min⁡xmax⁡λ,η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+λut+\lambda ut+λu在平移过程中会有与t轴很多交点,要取最小值。所以g(λ)g(\lambda)g(λ)就是直线t+λut+\lambda ut+λu与区域G最小边的切线与t轴的相交值。那么d∗=maxg(λ)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=domf(x)∩dommi(x)∩domnj(x)\mathcal{D}=domf(x)\cap dom m_i(x)\cap domn_j(x)D=domf(x)dommi(x)domnj(x)。于是 Slater 条件为: ∃x^∈RelintD s.t. ∀i=1,2,⋯ ,M,mi(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的多项式函数。常数项为零的仿射函数称为线性函数。

  1. 对于大多数凸优化问题,Slater 条件成立。
  2. 松弛 Slater 条件,如果 M 个不等式约束中,有 K 个函数为仿射函数,那么只要其余的函数满足 Slater 条件即可。
    SVM是一个凸二次优化问题,约束满足松弛 Slater 条件,所以也就是强对偶关系。

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

1.3.3 对偶关系的KKT条件

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

KKT 条件和强对偶关系是等价关系。KKT 条件对最优解的条件为:
.1. 可行域: mi(x∗)≤0nj(x∗)=0λ∗≥0 m_i(x^*)\le 0\\ n_j(x^*)=0\\ \lambda^*\ge0 mi(x)0nj(x)=0λ0
.2. 互补松弛 λim(x∗)=0,∀mi\lambda^m_i(x^*)=0,\forall m_iλim(x)=0,mi,对偶问题的最佳值为 d∗d^*d,原问题为 p∗p^*p d∗=max⁡λ,ηg(λ,η)=g(λ∗,η∗)=min⁡xL(x,λ∗,η∗)≤L(x∗,λ∗,η∗)=f(x∗)+∑i=1Mλ∗mi(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^*}=0xL(x,λ,η)x=x=0

在这里插入图片描述

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐