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

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

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

1. 原始问题

  假设 f(x),ci(x),hj(x) f ( x ) , c i ( x ) , h j ( x ) 是定义在 Rn R n 上的连续可微函数,考虑约束最优化问题:

minxRns.t.f(x)ci(x)0,i=1,2,,khj(x)=0,j=1,2,,k(4)(5)(6) (4) min x ∈ R n f ( x ) (5) s . t . c i ( x ) ≤ 0 , i = 1 , 2 , … , k (6) h j ( x ) = 0 , j = 1 , 2 , … , k

  称此约束优化问题为原始优化问题或原始问题。

  现在如果不考虑约束条件,原始问题就是:

minxRn min x ∈ R n

  因为假设其连续可微,利用高中的知识,对 f(x) f ( x ) 求导数,然后令导数为 0,就可解出最优解很简单. 但是问题来了,这里有约束条件,必须想办法把约束条件去掉才行, 拉格朗日函数派上用场了。

  首先,引进广义拉格朗日函数(generalized Lagrange function):

L(x,α,β)=f(x)+i=0kαici(x)+j=1lβjhj(x) L ( x , α , β ) = f ( x ) + ∑ i = 0 k α i c i ( x ) + ∑ j = 1 l β j h j ( x )

  这里, x=(x(1),x(2),,x(n))Rn x = ( x ( 1 ) , x ( 2 ) , … , x ( n ) ) ∈ R n αi,βj α i , β j 是拉格朗日乘子(其实就是上面函数中的参数而已),特别要求 αi0 α i ≥ 0 。考虑 x x 的函数:
θP(x)=maxα,β:αi0L(x,α,β) θ P ( x ) = max α , β : α i ≥ 0 L ( x , α , β )

  这里,下标 P P 表示原始问题。

  假设给定某个 x x ​ ,如果 x x ​ 违反原始问题的约束条件,即存在某个 i i ​ 使得 ci(w)>0 c i ( w ) > 0 ​ 或者存在某个 j j ​ 使得 hj(w)0 h j ( w ) ≠ 0 ​ ,那么就有:

θP(x)=maxα,β:αi0[f(x)+i=0kαici(x)+j=1lβjhj(x)]=+ θ P ( x ) = max α , β : α i ≥ 0 [ f ( x ) + ∑ i = 0 k α i c i ( x ) + ∑ j = 1 l β j h j ( x ) ] = + ∞

  因为若存在某个 i i 使得 ci(w)>0 c i ( w ) > 0 ,则可以令 αi+ α i → + ∞ ,若某个 j j 使得 hj(w)0 h j ( w ) ≠ 0 ,则可令 βj β j 使 βjhj(x)+ β j h j ( x ) → + ∞ ,而将其余各个 αi, βj α i ,   β j 均取为0。

  相反,如果 x x 满足约束条件,则可以得到 θP(x) = f(x) θ P ( x )   =   f ( x ) 。因此:

θP(x)={f(x),+,x θ P ( x ) = { f ( x ) , x 满 足 原 始 问 题 约 束 + ∞ , 其 他

  所以如果考虑极小化问题:
minxθP(x)=minxmaxα,β:αi0L(x,α,β)=minxf(x) min x θ P ( x ) = min x max α , β : α i ≥ 0 L ( x , α , β ) = min x f ( x )

  他是与原始最优化问题等价的,即它们有相同的解。问题 minxmaxα,β:αi0L(x,α,β) min x max α , β : α i ≥ 0 L ( x , α , β ) 称为广义拉格朗日函数的极小极大问题。这样一来,就把原始最优化问题表示为广义拉格朗日函数的极小极大问题。为了方便,定义原始问题的最优值
P = minxθP(x) P ∗   =   min x θ P ( x )

  称为原始问题的值。

2. 对偶问题

  定义:

θD(α,β)=minxL(x,α,β) θ D ( α , β ) = min x L ( x , α , β )

  在考虑极大化 θD(α,β)=minxL(x,α,β) θ D ( α , β ) = min x L ( x , α , β ) ,即:
maxα,β:αi0θD(α,β)=maxα,β:αi0minxL(x,α,β) max α , β : α i ≥ 0 θ D ( α , β ) = max α , β : α i ≥ 0 min x L ( x , α , β )

  问题 maxα,β:αi0minxL(x,α,β) max α , β : α i ≥ 0 min x L ( x , α , β ) 被称为广义拉格朗日函数的极大极小问题。

  可以将广义拉格朗日函数的极大极小问题表示为约束最优化问题:

maxα,βθD(α,β)=maxα,β minxL(x,α,β) max α , β θ D ( α , β ) = max α , β   min x L ( x , α , β )

s.t.    αi(x)0,   i=1,2,,k s . t .         α i ( x ) ≥ 0 ,       i = 1 , 2 , … , k

  称为原始问题的对偶问题。定义对偶问题的最优值:
d=maxα,β:αi0θD(α,β) d ∗ = max α , β : α i ≥ 0 θ D ( α , β )

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

定理1:

  若原始问题与对偶问题都有最优值,则

d=maxα,β:αi0minxL(x,α,β)minxmaxα,β:αi0L(x,α,β)=p d ∗ = max α , β : α i ≥ 0 min x L ( x , α , β ) ≤ min x max α , β : α i ≥ 0 L ( x , α , β ) = p ∗

  • 证明:对任意的 α,β α , β x x ,有
    θD(α,β)=minxL(x,α,β)L(x,α,β)maxα,β:αi0L(x,α,β)=θP(x) θ D ( α , β ) = min x L ( x , α , β ) ≤ L ( x , α , β ) ≤ max α , β : α i ≥ 0 L ( x , α , β ) = θ P ( x )

      即
    θD(α,β)θP(x) θ D ( α , β ) ≤ θ P ( x )

      由于原始问题和对偶问题均有最优值,所以
    maxα,β:αi0θD(α,β)minxθP(x) max α , β : α i ≥ 0 θ D ( α , β ) ≤ min x θ P ( x )

      即
    d=maxα,β:αi0minxL(x,α,β)minxmaxα,β:αi0L(x,α,β)=p d ∗ = max α , β : α i ≥ 0 min x L ( x , α , β ) ≤ min x max α , β : α i ≥ 0 L ( x , α , β ) = p ∗

推论1:

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

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

定理2:

  考虑原始问题和对偶问题。假设函数 f(x) f ( x ) ci(x) c i ( x ) 是凸函数, hj(x) h j ( x ) 是仿射函数;并且假设不等式约束 ci(x) c i ( x ) 是严格可行的,即存在 x x ,对所有 i i ci(x)<0 c i ( x ) < 0 ,则存在 x,α,β x ∗ , α ∗ , β ∗ ,使 x x ∗ 是原始问题的解, α,β α ∗ , β ∗ 是对偶问题的解,并且

p = d = L(x,α,β) p ∗   =   d ∗   =   L ( x ∗ , α ∗ , β ∗ )

定理3:(KKT条件)

  对原始问题和对偶问题,假设函数 f(x) f ( x ) ci(x) c i ( x ) 是凸函数, hj(x) h j ( x ) 是仿射函数,并且不等式约束 ci(x) c i ( x ) 是严格可行的,则 x x ∗ α,β α ∗ , β ∗ 分别是原始问题和对偶问题的解的充分必要条件是 x,α,β x ∗ , α ∗ , β ∗ 满足下面的 KarushKuhnTuckerKKT K a r u s h − K u h n − T u c k e r ( K K T ) 条件:

xL(x,α,β)=0 ∇ x L ( x ∗ , α ∗ , β ∗ ) = 0

αL(x,α,β)=0 ∇ α L ( x ∗ , α ∗ , β ∗ ) = 0

βL(x,α,β)=0 ∇ β L ( x ∗ , α ∗ , β ∗ ) = 0

αici(x)=0,i=1,2,,k(KKT) α i ∗ c i ( x ∗ ) = 0 , i = 1 , 2 , … , k ( K K T 对 偶 互 补 条 件 )

ci(x)0,i=1,2,,k c i ( x ∗ ) ≤ 0 , i = 1 , 2 , … , k

αi0,i=1,2,,k α i ∗ ≥ 0 , i = 1 , 2 , … , k

hj(x)=0,j=1,2,,l h j ( x ∗ ) = 0 , j = 1 , 2 , … , l

  特别指出, αi0,i=1,2,,k α i ∗ ≥ 0 , i = 1 , 2 , … , k 称为KKT的对偶互补条件。由此条件可知:若 α>0 α ∗ > 0 ,则 ci(x)=0 c i ( x ∗ ) = 0

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