(一)拉格朗日对偶问题(Lagrange duality)

拉格朗日对偶问题(Lagrange duality)

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

1. 原始问题

  假设 f ( x ) , c i ( x ) , h j ( x ) f(x),c_i(x),h_j(x) f(x),ci(x),hj(x)是定义在 R n R^n Rn上的连续可微函数,考虑约束最优化问题:
{ min ⁡ x ∈ R n f ( x ) s . t . c i ( x ) ≤ 0 , i = 1 , 2 , … , k h j ( x ) = 0 , j = 1 , 2 , … , l \begin{cases} \min_{x \in R^n}\quad &f(x) \\ s.t.\quad&c_i(x) \le 0 , i=1,2,\ldots,k\\ &h_j(x) = 0 , j=1,2,\ldots,l \end{cases} minxRns.t.f(x)ci(x)0,i=1,2,,khj(x)=0,j=1,2,,l
  称此约束优化问题为原始优化问题或原始问题。

  现在如果不考虑约束条件,原始问题就是:
min ⁡ x ∈ R n \min_{x \in R^n} xRnmin
  因为假设其连续可微,利用高中的知识,对 f ( x ) f(x) f(x)求导数,然后令导数为 0,就可解出最优解很简单. 但是问题来了,这里有约束条件,必须想办法把约束条件去掉才行, 拉格朗日函数派上用场了。

  首先,引进广义拉格朗日函数(generalized Lagrange function):
L ( x , α , β ) = f ( x ) + ∑ i = 0 k α i c i ( x ) + ∑ j = 1 l β j h j ( x ) \mathcal{L}(x,\alpha,\beta) = f(x) + \sum_{i=0}^k \alpha_ic_i(x) + \sum_{j=1}^l \beta_jh_j(x) L(x,α,β)=f(x)+i=0kαici(x)+j=1lβjhj(x)
  这里, x = ( x ( 1 ) , x ( 2 ) , … , x ( n ) ) ∈ R n x=(x^{(1)},x^{(2)},\ldots,x^{(n)}) \in R^n x=(x(1),x(2),,x(n))Rn α i , β j \alpha_i,\beta_j αi,βj是拉格朗日乘子(其实就是上面函数中的参数而已),特别要求 α i ≥ 0 \alpha_i \ge 0 αi0。考虑 x x x的函数:
θ P ( x ) = max ⁡ α , β : α i ≥ 0 L ( x , α , β ) \theta_P(x) = \max_{\alpha,\beta:\alpha_i \ge 0}\mathcal{L}(x,\alpha,\beta) θP(x)=α,β:αi0maxL(x,α,β)
  这里,下标 P P P表示原始问题。

  假设给定某个 x ​ x​ x,如果 x ​ x​ x 违反原始问题的约束条件,即存在某个 i ​ i​ i 使得 c i ( w ) > 0 ​ c_i(w) > 0​ ci(w)>0 或者存在某个 j ​ j​ j 使得 h j ( w ) ≠ 0 ​ h_j(w) \ne 0​ hj(w)=0,那么就有:
θ P ( x ) = max ⁡ α , β : α i ≥ 0 [ f ( x ) + ∑ i = 0 k α i c i ( x ) + ∑ j = 1 l β j h j ( x ) ] = + ∞ \theta_P(x) = \max_{\alpha,\beta:\alpha_i \ge 0}\left[f(x) + \sum_{i=0}^k \alpha_ic_i(x) + \sum_{j=1}^l \beta_jh_j(x)\right]=+\infty θP(x)=α,β:αi0max[f(x)+i=0kαici(x)+j=1lβjhj(x)]=+
  因为若存在某个 i i i 使得 c i ( w ) > 0 c_i(w) > 0 ci(w)>0,则可以令 α i → + ∞ \alpha_i\rightarrow +\infty αi+,若某个 j j j 使得 h j ( w ) ≠ 0 h_j(w) \ne 0 hj(w)=0,则可令 β j \beta_j βj 使 β j h j ( x ) → + ∞ \beta_jh_j(x) \rightarrow +\infty βjhj(x)+,而将其余各个 α i ,   β j \alpha_i,\ \beta_j αi, βj 均取为0。

  相反,如果 x x x 满足约束条件,则可以得到 θ P ( x )   =   f ( x ) \theta_P(x)\ =\ f(x) θP(x) = f(x)。因此:
θ P ( x ) = { f ( x ) , x 满 足 原 始 问 题 约 束 + ∞ , 其 他 \theta_P(x)= \begin{cases} f(x), &x满足原始问题约束\\ +\infty, &其他 \end{cases} θP(x)={f(x),+,x
  所以如果考虑极小化问题:
min ⁡ x θ P ( x ) = min ⁡ x max ⁡ α , β : α i ≥ 0 L ( x , α , β ) = min ⁡ x f ( x ) \min_x\theta_P(x)=\min_x\max_{\alpha,\beta:\alpha_i\ge0}\mathcal{L}(x,\alpha,\beta)=\min_xf(x) xminθP(x)=xminα,β:αi0maxL(x,α,β)=xminf(x)
  他是与原始最优化问题等价的,即它们有相同的解。问题 min ⁡ x max ⁡ α , β : α i ≥ 0 L ( x , α , β ) \min_x\max_{\alpha,\beta:\alpha_i\ge0}L(x,\alpha,\beta) minxmaxα,β:αi0L(x,α,β) 称为广义拉格朗日函数的极小极大问题。这样一来,就把原始最优化问题表示为广义拉格朗日函数的极小极大问题。为了方便,定义原始问题的最优值
P ∗   =   min ⁡ x θ P ( x ) P^*\ =\ \min_x\theta_P(x) P = xminθP(x)
  称为原始问题的值。

2. 对偶问题

  定义:
θ D ( α , β ) = min ⁡ x L ( x , α , β ) \theta_D(\alpha,\beta)=\min_x\mathcal{L}(x,\alpha,\beta) θD(α,β)=xminL(x,α,β)
  在考虑极大化 θ D ( α , β ) = min ⁡ x L ( x , α , β ) \theta_D(\alpha,\beta)=\min_x\mathcal{L}(x,\alpha,\beta) θD(α,β)=minxL(x,α,β) ,即:
max ⁡ α , β : α i ≥ 0 θ D ( α , β ) = max ⁡ α , β : α i ≥ 0 min ⁡ x L ( x , α , β ) \max_{\alpha,\beta:\alpha_i\ge0}\theta_D(\alpha,\beta)=\max_{\alpha,\beta:\alpha_i\ge0}\min_x\mathcal{L}(x,\alpha,\beta) α,β:αi0maxθD(α,β)=α,β:αi0maxxminL(x,α,β)
  问题 max ⁡ α , β : α i ≥ 0 min ⁡ x L ( x , α , β ) \max_{\alpha,\beta:\alpha_i\ge0}\min_x\mathcal{L}(x,\alpha,\beta) maxα,β:αi0minxL(x,α,β) 被称为广义拉格朗日函数的极大极小问题。

  可以将广义拉格朗日函数的极大极小问题表示为约束最优化问题:
max ⁡ α , β θ D ( α , β ) = max ⁡ α , β   min ⁡ x L ( x , α , β ) \max_{\alpha,\beta}\theta_D(\alpha,\beta)=\max_{\alpha,\beta}\ \min_x\mathcal{L}(x,\alpha,\beta) α,βmaxθD(α,β)=α,βmax xminL(x,α,β)
s . t .      α i ( x ) ≥ 0 ,     i = 1 , 2 , … , k s.t.\ \ \ \ \alpha_i(x) \ge 0 , \ \ \ i=1,2,\ldots,k s.t.    αi(x)0,   i=1,2,,k
  称为原始问题的对偶问题。定义对偶问题的最优值:
d ∗ = max ⁡ α , β : α i ≥ 0 θ D ( α , β ) d^*=\max_{\alpha,\beta:\alpha_i\ge0}\theta_D(\alpha,\beta) d=α,β:αi0maxθD(α,β)

3. 原始问题与对偶问题的关系

定理1:

  若原始问题与对偶问题都有最优值,则
d ∗ = max ⁡ α , β : α i ≥ 0 min ⁡ x L ( x , α , β ) ≤ min ⁡ x max ⁡ α , β : α i ≥ 0 L ( x , α , β ) = p ∗ d^*=\max_{\alpha,\beta:\alpha_i\ge0}\min_x\mathcal{L}(x,\alpha,\beta) \le\min_x\max_{\alpha,\beta:\alpha_i\ge0}\mathcal{L}(x,\alpha,\beta)=p^* d=α,β:αi0maxxminL(x,α,β)xminα,β:αi0maxL(x,α,β)=p

  • 证明:对任意的 α , β \alpha,\beta α,β x x x,有
    θ D ( α , β ) = min ⁡ x L ( x , α , β ) ≤ L ( x , α , β ) ≤ max ⁡ α , β : α i ≥ 0 L ( x , α , β ) = θ P ( x ) \theta_D(\alpha,\beta)=\min_x\mathcal{L}(x,\alpha,\beta)\le \mathcal{L}(x,\alpha,\beta)\le\max_{\alpha,\beta:\alpha_i\ge0}\mathcal{L}(x,\alpha,\beta)=\theta_P(x) θD(α,β)=xminL(x,α,β)L(x,α,β)α,β:αi0maxL(x,α,β)=θP(x)
      即
    θ D ( α , β ) ≤ θ P ( x ) \theta_D(\alpha,\beta)\le\theta_P(x) θD(α,β)θP(x)
      由于原始问题和对偶问题均有最优值,所以
    max ⁡ α , β : α i ≥ 0 θ D ( α , β ) ≤ min ⁡ x θ P ( x ) \max_{\alpha,\beta:\alpha_i\ge0}\theta_D(\alpha,\beta)\le\min_x\theta_P(x) α,β:αi0maxθD(α,β)xminθP(x)
      即
    d ∗ = max ⁡ α , β : α i ≥ 0 min ⁡ x L ( x , α , β ) ≤ min ⁡ x max ⁡ α , β : α i ≥ 0 L ( x , α , β ) = p ∗ d^*=\max_{\alpha,\beta:\alpha_i\ge0}\min_x\mathcal{L}(x,\alpha,\beta)\le\min_x\max_{\alpha,\beta:\alpha_i\ge0}\mathcal{L}(x,\alpha,\beta)=p^* d=α,β:αi0maxxminL(x,α,β)xminα,β:αi0maxL(x,α,β)=p
推论1:

  设 x ∗ x^* x α ∗ , β ∗ \alpha^*,\beta^* α,β 分别是原始问题和对偶问题的可行解,并且 d ∗   =   p ∗ d^*\ =\ p^* d = p ,则 x ∗ x^* x α ∗ , β ∗ \alpha^*,\beta^* α,β 分别是原始问题和对偶问题的最优解。

  在某些条件下,原始问题和对偶问题的最优解相等, d ∗   =   p ∗ d^*\ =\ p^* d = p。这时可以用解对偶问题代替解原始问题。

定理2:

  考虑原始问题和对偶问题。假设函数 f ( x ) f(x) f(x) c i ( x ) c_i(x) ci(x) 是凸函数, h j ( x ) h_j(x) hj(x) 是仿射函数;并且假设不等式约束 c i ( x ) c_i(x) ci(x) 是严格可行的,即存在 x x x ,对所有 i i 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^*\ =\ \mathcal{L}(x^*,\alpha^*,\beta^*) p = d = L(x,α,β)

定理3:(KKT条件)

  对原始问题和对偶问题,假设函数 f ( x ) f(x) f(x) c i ( x ) c_i(x) ci(x) 是凸函数, h j ( x ) h_j(x) hj(x) 是仿射函数,并且不等式约束 c i ( x ) c_i(x) ci(x) 是严格可行的,则 x ∗ x^* x α ∗ , β ∗ \alpha^*,\beta^* α,β 分别是原始问题和对偶问题的解的充分必要条件是 x ∗ , α ∗ , β ∗ x^*,\alpha^*,\beta^* x,α,β 满足下面的 K a r u s h − K u h n − T u c k e r ( K K T ) Karush-Kuhn-Tucker(KKT) KarushKuhnTuckerKKT 条件:
∇ x L ( x ∗ , α ∗ , β ∗ ) = 0 \nabla_xL(x^*,\alpha^*,\beta^*)=0 xL(x,α,β)=0
∇ α L ( x ∗ , α ∗ , β ∗ ) = 0 \nabla_\alpha L(x^*,\alpha^*,\beta^*)=0 αL(x,α,β)=0
∇ β L ( x ∗ , α ∗ , β ∗ ) = 0 \nabla_\beta L(x^*,\alpha^*,\beta^*)=0 βL(x,α,β)=0
α i ∗ c i ( x ∗ ) = 0 , i = 1 , 2 , … , k ( K K T 对 偶 互 补 条 件 ) \alpha_i^*c_i(x^*)=0,\quad i=1,2,\ldots,k(KKT对偶互补条件) αici(x)=0,i=1,2,,k(KKT)
c i ( x ∗ ) ≤ 0 , i = 1 , 2 , … , k c_i(x^*)\le0,\quad i=1,2,\ldots,k ci(x)0,i=1,2,,k
α i ∗ ≥ 0 , i = 1 , 2 , … , k \alpha_i^*\ge0,\quad i=1,2,\ldots,k αi0,i=1,2,,k
h j ( x ∗ ) = 0 , j = 1 , 2 , … , l h_j(x^*)=0,\quad j=1,2,\ldots,l hj(x)=0,j=1,2,,l
  特别指出, α i ∗ ≥ 0 , i = 1 , 2 , … , k \alpha_i^*\ge0,\quad i=1,2,\ldots,k αi0,i=1,2,,k 称为KKT的对偶互补条件。由此条件可知:若 α ∗ > 0 \alpha^*>0 α>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、付费专栏及课程。

余额充值