拉格朗日对偶性 | 《统计学习方法》学习笔记(二十二)

在约束最优化问题中,常常利用拉格朗日对偶性(Lagrange duality)将原始问题转换为对偶问题,通过解对偶问题而得到原始问题的解。该方法应用在许多统计学习方法中,例如,最大熵模型与支持向量机。这里简要叙述拉格朗日对偶性的主要概念和结果。

  1. 原始问题

假设 f ( x ) , c j ( x ) , h j ( x ) f(x),c_j(x),h_j(x) f(x),cj(x),hj(x)是定义在 R n R^n Rn上的连续可微函数。考虑约束最优化问题
m i n x ∈ R n f ( x ) (C.1) min_{x\in R^n}f(x) \tag{C.1} minxRnf(x)(C.1)

s . t . c i ( x ) ≤ 0 , i = 1 , 2 , ⋯   , k (C.2) s.t. \quad c_i(x)\leq 0,\quad i=1,2,\cdots,k \tag{C.2} s.t.ci(x)0,i=1,2,,k(C.2)

h j ( x ) = 0 , j = 1 , 2 , ⋯   , l (C.3) h_j(x)=0,\quad j=1,2,\cdots,l \tag{C.3} hj(x)=0,j=1,2,,l(C.3)

首先,引进广义拉格朗日函数(generalized Lagrange function)
L ( x , α , β ) = f ( x ) + ∑ l = 1 k α i c i ( x ) + ∑ j = 1 l β j h j ( x ) (C.4) L(x,\alpha,\beta)=f(x)+\sum_{l=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x) \tag{C.4} L(x,α,β)=f(x)+l=1kαici(x)+j=1lβjhj(x)(C.4)
这里, x = ( x ( 1 ) , x ( 2 ) , ⋯   , x n ) T ∈ R n x=(x^{(1)},x^{(2)},\cdots,x^{n})^T\in \bold R^n x=(x(1),x(2),,xn)TRn α i , β j \alpha_i,\beta_j αi,βj是拉格朗日乘子, α i ≥ 0 \alpha_i\geq 0 αi0。考虑x的函数:
θ p ( x ) = m a x α , β : α i ≥ 0 L ( x , α , β ) (C.5) \theta_p(x)=max_{\alpha,\beta:\alpha_i\geq 0}L(x,\alpha,\beta) \tag{C.5} θp(x)=maxα,β:αi0L(x,α,β)(C.5)
这里,下标P表示原始问题。

假设给定某个x。如果x违反原始问题的约束条件,即存在某个i使得 c i ( w ) > 0 c_i(w)>0 ci(w)>0或者某个存在某个j使得 h j ( w ) ≠ 0 h_j(w)\neq 0 hj(w)=0,那么就有
θ p = m a x α , β : α i ≥ 0 [ f ( x ) + ∑ i = 1 k a i c i ( x ) + ∑ j = 1 l β j h j ( x ) ] = + ∞ (C.6) \theta_p=max_{\alpha,\beta:\alpha_i\geq 0}[f(x)+\sum_{i=1}^ka_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)]=+\infty \tag{C.6} θp=maxα,β:αi0[f(x)+i=1kaici(x)+j=1lβjhj(x)]=+(C.6)
因为若某个i使约束 c i ( x ) > 0 c_i(x)>0 ci(x)>0,则可令 a i → + ∞ a_i\to +\infty ai+,若某个j使 h j ( x ) ≠ 0 h_j(x)\neq 0 hj(x)=0,则可令 β j \beta_j βj使 β j h j ( x ) → + ∞ \beta_jh_j(x)\to +\infty βjhj(x)+,而将其余各 α i , β j \alpha_i,\beta_j αi,βj均取为0.

相反地,如果x满足约束条件式(C.2)和式(C.3),则由式(C.5)和式(C.4)可知, θ p ( x ) = f ( x ) \theta_p(x)=f(x) θp(x)=f(x)。因此,
θ p ( x ) = { f ( x ) , x 满 足 原 始 问 题 约 束 + ∞ , 其 他 (C.7) \theta_p(x)= \begin{cases} f(x), \quad x满足原始问题约束 \\ +\infty, \quad 其他 \end{cases} \tag{C.7} θp(x)={f(x),x+,(C.7)
所以如果考虑极小化问题
m i n x θ p ( x ) = m i n x m a x α , β ; α i ≥ 0 L ( x , α , β ) (C.8) min_{x}\theta_p(x)=min_xmax_{\alpha,\beta;\alpha_i\geq0}L(x,\alpha,\beta) \tag{C.8} minxθp(x)=minxmaxα,β;αi0L(x,α,β)(C.8)
它是与原始最优化问题(C.1)~ (C.3)等价的,即它们有相同的解。问题 m i n x m a x α , β : α i ≥ 0 L ( x , α , β ) min_xmax_{\alpha,\beta:\alpha_i\geq 0}L(x,\alpha,\beta) minxmaxα,β:αi0L(x,α,β)称为广义拉格朗日函数的极小极大问题。这样一来,就把原始最优化问题表示为广义拉格朗日函数的极小极大问题。为了方便,定义原始问题的最优值
p ∗ = m i n x θ p ( x ) (C.9) p^*=min_x\theta_p(x) \tag{C.9} p=minxθp(x)(C.9)
称为原始问题的值。

  1. 对偶问题

定义
θ D ( α , β ) = m i n x L ( x , α , β ) (C.10) \theta_D(\alpha,\beta)=min_xL(x,\alpha,\beta) \tag{C.10} θD(α,β)=minxL(x,α,β)(C.10)
再考虑极大化 θ D ( α , β ) = m i n x L ( x , α , β ) \theta_D(\alpha,\beta)=min_xL(x,\alpha,\beta) θD(α,β)=minxL(x,α,β),即
m a x α , β : α l ≥ 0 θ D ( α , β ) = m a x α , β : α l ≥ 0 m i n x L ( x , α , β ) (C.11) max_{\alpha,\beta:\alpha_l\geq 0}\theta_D(\alpha,\beta)=max_{\alpha,\beta:\alpha_l\geq 0}min_xL(x,\alpha,\beta) \tag{C.11} maxα,β:αl0θD(α,β)=maxα,β:αl0minxL(x,α,β)(C.11)
问题 m a x α , β : α l ≥ 0 m i n x L ( x , α , β ) max_{\alpha,\beta:\alpha_l\geq 0}min_xL(x,\alpha,\beta) maxα,β:αl0minxL(x,α,β)称为广义拉格朗日函数的极大极小问题。

可以将广义拉格朗日函数的极大极小问题表示为约束最优化问题:
m a x α , β θ D ( α , β ) = m a x α , β m i n x L ( x , α , β ) (C.12) max_{\alpha,\beta}\theta_D(\alpha,\beta)=max_{\alpha,\beta}min_xL(x,\alpha,\beta) \tag{C.12} maxα,βθD(α,β)=maxα,βminxL(x,α,β)(C.12)

s . t . a i ≥ 0 , i = 1 , 2 , ⋯   , k (C.13) s.t.\quad a_i\geq 0,\quad i=1,2,\cdots,k \tag{C.13} s.t.ai0,i=1,2,,k(C.13)

称为原始问题的对偶问题。定义对偶问题的最优值
d ∗ = m a x α , β : α l ≥ 0 θ D ( α , β ) (C.14) d^*=max_{\alpha,\beta:\alpha_l\geq 0}\theta_D(\alpha,\beta) \tag{C.14} d=maxα,β:αl0θD(α,β)(C.14)
称为对偶问题的值。

  1. 原始问题和对偶问题的关系

下面讨论原始问题和对偶问题的关系。

定理C.1 若原始问题和对偶问题都有最优值,则
d ∗ = m a x α , β ; α i ≥ 0 m i n x L ( x , α , β ) ≤ m i n x m a x α , β ; α i ≥ 0 L ( x , α , β ) = p ∗ (C.15) d^*=max_{\alpha,\beta;\alpha_i\geq 0}min_xL(x,\alpha,\beta)\leq min_xmax_{\alpha,\beta;\alpha_i\geq 0}L(x,\alpha,\beta)=p^* \tag{C.15} d=maxα,β;αi0minxL(x,α,β)minxmaxα,β;αi0L(x,α,β)=p(C.15)
证明:由式(C.12)和式(C.5),对任意的 α , β \alpha,\beta α,β x x x,有
t h e t a D ( α , β ) = m i n x L ( x , α , β ) ≤ L ( x , α , β ) ≤ m a x α , β , a j ≥ 0 L ( x , α , β ) = θ p ( x ) theta_D(\alpha,\beta)=min_xL(x,\alpha,\beta)\leq L(x,\alpha,\beta)\leq max_{\alpha,\beta,a_j\geq 0}L(x,\alpha,\beta)=\theta_p(x) thetaD(α,β)=minxL(x,α,β)L(x,α,β)maxα,β,aj0L(x,α,β)=θp(x)

θ D ( α , β ) ≤ θ p ( x ) \theta_D(\alpha,\beta)\leq \theta_p(x) θD(α,β)θp(x)
由于原始问题和对偶问题均由最优值,所以,
m a x α , β ; α i ≥ 0 θ D ( α , β ) ≤ m i n x θ P ( x ) max_{\alpha,\beta;\alpha_i\geq 0}\theta_D(\alpha,\beta)\leq min_x \theta_P(x) maxα,β;αi0θD(α,β)minxθP(x)

d ∗ = m a x α , β ; α i ≥ 0 m i n x L ( x , α , β ) ≤ m i n x m a x α , β ; α i ≥ 0 L ( x , α , β ) = p ∗ d^*=max_{\alpha,\beta;\alpha_i\geq 0}min_xL(x,\alpha,\beta)\leq min_x max_{\alpha,\beta;\alpha_i\geq 0}L(x,\alpha,\beta)=p^* d=maxα,β;αi0minxL(x,α,β)minxmaxα,β;αi0L(x,α,β)=p
推论C.1:设 x ∗ x^* x α ∗ , β ∗ \alpha^*,\beta^* α,β分别是原始问题(C.1)(C.3)和对偶问题(C.12)(C.13)的可行解,并且 d ∗ = p ∗ d^*=p^* d=p,则 x ∗ x^* x α ∗ , β ∗ \alpha^*,\beta^* α,β分别是原始问题和对偶问题的最优解。

在某些条件下,原始问题和对偶问题的最优值相等, d ∗ = p ∗ d^*=p^* d=p。这时可以用解对偶问题代解原始问题。下面以定理的形式叙述有关的重要结论而不予证明。

定理C.2:考虑原始问题(C.1)(C.3)和对偶问题(C.12)(C.13)。假设函数 f ( x ) f(x) f(x) c i ( x ) c_i(x) ci(x)是凸函数, h j ( x ) h_j(x) hj(x)是仿射函数;并且假设不等式约束 c j ( x ) c_j(x) cj(x)是严格可行的,即存在x,对所有i有 c i ( x ) < 0 c_i(x)<0 ci(x)<0,则存在 x ∗ , α ∗ , β ∗ x^*,\alpha^*,\beta^* x,αβ,使 x ∗ x^* x是原始问题的解, α ∗ , β ∗ \alpha^*,\beta^* α,β是对偶问题的解,并且
p ∗ = d ∗ = L ( x ∗ , α ∗ , β ∗ ) p^*=d^*=L(x^*,\alpha^*,\beta^*) p=d=L(x,α,β)
定理C.3:对原始问题(C.1)(C.3)和对偶问题(C.12)(C.13),假设函数 f ( x ) f(x) f(x) c i ( x ) c_i(x) ci(x)是凸函数, h j ( x ) h_j(x) hj(x)是仿射函数;并且假设不等式约束 c j ( x ) c_j(x) cj(x)是严格可行的,则 x ∗ x^* x α ∗ , β ∗ \alpha^*,\beta^* α,β分别是原始问题和对偶问题的解的充分必要条件是 x ∗ , α ∗ , β ∗ x^*,\alpha^*,\beta^* x,α,β满足下面的Karush-Kuhn-Tucker(KKT)条件:
∇ x L ( x ∗ , α ∗ , β ∗ ) = 0 ∇ α L ( x ∗ , α ∗ , β ∗ ) = 0 ∇ β L ( x ∗ , α ∗ , β ∗ ) = 0 a i ∗ c i ( x ∗ ) = 0 , i = 1 , 2 , ⋯   , k ( C . 16 ) c i ( x ∗ ) ≤ 0 , i = 1 , 2 , ⋯   , k a i ∗ ≥ 0 , i = 1 , 2 , ⋯   , k h j ( x ∗ ) = 0 , j = 1 , 2 , ⋯   , l \nabla_xL(x^*,\alpha^*,\beta^*)=0 \\ \nabla_\alpha L(x^*,\alpha^*,\beta^*)=0 \\ \nabla_\beta L(x^*,\alpha^*,\beta^*)=0 \\ a_i^*c_i(x^*)=0, \quad i=1,2,\cdots, k \quad\quad(C.16)\\ c_i(x^*)\leq 0, \quad i=1,2,\cdots,k \\ a_i^* \geq 0, i=1,2,\cdots,k \\ h_j(x^*)=0, \quad j=1,2,\cdots,l xL(x,α,β)=0αL(x,α,β)=0βL(x,α,β)=0aici(x)=0i=1,2,,k(C.16)ci(x)0,i=1,2,,kai0,i=1,2,,khj(x)=0,j=1,2,,l
特别指出,式(C.16)称为KKT的对偶互补条件。由此条件可知:若 a i ∗ > 0 a_i^*>0 ai>0,则 c i ( x ∗ ) = 0 c_i(x^*)=0 ci(x)=0.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值