ML—拉格朗日对偶和KKT条件

zhengyi zhang
Tianjin Key Laboratory of Cognitive Computing and Application
Tianjin University
Oct 23, 2015

本文基于斯坦福Andrew NG讲义和李航统计学习方法。

一 拉格朗日乘数法

考虑如下等式约束优化问题。
min ⁡ w f ( w ) h i ( w ) = 0 , i = 1 , 2 , . . . , l (0) \min_w f(w) \\ h_i(w)=0,i=1,2,...,l \tag{0} wminf(w)hi(w)=0,i=1,2,...,l(0)

在运筹学中有很多这样的例子划归到动态规划中。在数学分析中,一般是采用拉格朗日乘数法求解。
L ( w , β ) = f ( w ) + ∑ i = 1 l β i h i ( w ) (1) L(w,\beta)=f(w)+\sum_{i=1}^{l}\beta_ih_i(w) \tag{1} L(w,β)=f(w)+i=1lβihi(w)(1)
其中 β i \beta_i βi叫做拉格朗日乘数。
这里通过求解如下方程组得到 w , β w,\beta w,β
∂ L ∂ w i = 0 ∂ L ∂ β i = 0 (2) \frac{∂L}{∂w_i}=0 \\\frac{∂L}{∂\beta_i}=0 \tag{2} wiL=0βiL=0(2)

二 广义拉格朗日乘数法

考虑如下带不等式的约束优化问题。
min ⁡ w f ( w ) g i ( w ) ≤ 0 , i = 1 , 2 , . . . , k   h i ( w ) = 0 , i = 1 , 2 , . . . , l .   (3) \min_w f(w) \\g_i(w)\leq0,i=1,2,...,k  \\h_i(w)=0,i=1,2,...,l.  \tag{3} wminf(w)gi(w)0,i=1,2,...,k hi(w)=0,i=1,2,...,l. (3)
对于符合上述标准形式的约束优化问题可以采用广义拉格朗日乘数法求解。
L ( w , α , β ) = f ( w ) + ∑ i = 1 k α i g i ( w ) + ∑ i = 1 l β i h i ( w ) (4) L(w,\alpha,\beta)=f(w)+\sum_{i=1}^{k}\alpha_ig_i(w)+\sum_{i=1}^{l}\beta_ih_i(w)\tag{4} L(w,α,β)=f(w)+i=1kαigi(w)+i=1lβihi(w)(4)
注:在这里我们主要为了导出他的对偶问题以及在什么情况下可以用通过它的对偶问题来对元问题进行求解,因此这里我们不做偏导求解。
在这里为了得到和公式(1)等价的问题,我们定义
θ p ( w ) = max ⁡ α , β : α i ≥ 0 L ( w , α , β ) θ p ( w ) = max ⁡ α , β : α i ≥ 0 f ( w ) + ∑ i = 1 k α i g i ( w ) + ∑ i = 1 l β i h i ( w ) (5) \theta_p(w)=\max_{\alpha,\beta:\alpha_i\geq0}L(w,\alpha,\beta) \\\theta_p(w)=\max_{\alpha,\beta:\alpha_i\geq0}f(w)+\sum_{i=1}^{k}\alpha_ig_i(w)+\sum_{i=1}^{l}\beta_ih_i(w)\tag{5} θp(w)=α,β:αi0maxL(w,α,β)θp(w)=α,β:αi0maxf(w)+i=1kαigi(w)+i=1lβihi(w)(5)
这里下标 p p p表示这是原问题的表述。在这里可以验证如果 w w w违反公式(1)的任何一个约束就会有 θ p ( w ) = ∞ \theta_p(w)=\infty θp(w)=
因此有
θ p ( w ) = { f ( w ) w 满 足 公 式 ( 1 ) 里 面 的 约 束 ∞ o t h e r w i s e (6) \theta_p(w)= \left\{ \begin{aligned} f(w) && w满足公式(1)里面的约束\\ \infty &&otherwise \end{aligned} \right. \tag{6} θp(w)={f(w)w(1)otherwise(6)
因此公式1可以化为最小化问题
min ⁡ w θ p ( w ) min ⁡ w θ p ( w ) = min ⁡ w max ⁡ α , β : α i ≥ 0 L ( w , α , β ) (7) \min_w\theta_p(w) \\\min_w\theta_p(w)=\min_w\max_{\alpha,\beta:\alpha_i\geq0}L(w,\alpha,\beta)\tag{7} wminθp(w)wminθp(w)=wminα,β:αi0maxL(w,α,β)(7)
不难理解公式(5)是公式(1)的另一种描述,很显然它们也应该具有相同的解。

max ⁡ min ⁡ 和 min ⁡ max ⁡ 对 偶 问 题 \max \min和\min\max对偶问题 maxminminmax

在引入对偶问题前我们先来考虑这样一个问题
假设 f ( x , y ) 是 定 义 在 x 1 ≤ x ≤ x 2 , y 1 ≤ y ≤ y 2 f(x,y)是定义在x_1\leq x\leq x_2,y_1\leq y\leq y_2 f(x,y)x1xx2,y1yy2 上的任意一个函数。
我们来比较 max ⁡ y min ⁡ x f ( x , y ) \max_y\min_xf(x,y) maxyminxf(x,y) min ⁡ x max ⁡ y f ( x , y ) \min_x\max_yf(x,y) minxmaxyf(x,y) 的大小
假设
F 1 ( x ) = max ⁡ y f ( x , y ) F 2 ( y ) = min ⁡ x f ( x , y ) (8) F_1(x)=\max_yf(x,y)\\ F_2(y)=\min_xf(x,y) \tag{8} F1(x)=ymaxf(x,y)F2(y)=xminf(x,y)(8)
很容易得到对定义域内的任意 x , y x,y x,y
F 2 ( y ) ≤ f ( x , y ) ≤ F 1 ( x ) (9) F_2(y)\leq f(x,y)\leq F_1(x) \tag{9} F2(y)f(x,y)F1(x)(9)
所以对定义域内的任意 x , y x,y x,y
max ⁡ y F 2 ( y ) ≤ min ⁡ x F 1 ( x ) (10) \max_yF_2(y)\leq \min_xF_1(x) \tag{10} ymaxF2(y)xminF1(x)(10)

max ⁡ y min ⁡ x f ( x , y ) ≤ min ⁡ x max ⁡ y f ( x , y ) (11) \max_y\min_xf(x,y)\leq \min_x\max_yf(x,y)\tag{11} ymaxxminf(x,y)xminymaxf(x,y)(11)

四 对偶问题的定义

公式(6)给出了原问题和对偶问题的最优解之间的关系。在接下来的KKT条件部分,我们将会看到在什么情况下他们之间具有相同的最优值和最优解。在这一部分我们先说一些关于对偶问题的定义。
我们用符号
θ D ( α , β ) = min ⁡ w L ( w , α , β ) (12) \theta_D(\alpha,\beta)=\min_wL(w,\alpha,\beta) \tag{12} θD(α,β)=wminL(w,α,β)(12)
这样公式(5)的对偶问题即可描述为
max ⁡ α , β : α i ≥ 0 θ D ( w ) = max ⁡ α , β : α i ≥ 0 min ⁡ w L ( w , α , β ) (13) \max_{\alpha,\beta:\alpha_i\geq0}\theta_D(w)=\max_{\alpha,\beta:\alpha_i\geq0}\min_wL(w,\alpha,\beta) \tag{13} α,β:αi0maxθD(w)=α,β:αi0maxwminL(w,α,β)(13)
p ∗ p^* p 为原问题的最优解, d ∗ d^* d 为对偶问题的最优解,即
p ∗ = min ⁡ w θ p ( w ) = min ⁡ w max ⁡ α , β : α i ≥ 0 L ( w , α , β ) d ∗ = max ⁡ α , β : α i ≥ 0 θ D ( w ) = max ⁡ α , β : α i ≥ 0 min ⁡ w L ( w , α , β ) (14) p^*=\min_w\theta_p(w)=\min_w\max_{\alpha,\beta:\alpha_i\geq0}L(w,\alpha,\beta) \\d^*=\max_{\alpha,\beta:\alpha_i\geq0}\theta_D(w)=\max_{\alpha,\beta:\alpha_i\geq0}\min_wL(w,\alpha,\beta) \tag{14} p=wminθp(w)=wminα,β:αi0maxL(w,α,β)d=α,β:αi0maxθD(w)=α,β:αi0maxwminL(w,α,β)(14)
根据公式(6)有 d ∗ ≤ p ∗ d^*\leq p^* dp

五 KKT条件

对于公式(1):
KKT条件前提:
1 f ( w ) , g i ( w ) f(w),g_i(w) f(w),gi(w) 是凸函数(Hessian矩阵半正定)
2 h i ( w ) h_i(w) hi(w) 是仿射函数(线性函数)
3 存在 w w w是的对所有的 g i ( w ) g_i(w) gi(w) 严格的小于0(Slater condition 强对偶充分条件)

KKT条件结论:
1 一定存在 w ∗ , α ∗ , β ∗ w^*,\alpha^*,\beta^* w,α,β 使得 w ∗ w^* w 是原问题的解 α ∗ , β ∗ \alpha^*,\beta^* α,β 是对偶问题的解。并且有 d ∗ = p ∗ d^*= p^* d=p
2 w ∗ , α ∗ , β ∗ w^*,\alpha^*,\beta^* w,α,β满足下面5个等式
∂ L ( w ∗ , α ∗ , β ∗ ) ∂ w i = 0 , i = 1 , 2 , . . . , n ∂ L ( w ∗ , α ∗ , β ∗ ) ∂ β i = 0 , i = 1 , 2 , . . . , l α i ∗ g i ( w ∗ ) = 0 , i = 1 , 2 , . . . , k g i ( w ∗ ) ≤ 0 , i = 1 , 2 , . . . , k α ∗ ≥ 0 , i = 1 , 2 , . . . , k (15) \frac{∂L(w^*,\alpha^*,\beta^*)}{∂w_i}=0,i=1,2,...,n\\ \frac{∂L(w^*,\alpha^*,\beta^*)}{∂\beta_i}=0,i=1,2,...,l\\ \alpha_i^*g_i(w^*)=0,i=1,2,...,k\\ g_i(w^*)\leq0,i=1,2,...,k\\ \alpha^*\geq0,i=1,2,...,k\tag{15} wiL(w,α,β)=0,i=1,2,...,nβiL(w,α,β)=0,i=1,2,...,lαigi(w)=0,i=1,2,...,kgi(w)0,i=1,2,...,kα0,i=1,2,...,k(15)

同时,反过来若存在 w ∗ , α ∗ , β ∗ w^*,\alpha^*,\beta^* w,α,β 满足KKT条件的5个式子,那么他们也是原问题和对偶问题的最优解

你可能感兴趣的:(机器学习)