机器学习笔记 1.预备知识

138 阅读9分钟

1.1 凸函数

1.1.1 基本概念

凸集: 对数据集合C,内的任意两点x1,x2∈C,那么连接x1,x2其连线上的点也属于集合C:θx1+(1θ)x2C(0θ1)\theta x_1+(1−\theta)x_2∈C(∀0≤\theta≤1)则我们称集合C是凸的,则C是一个凸集。

凸函数: 凸集上的函数如果满足以下式子:f(θx1+(1θ)x2)θf(x1)+(1θ)f(x2)(0θ1)f(θx_1+(1−θ)x_2)≤θf(x_1)+(1−θ)f(x_2)(∀0≤θ≤1)则我们称这个函数是凸函数

反之如果:f(θx1+(1θ)x2)θf(x1)+(1θ)f(x2)(0θ1)f(θx_1+(1−θ)x_2) ≤ θf(x_1)+(1−θ)f(x_2)(∀0≤θ≤1)那我们称这个函数是凹函数。 `1 那么也就是得到高数常用的结论:当f(x)是凸函数的时候f(2)(x)<=0f^{(2)}(x) <= 0 ,当f(x)是凹函数的时候f(2)(x)>=0f^{(2)}(x) >= 0

1.1.2 梯度

多维函数有y=f(x1,x2,x3..,xn)y = f(x_1,x_2,x_3..,x_n)是可导的,他的各个方向的梯度就是对不同x的偏导。

偏导在一起,那就是梯度:f(x)=(f(x)x1,f(x)x2,....,f(x)xn)▽f(x) = (\dfrac{\partial f(x)}{\partial x_1},\dfrac{\partial f(x)}{\partial x_2},....,\dfrac{\partial f(x)}{\partial x_n})

然后f(x)在x_1点泰勒展开是:f(x)=f(x1)+f(x1)(xx1)....f(x)=f(x_1)+f′(x_1)(x - x_1)....

关于凸函数,在f(x)上,随机取两个相邻的点x1,x2x_1,x_2,不妨设x2>x1x_{2} > x_{1},把f(x1)f(x_{1})加上f(x1)f(x_{1})相对f(x2)f(x_{2})增长的一部分就等于f(x2)f(x_{2})

那么增长的一部分等于什么?

那肯定是在x1x_1处的切线f(x)f^{'}(x)x=x1,x=x2,y=0x = x1,x = x2,y =0围成的面积啦。(为了方便这里只讨论二维)

那么当x2x_{2}无限趋向于x1x_{1}时,f(x)f^{'}(x)是不变的f(x1)=f(x2)f^{'}(x_{1}) = f^{'}(x_{2}),此时定义域[x1,x2][x_{1},x_{2}]内的所有的斜率都等于f(x1)f′(x_1).所以把f^{'}(x_{1})x_{2} - x_{1}就等于 就等于f(x_{1})相对相对相对相对相对相对f(x_{2})$增长的一部分.

但是当x1x_{1}x2x_{2}没有那么近的时候,凸函数的导数是不断变大的,也就是说f(x1)是小于f(x2)f^{'}(x_{1})是小于f^{'}(x_{2})的,那么f(x1)f(x_{1})相对f(x2)f(x_{2})增长的一部分是大于f(x1)f^{'}(x_{1})x2x1x_{2} - x_{1}的。

也就是下面这个式子:

f(x2)f(x1)+f(x1)T(x2x1)f(x_2)\ge f(x_1) + \bigtriangledown f(x_1) ^T (x_2 -x_1)

我们可以知道,f(x)在定义域中任意点的一阶泰勒展开是其下界(你看他没加二阶三阶等肯定是少加了很多鸭)。

1.1.3 强凸函数

一般的一维函数只要求函数曲线在其切线之上,并没有对这个"上"做具体的要求,并不强制要求一定要完美贴着。那么如果追求梯度优化的过程中,可以在接近的过程中无限接近于这个贴合的点,但是这种无限接近意味着梯度优化中会出现一些微弱的梯度变化,导致优化速度变慢。那么我们可以加一个二次项,保证有一个二次下界,这样就不会出现贴着曲线的情况,优化就会变的简单。

一个可微的强凸函数的定义是:f(x1)f(x2)+f(x2)T(x1x2)+λ2x1x22f(x_1) ≥ f(x_2) + ▽f(x_2)^T (x_1 - x_2) + \frac{\lambda}{2}||x_1 - x_2||^2,这个式子保证了曲线不仅在切线上方,且始终大于某个距离。满足上面这个式子的强凸函数又称λ-强凸函数。

1.1.4 l-Lipschits连续

ff函数的局部变动不超过某个幅度,那么 lR+\exists l∈R_{+}使得 x1,x2ψ\forall x_{1},x_{2} ∈ \psi(ψ\psi表示合集) 都有:f(x2)f(x1)lx2x1 f(x_2) - f(x_1) \le l||x_2 -x_1||则称函数f(x)为l-Lipschitz连续,进一步若可微函数f(x)的梯度f(x)▽f(x)满足l-Lipschitz连续,则称函数f(x)为l−光滑。

1.1.5 Hessian矩阵

Hessian矩阵是函数f(x)在定义域上的二阶导数的矩阵:2f(x)RdRd\bigtriangledown^2 f(x) \in R^d *R^d。 其中2f(x)ij=2f(x)xixj\bigtriangledown^2 f(x)_{ij} = \frac{\partial^2f(x)}{\partial x_i\partial x_j}

若函数f(x)二阶可微,则它是凸函数当且仅当其的定义域来源于凸集,并且2f(x)0▽^2f(x)⪰0(意思是这个Hessian矩阵是半正定矩阵)。

1.1.6 不改变凹凸性的数学变化

  • ff是凸函数,f(Ax+B)f(Ax+B)也是凸函数。
  • f1,f2..fnf_1,f_2..f_n是凸函数,ω1,ω2...ωn0\omega_1,\omega_2...\omega_n \geq 0 ,f(x)=i=1Nωnfnf(x) = \sum_{i=1}^{N}\omega_nf_n也是凸函数。
  • f1,f2..fnf_1,f_2..f_n是凸函数,f(x)=max{f1(x),f2(x)..fn(x)}f(x) = max \{ f_1(x),f_2(x)..f_n(x) \} 也是凸函数。
  • zX\forall z ∈ X f(x,z)f(x,z)是关于x的凸函数,则g(x)=supzXf(x,z)g(x) = \sup_{z∈X}f(x,z)也是关于x的凸函数,(调参,任意一个z,或者说固定z的时候,都有一个x把函数f(x,z),调到上确界)

1.1.7 共轭函数

f:RdRf:R^d↦R 的共轭函数定义为: f(z)=supxψ(zTxf(x))f_*(z) =sup_{x∈\psi} (z^Tx - f(x)),共轭函数的定义域为 ψ={zsupxψ(zTxf(x))<}\psi_* = \{z|\sup_{x∈\psi }(z^Tx - f(x)) < ∞\}

共轭函数反应的是线性函数zTxz^Txf(x)f(x)的最大差值。

比如:f(x)=12x2f(x) = \frac{1}{2}x^{2},共轭函数f(z)f_*(z)z=2z = 2(固定z)的值,就等于2x2xf(x)f(x)之间的最大差值,因为是凸函数,f(x)f^{'}(x)在定域内是单调递增的,当 f(x)<2f^{'}(x) < 2的时候f(x)f(x)2x2x之间的差值是不断变大的,也就是说x<2x<2的时候2x2x的导数更大,2x2x变化的更多,当¥f^{'}(x) > 2的时候的时候f(x)的导数更大,的导数更大,f(x)变化变化的更多,差值在变小,所以变化变化的更多,差值在变小,所以f^{'}(x) = 2$的时候差值最大.

共轭函数有很好的性质:

  • 无论原函数是否是凸函数,共轭函数一定是凸函数。
  • 若原函数可微,则: f(f(x))=f(x)Txf(x)=[f(x)+f(x)T(0x)]f_*( \bigtriangledown f(x)) = \bigtriangledown f(x)^Tx-f(x)=-[f(x)+ \bigtriangledown f(x)^T(0-x)]

1.2 重要不等式

不理解的先不要管,留着证明用到或者以后学到再看,等结束完入门,一起推导。

1.2.1 Jensen不等式

对任意凸函数f(x)有f(EX)Ef(X)f(EX) ≤ Ef(X)

1.2.2 Holder不等式

p,qR+p,q∈R_+1q+1p=1\frac{1}{q} + \frac{1}{p} = 1EXY(EXp)1p(EXq)1qE|XY| ≤ (E|X|^p)^\frac{1}{p} (E|X|^q)^\frac{1}{q}

1.2.3 Cauchy-Schwarz不等式

针对随机变量和向量有不同的形式

  • 对任意随机变量X,Y有EXYEX2EY2E|XY| ≤ \sqrt{EX^2EY^2}
  • 对任意向量x,yRdx,y ∈ R^d,有xTyxy|x^Ty| ≤||x|| ||y||

向量的l2范数为 x2=(x12++xm2)||x||^2=(|x_1|^2+⋅⋅⋅+|x_m|^2)

  • 对任意向量x,yRdx,y ∈ R^d和正定矩阵ARd×dA∈R^{d×d},有xTyxAyA1|x^Ty| ≤||x||_A ||y||_A^{-1}

注意xA=xTAx||x||_A = \sqrt{x^TAx}

1.2.4 Lyapunov不等式

0<rs0<r≤s(EXr)1r(EXs)1s(E|X|^r)^\frac{1}{r} ≤(E|X|^s)^\frac{1}{s}

1.2.5 Minkowski不等式

1p1≤p(EX+Yp)1p(EXp)1p+(EYp)1p(E|X+Y|^p)^\frac{1}{p} ≤ (E|X|^p)^\frac{1}{p}+(E|Y|^p)^\frac{1}{p}

1.2.6 Bhatia-Davis不等式

X[a,b]X∈[a,b]DXbEX)(EXa)ba24DX≤(b-EX)(EX-a) ≤ \frac{{b-a}^2}{4}

1.2.7 联合界不等式

$P(X∪Y)≤ P(x) + P(Y)

1.2.8 Markov不等式

X0X≥0,ϵ>0\forall \epsilon > 0P(Xϵ)EXϵP(X≥\epsilon ) ≤\frac{EX}{\epsilon }

1.2.9 Chebyshev不等式

P(XEXϵ)DXϵ2P(|X - EX|≥ \epsilon)≤ \frac{DX}{\epsilon ^2}

1.2.10 Cantelli不等式

ϵ>0\forall \epsilon > 0P(XEXϵ)DXDX+ϵ2P(X - EX ≥ \epsilon) ≤ \frac{DX}{DX + \epsilon^2}

ϵ>0\forall \epsilon > 0P(XEXϵ)DXDX+ϵ2P(X - EX ≤ -\epsilon) ≤ \frac{DX}{DX + \epsilon^2}

1.2.11 Chernoff不等式

t>0\forall t > 0P(Xϵ)=P(etXetϵ)EetXetϵ P(X ≥ \epsilon) = P(e^{tX} ≥ e^{t\epsilon})≤ \frac{Ee^{tX}}{e^{t\epsilon}}

t<0\forall t < 0P(Xϵ)=P(etXetϵ)EetXetϵ P(X ≤ \epsilon) = P(e^{tX} ≥ e^{t\epsilon})≤ \frac{Ee^{tX}}{e^{t\epsilon}}

对于离散的数据:X=i=1mXim\overline{X} = \frac{\sum^m_{i=1}X_i}{m}r[0,1]r∈[0,1]

P(X(1+r)EX)emr2EX/3P(\overline{X} ≥(1+r)E\overline{X}) ≤ e^{-mr^2E\overline{X} / 3}

P(X(1r)EX)emr2EX/2P(\overline{X} ≤ (1-r)E\overline{X}) ≤ e^{-mr^2E\overline{X} / 2}

1.2.12 Hoeffding不等式

对m个独立随机变量Xi[0,1]X_i ∈[0,1]i{m}i \in \{m\}X=i=1mXim\overline{X} = \frac{\sum^m_{i=1}X_i}{m},有 p(XEXϵ)e2mϵ2p(\overline{X} - E\overline{X} \geq \epsilon) \leq e^{-2m\epsilon^2}

另一种表达形式为:XEX+12mln1δ\overline{X} \leq E\overline{X} + \sqrt{\frac{1}{2m}ln \frac{1}{\delta}}

考虑Xi[a,b]X_i∈[a,b]i[m]i∈[m] 则得到更一般的形式

p(XEXϵ)e2mϵ2/(ba)2p(\overline{X} - E\overline{X} \geq \epsilon) \leq e^{-2m\epsilon^2/(b-a)^2}

p(XEXϵ)e2mϵ2/(ba)2p(\overline{X} - E\overline{X} \geq -\epsilon) \leq e^{-2m\epsilon^2/(b-a)^2}

1.2.13 McDiarmid不等式

对m个独立随机变量Xi[0,1]X_i ∈[0,1]i{m}i \in \{m\},若f:χmRf:\chi^m \rightarrow R是关于XiX_i的实值函数且x1,...xm,xilχ\forall x_1,...x_m,x_i^l \in \chi都有f(x1,...,xi,..,xm)f(x1,...,xil,..,xm)ci|f(x_1,...,x_i,..,x_m) - f(x_1,...,x_i^l,..,x_m) \leq c_i,则ϵ>0\forall \epsilon > 0P(f(X1,...,Xm)Ef(X1,...,Xm)ϵ)e2ϵ2/i=1mci2P(f(X_1,...,X_m)-Ef(X_1,...,X_m) \geq \epsilon) \leq e^{-2\epsilon ^ 2 / \sum^m_{i=1}c_i^2},P(f(X1,...,Xm)Ef(X1,...,Xm)ϵ)e2ϵ2/i=1mci2P(f(X_1,...,X_m)-Ef(X_1,...,X_m) \geq \epsilon) \geq e^{-2\epsilon ^ 2 / \sum^m_{i=1}c_i^2}

1.2.14 Bennett不等式

对m个独立随机变量Xi[0,1]X_i ∈[0,1]i{m}i \in \{m\}X=i=1mXim\overline{X} = \frac{\sum^m_{i=1}X_i}{m},若XiEXi1X_i - EX_i \leq 1则有P(XEX+ϵ)emϵ2/(2DX1+2ϵ/3)P(\overline{X} \geq E\overline{X} + \epsilon) \leq e^{-m\epsilon ^2 / (2DX_1 + 2\epsilon/3)}

机器学习中常用到另外一种形式: P(XEX+ϵ)emϵ2/(2DX1+2ϵ/3)=δP(\overline{X} \geq E\overline{X} + \epsilon) \leq e^{-m\epsilon ^2 / (2DX_1 + 2\epsilon/3)} = \delta 则下面式子至少以1δ1-\delta概率成立:XEX+ϵEX+2ln(1/δ)3m+2DXmln(1δ)\overline{X} \leq E\overline{X} + \epsilon \leq E\overline{X} + \frac{2ln(1/\delta)}{3m} + \sqrt{\frac{2D\overline{X}}{m}ln(\frac{1}{\delta})}

1.2.15 Bernstein不等式

对m个独立随机变量Xi[0,1]X_i ∈[0,1]i{m}i \in \{m\}X=i=1mXim\overline{X} = \frac{\sum^m_{i=1}X_i}{m},若存在b > 0,使得k2\forall k \geq 2EXikk!bk2DX1/2E|X_i|^k \leq k!b^{k-2}DX_1/2成立则有: P(XEX+ϵ)emϵ22DX1+2bϵP(\overline{X} \geq E\overline{X} + \epsilon)\leq e^{\frac{-m\epsilon^2}{2DX_1+2b\epsilon}}

1.2.16 Azuma不等式

Zi+1Z_{i+1}Z0,Z1...ZiZ_0,Z_1...Z_i的条件期望等于ZiZ_i且与Z0,Z1,...Zi1Z_0,Z_1,...Z_{i-1}无关,则这个序列就是鞅,是一个无后效性的序列。

对于均值为μ\mu的鞅Zm,m1{Z_m,m \geq 1}Z0=μZ_0 = \muciZiZi1ci-c_i \leq Z_i - Z_{i-1} \leq c_i,则ϵ>0\forall \epsilon > 0

P(Zmμϵ)eϵ2/(2i=1mci2)P(Z_m - \mu \geq \epsilon) \leq e^{-\epsilon^2/(2\sum_{i=1}^mc_i^2)}

P(Zmμϵ)eϵ2/(2i=1mci2)P(Z_m - \mu \leq -\epsilon) \leq e^{-\epsilon^2/(2\sum_{i=1}^mc_i^2)}

Xi=ZiZi1X_i = Z_i - Z_{i-1}可以得到鞅差序列X1,X2,...XmX1,X2,...Xm于是有

P(i=1mXiϵ)eϵ2/(2i=1mci2)P(\sum_{i=1}^mX_i \geq \epsilon) \leq e^{-\epsilon^2/(2\sum_{i=1}^mc_i^2)}

P(i=1mXiϵ)eϵ2/(2i=1mci2)P(\sum_{i=1}^mX_i \leq -\epsilon) \leq e^{-\epsilon^2/(2\sum_{i=1}^mc_i^2)}

1.3最优化基础

1.3.1 什么是最优化

相信各位都学过极值,我们的极值就是我们要求的一个最优解。

问题的最优解可以表达为:

f(x0)f(x),xΩf(x_0)\le f(x) ,x∈Ω

那么x0x_0就是极小值,极大值类似,最优化就是找到这个极值。

函数可能有多个极值,我们希望找到函数里的最值,但是梯度下降等一些算法只能找到局部最优解,也就是这个局部的最值,不一定是全部的最值。

如果目标函数跟约束函数都是凸函数,那么这个问题就成了凸优化的问题了。

1.3.2 优化问题

一般一个优化问题可以表达为:

minxf(x) \min\limits_{x} f(x)

s.t.hi(x)0(i{m}) s.t. h_i(x) \leq 0 (i \in \{m\})

其中f:RdRf:R^d \rightarrow R 称为优化目标函数,hi:RdR(i{m})h_i:R^d\rightarrow R (i \in \{m\})称为约束函数,表示在满足hi(x)0h_i(x) \leq 0条件下,寻找f(x)f(x)最小化。

当f(x)和h(x)都是凸的时候,则称为凸优化问题。

1.3.3 主问题与对偶问题

一个优化问题可以从两个方面来考虑,也就是主问题和对偶问题。

主问题就是:显式列出m个不等式约束和n个等式约束。写为:

minxf(x)\substack{\min\\x} f(x)

s.t.hi(x)0(i[m])s.t. h_{i}(x) \leq 0 \quad(i∈[m])

s.t.gj(x)=0(j[n])s.t. g_{j}(x) = 0 \quad(j∈[n])

当主问题难解的时候,但是其对偶问题容易求解,且通过求解对偶问题能得到原始问题的最优解。

主(原)问题如何转换对偶问题?

(分界线)原问题对偶问题
决策变量n个;>=0;<=0;无约束n个;>=0;<=0; =0
线性约束m个;<=0;>=0;=0m个;>=0;<=0;无约束
目标求max,系数是对偶问题中线性约束常数求min,系数是原问题中线性约束常数

例子:

  1. 小明有一个打印机,可以用来赚钱。
  2. 把打印机出租给小杨,通过出租赚钱。

从小明的角度看不管是1,2哪个条件,小明是想最大化自己的利润,从小杨角度看,小杨是想最大化自己的收入,再联系现有条件,也就是看小杨的支付的最小租金。这就是一对对偶问题。

1.3.4 拉格朗日对偶

为什么需要使用拉格朗日对偶性把原始问题改为对偶问题?

答:无论原问题是什么形式,其对偶问题都是凸问题。

为什么对偶函数一定是凹函数?

也就是证明g(θλ1+(1θ)λ2,θν1+(1θ)ν2)θg(λ1,ν1)+(1θ)g(λ2,ν2)g(\theta \lambda_1 + (1-\theta)\lambda_2,\theta \nu_1 + (1-\theta)\nu_2) \geq \theta g(\lambda_1,\nu_1)+(1-\theta)g(\lambda_2,\nu_2)

对偶函数就是把λ\lambdaν\nu当成常量,x变化时候的最小值,如果拉格朗日函数没有最小值,则对偶函数取负无穷,所以可以把对偶函数用下面式子表达: g(θ,ν)=min{L(x1,θ,ν),L(xn,θ,ν)...L(xn,θ,ν)},n+g(\theta,\nu) = min\{L(x_1,\theta,\nu),L(x_n,\theta,\nu)...L(x_n,\theta,\nu)\},n\rightarrow+∞

γ=(θ,ν)\gamma = (\theta,\nu)可以得到:

g(θγ1+(1θ)γ2)=min{L(x1,θ,ν),L(xn,θ,ν)...L(xn,θ,ν)}g(\theta \gamma_1 + (1-\theta)\gamma_2) = min\{L(x_1,\theta,\nu),L(x_n,\theta,\nu)...L(x_n,\theta,\nu)\}

所以: g(θγ1+(1θ)γ2)min{θL(x1,γ1)+(1θ)L(x1,γ2),θL(x2,γ1)+(1θ)L(x2,γ2),.....θL(xn,γ1)+(1θ)L(xn,γ2)}θmin{L(x1,γ1),L(x2,γ1)...,L(xn,γ1)}+(1θ)min{L(x1,γ2),L(x2,γ2)...,L(xn,γ2)}=θg(γ1)+(1θ)g(γ2))g(\theta \gamma_1 + (1-\theta)\gamma_2) \geq min\{\theta L(x_1,\gamma_1)+(1-\theta )L(x_1,\gamma_2),\theta L(x_2,\gamma_1)+(1-\theta )L(x_2,\gamma_2),.....\theta L(x_n,\gamma_1)+(1-\theta )L(x_n,\gamma_2)\} \geq \theta min\{L(x_1,\gamma_1),L(x_2,\gamma_1)...,L(x_n,\gamma_1)\}+(1-\theta)min\{L(x_1,\gamma_2),L(x_2,\gamma_2)...,L(x_n,\gamma_2)\} = \theta g(\gamma_1) + (1- \theta)g(\gamma_2))

所以上述公式得到证明,原命题得到证明。

1.3.5 广义拉格朗日函数

可以用广义拉格朗日函数来找最值,λi\lambda_iμ\mu分别是针对不等式约束hi(x)0h_i(x) \le 0gi(x)=0g_i(x) = 0引入的拉格朗日乘子。

L(x,λ,μ)=f(x)+i=0nλihi(x)+j=0mμgj(x)L(x,\lambda,\mu)=f(x)+\sum_{i=0}^n \lambda_i h_i(x) +\sum_{j=0}^m \mu g_j(x)

相应的拉格朗日对偶函数为:

Г(λ,μ)=infxψL(x,λ,μ)=infxψ(f(x)+i=0nλihi(x)+j=0mμjgj(x))Г(\lambda,\mu) = \substack{\inf\\x∈\psi} L(x,\lambda,\mu) =\substack{\inf\\x∈\psi} (f(x)+\sum_{i=0}^n \lambda_i h_i(x) +\sum_{j=0}^m \mu_j g_j(x))

因为hi(x)0h_i(x) \le 0gi(x)=0g_i(x) = 0,所以i=0nλihi(x)+j=0mμgj(x)0\sum_{i=0}^n \lambda_i h_i(x) +\sum_{j=0}^m \mu g_j(x) \le 0

对于xψx∈ \psi有:Г(λ,μ)=infxψL(x,λ,μ)L(x,λ,μ)f(x)Г(\lambda,\mu) = \substack{\inf\\x∈\psi} L(x,\lambda,\mu) \le L(x,\lambda,\mu) \le f(x)

所以拉格朗日Г(λ,μ)Г(\lambda,\mu) 给出了 L(λ,μ)L(\lambda,\mu) 的目标函数f(x)最优值(设为pp^*)的下界。

也就是λ0\forall \lambda \succeq 0 都有Г(λ,μ)p Г(\lambda,\mu) \le p^*

设对偶函数Г(λ,μ)Г(\lambda,\mu)的目标函数的最优值是dd^*,则dd^*pp^*的下界,也就是:

dpd^* \le p^*

这是弱对偶性

d=pd^* = p^*

这是强对偶性,强对偶性一般不成立,但是若主问题为凸优化问题,且可行域中至少有一处使不等式约束严格成立,则强对偶性成立。

1.3.6 KKT条件

KKT条件主要是用来刻画主问题与对偶问题的最优解之间的关系,令xx^*为主问题的最优解,(λ,μ)(\lambda^*,\mu^*)为对偶问题的最优解,当强对偶成立时:

f(x)=Γ(λ,μ)=infx(f(x)+i=0nλihi(x)+j=0mμjgj(x))f(x)+i=0nλihi(x)+j=0mμjgj(x)f(xf(x^*) = \Gamma(\lambda, \mu) = \inf\limits_{x}( f(x)+\sum_{i=0}^n \lambda^*_i h_i(x) +\sum_{j=0}^m \mu^*_j g_j(x))\leq f(x^*)+\sum_{i=0}^n \lambda^*_i h_i(x^*) +\sum_{j=0}^m \mu^*_j g_j(x^*) \leq f(x^*

所以此时不等式应该取等号,所以下面两个条件应该成立:

  • 互补松弛条件:

λhi(x)=0   i[m]\lambda^*h_i(x^*) = 0 \ \ \ i∈[m]

也就是说这个时候λ>0得到hi(x)=0 \lambda^* > 0 得到 h_i(x^*) = 0以及λ0得到hi(x)=0 \lambda^* \neq 0 得到 h_i(x^*) = 0

  • xx^*是下面问题的最优解:

x=argminxψL(x,λ,μ)=argminxψf(x)+i=0nλihi(x)+j=0mμjgj(x)x^* = \substack{\arg \min\\x∈\psi}L(x,\lambda^*,\mu^*) =\substack{\arg \min\\x∈\psi} f(x)+\sum_{i=0}^n \lambda^*_i h_i(x) +\sum_{j=0}^m \mu^*_j g_j(x)

通常ψ\psi为全集或xx^*位于ψ\psi内部因此拉格朗日函数L(x,λ,μ)L(x,\lambda,\mu)xx^*处的梯度为0,也就是:

f(x)+i=0nλihi(x)+j=0mμjgj(x)=0\nabla f(x^*)+\sum_{i=0}^n \lambda_i \nabla h_i(x^*) +\sum_{j=0}^m \mu_j \nabla g_j(x^*) = 0

所以KKT条件由以下几个部分组成:

  1. 主问题约束:hi(x)0(i[m])h_{i}(x^*) \leq 0 \quad(i∈[m])gj(x)=0(i[m])g_{j}(x^*) = 0 \quad(i∈[m])
  2. 对偶问题约束:λ0\lambda^* \succeq 0
  3. 互补松弛条件:λhi(x)=0(i[m]) \lambda^* h_{i}(x^*) = 0\quad(i∈[m])
  4. 拉格朗日函数在x∗x^*x∗处的梯度为0:f(x)+i=0nλihi(x)+j=0mμjgj(x)=0\nabla f(x^*)+\sum_{i=0}^n \lambda_i \nabla h_i(x^*) +\sum_{j=0}^m \mu_j \nabla g_j(x^*) = 0

KKT条件具有如下重要性质:

  • 强对偶性成立时,对于任意的优化的问题,KKT条件是最优解的必要条件。
  • 对于凸优化问题,KKT条件是充分条件,即满足KKT条件的解一定是最优解。
  • 对于强对偶性成立的凸优化问题,KKT条件是充要条件,也就是当xx^*是原始问题的最优解当且仅当存在(λ,μ)(\lambda^* ,\mu^*)满足KKT条件。

1.4 支持向量机

给定训练集D={(x1,y1),(x2,y2),...,(xn,yn)}D = \{(x_1,y_1),(x_2,y_2),...,(x_n,y_n)\},其中yi{+1,1}y_i \in \{+1,-1\},支持向量机试图找到一个分界线,把所有的样本以某种规则划分成两部分,得到的线就是划分超平面wTx+b=0w^Tx + b =0,如下图:(来自周志华等老师的 《机器学习理论导引》)

image.png

距离划分超平面最近的几个点叫支持向量,两个异类支持向量到超平面的距离之和为间隔。

假设超平面(w,b)(w,b)能将训练集正确分类,即对于(xi,yi)D(x_i,y_i) \in D,若yi=+1y_i = +1,则有wT+b0w^T+b \geq 0;若yi=1y_i = -1,则有wT+b0w^T+b \leq 0

wT+b+1,yi=+1;wT+b1,yi=1w^T+b \geq +1,y_i = +1;w^T+b \geq -1,y_i = -1

则求解最大间隔问题划分超平面对应于优化问题:

minw,b12w2 \min\limits_{w,b} \frac{1}{2}||w||^2

s.t.(wTx+b)yi1 s.t. (w^Tx+b)y_i \geq 1

求优化问题得到的拉格朗日余子式为:

L(w,b,a)=12w2+i=1mai(1yi(L(w,b,a) = \frac{1}{2}||w||^2 + \sum_{i=1}^m a_i(1-y_i(w^T+b))$

其中拉格朗日乘子ai0a_i \geq 0,然后求L的对w,b的偏导:

w=i=1maixiyiw = \sum_{i=1}^m a_ix_iy_i

i=1maiyi=0 \sum_{i=1}^m a_iy_i = 0

式子联立,消去拉格朗日余子式的w,bw,b可以得到:

minα12i=1mj=1maiajyiyjxiTxji=1mai\min\limits_{\alpha} \frac{1}{2} \sum_{i=1}^m \sum_{j=1}^m a_i a_j y_i y _j x_i^Tx_j - \sum_{i=1}^m a_i

s.t.i=1maiyi=0,ai0s.t. \sum_{i=1}^m a_iy_i = 0, a_i \geq 0

这个过程满足KKT条件:

w=i=1maixiyiw = \sum_{i=1}^m a_ix_iy_i

i=1maiyi=0 \sum_{i=1}^m a_iy_i = 0

ai0a_i \geq 0

((wTxi+b)yi1)0((w^Tx_i+b)y_i - 1) \geq 0

(((wTxi+b)yi1))=0(((w^Tx_i+b)y_i - 1)) = 0

如果样本在二维空间不可分,就升维到更高维的说不定就可分了。 如图:(依旧出自《机器学习导引》)

image.png

从而x映射为ϕ(x)\phi(x),那么主问题会变成:

minw,b12w2 \min\limits_{w,b} \frac{1}{2}||w||^2

s.t.(wTϕ(x)+b)yi1 s.t. (w^T\phi(x)+b)y_i \geq 1

相应的对偶问题会变成

minα12i=1mj=1maiajyiyjϕ(x)iTϕ(x)ji=1mai\min\limits_{\alpha} \frac{1}{2} \sum_{i=1}^m \sum_{j=1}^m a_i a_j y_i y _j \phi(x)_i^T\phi(x)_j - \sum_{i=1}^m a_i

s.t.i=1maiyi=0,ai0s.t. \sum_{i=1}^m a_iy_i = 0, a_i \geq 0

其中ϕ(x)iTϕ(x)j\phi(x)_i^T\phi(x)_j的计算是xix_i xjx_j映射特征空间之后的内积,由于特征空间的维数可能很高,直接计算可能很麻烦,所以需要考虑核函数。

κ(xi,xj)=ϕ(x)iTϕ(x)j\kappa (x_i,x_j) = \phi(x)_i^T\phi(x)_j

xix_i xjx_j在特征空间的内积等于原始样本通过函数κ\kappa计算的结果,这样就不用计算高维甚至无穷维特征空间的内积,所以对偶问题会变成:

minα12i=1mj=1maiajyiyjκ(xi,xj)i=1mai\min\limits_{\alpha} \frac{1}{2} \sum_{i=1}^m \sum_{j=1}^m a_i a_j y_i y _j \kappa(x_i,x_j)- \sum_{i=1}^m a_i

s.t.i=1maiyi=0,ai0s.t. \sum_{i=1}^m a_iy_i = 0, a_i \geq 0

XX为输入空间,κ\kappa是定义在X×XX×X的对称函数,则κ\kappa是和函数当且仅当对于任意数据{x1,x2,...,xn}\{x_1,x_2,...,x_n\}核矩阵KK是一个半正定的n阶方阵Ki,j=κ(xi,xj)K_{i,j} = \kappa(x_i,x_j)

常用核函数如下表(依旧出自《机器学习导引》)

image.png

每个核函数都隐式的定义了一个特征空间,称为再生核希尔伯特空间。特征空间是否适合对模型的性能至关重要。现实生活中很难确定合适的和函数使得训练样本在特征空间中线性可分,有时貌似线性可分的结果是由于过拟合造成的,因此有必要允许模型在少量样本上出错。

因此引入软间隔允许某些样本不满足约束:

(wTψ(x)+b)yi1 (w^T\psi(x)+b)y_i \geq 1

在最大化间隔的同时,不满足约束的样本尽可能少,于是优化的目标可以写为:

minw,b12w2+βi=1mζ0/1(yi(wTψ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \zeta_{0/1}(y_i(w^T\psi(x)+b)-1)

其中β>0\beta > 0是一个常数,ζ0/1(x) \zeta_{0/1}(x)是0/1损失函数。

ζ0/1(x)=I(x<0) \zeta_{0/1} (x) = \mathbb{I}(x < 0)

β\beta为无穷大的时候,minw,b12w2+βi=1mζ0/1(yi(wTψ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \zeta_{0/1}(y_i(w^T \psi(x)+b)-1)这个式子迫使所有样本均满足约束(wTψ(x)+b)yi1 (w^T\psi(x)+b)y_i \geq 1,于是minw,b12w2+βi=1mζ0/1(yi(wTψ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \zeta_{0/1}(y_i(w^T \psi(x)+b)-1)等价于minw,b12w2,s.t.yi(wTψ(x)+b)1\min\limits_{w,b} \frac{1}{2}||w||^2,s.t. y_i(w^T \psi(x)+b) \geq 1,当β\beta为有限值的时候,minw,b12w2+βi=1mζ0/1(yi(wTψ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \zeta_{0/1}(y_i(w^T\psi(x)+b)-1)这个式子可以允许一些样本不满足约束。

由于0/1损失函数非凸不连续,所以minw,b12w2+βi=1mζ0/1(yi(wTψ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \zeta_{0/1}(y_i(w^T \psi(x)+b)-1)不方便求解,银锁支持向量机用hinge损失函数作为替代损失。

ζhinge(x)=max(0,1x)\zeta_{hinge}(x) = max(0,1-x),同时minw,b12w2+βi=1mζ0/1(yi(wTψ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \zeta_{0/1}(y_i(w^T\psi(x)+b)-1)这个式子变为minw,b12w2+βi=1mmax(0,yi(wTϕ(x)+b)1)\min\limits_{w,b} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m max(0,y_i(w^T\phi(x)+b)-1),同时引入松弛变量ξi0\xi_i \geq 0可以继续改写为:

minw,b,ξi12w2+βi=1mξi\min\limits_{w,b,\xi_i} \frac{1}{2}||w||^2 + \beta \sum_{i=1}^m \xi_i

s.t.yi(wTψ(x)+b)1ξis.t. y_i(w^T\psi(x)+b) \geq 1 - \xi_i

ξi0 \xi_i \geq 0

把该问题化为对偶问题为:

minα12i=1mj=1maiajyiyjκ(xi,xj)i=1mai\min\limits_{\alpha} \frac{1}{2} \sum_{i=1}^m \sum_{j=1}^m a_i a_j y_i y _j \kappa(x_i,x_j)- \sum_{i=1}^m a_i

s.t.i=1maiyi=0 s.t. \sum_{i=1}^m a_iy_i = 0

0aiβ 0 \geq a_i \geq \beta