拉格朗日对偶性
在约束最优化问题中,常常利用拉格朗日对偶性(Lagrange duaiity)将原始问题转化为对偶问题,通过解对偶问题而得到原始问题的解。该方法应用在许多统计学习方法中,如最大熵模型与支持向量机。
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
\mathbf{R}^n
Rn上的连续可微函数,考虑约束最优化问题:
(1)
min
x
∈
R
n
f
(
x
)
\min_{x\in\mathbf{R}^n}f(x) \tag{1}
x∈Rnminf(x)(1)
(2)
s
.
t
.
c
i
(
x
)
≤
0
,
i
=
1
,
2
,
.
.
.
,
k
s.t. \quad c_i(x)\leq0, i=1,2,...,k \tag{2}
s.t.ci(x)≤0,i=1,2,...,k(2)
(3)
h
j
(
x
)
=
0
,
j
=
1
,
2
,
.
.
.
,
l
\qquad h_j(x)=0,j=1,2,...,l \tag{3}
hj(x)=0,j=1,2,...,l(3)称此约束最优化问题为原始最优化问题或原始问题。
引入朗格朗日函数:
(4)
L
(
x
,
α
,
β
)
=
f
(
x
)
+
∑
i
=
1
k
α
i
c
i
(
x
)
+
∑
j
=
1
l
β
j
h
j
(
x
)
L(x,\alpha,\beta)=f(x)+\sum_{i=1}^{k}\alpha_ic_i(x)+\sum_{j=1}^{l}\beta_jh_j(x) \tag{4}
L(x,α,β)=f(x)+i=1∑kαici(x)+j=1∑lβjhj(x)(4)这里,
x
=
(
x
(
1
)
,
x
(
2
)
,
.
.
.
,
x
(
n
)
)
T
∈
R
n
,
α
i
,
β
j
x=(x^{(1)},x^{(2)},...,x^{(n)})^T\in\mathbf{R}^n,\alpha_i,\beta_j
x=(x(1),x(2),...,x(n))T∈Rn,αi,βj是朗格朗日乘子,
α
i
≥
0
\alpha_i\geq0
αi≥0。考虑
x
x
x的函数:
(5)
θ
P
(
x
)
=
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
=
{
f
(
x
)
,
x
满
足
原
始
问
题
约
束
+
∞
其
他
\theta_P(x)=\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=\left\{\begin{matrix} & f(x), & x满足原始问题约束\\ & +\infty &其他 \end{matrix}\right. \tag{5}
θP(x)=α,β:αi≥0maxL(x,α,β)={f(x),+∞x满足原始问题约束其他(5)这里下标
P
P
P表示原始问题。
公式5说明:
假如给定某个 x x x,如果 x x x违反原始问题的约束条件,即存在某个 i i i使得 c i ( x ) > 0 c_i(x)>0 ci(x)>0或者存在某个 j j j使得 h j ( x ) ≠ 0 h_j(x)\neq0 hj(x)̸=0。当 c i ( x ) > 0 c_i(x)>0 ci(x)>0且 h j ( x ) ≠ 0 h_j(x)\neq0 hj(x)̸=0时,令 α i → + ∞ , β j h j ( x ) → + ∞ \alpha_i\rightarrow+\infin,\beta_jh_j(x)\rightarrow+\infin αi→+∞,βjhj(x)→+∞,而其余各 α i , β j \alpha_i,\beta_j αi,βj均取0,此时
θ P ( x ) = max α , β : α i ≥ 0 L ( x , α , β ) = + ∞ \theta_P(x)=\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=+\infin θP(x)=α,β:αi≥0maxL(x,α,β)=+∞相反地,如果 x x x满足约束条件式2和式3,则:
m a x ( ∑ i = 1 k α i c i ( x ) + ∑ j = 1 l β j h j ( x ) ) = 0 max(\sum_{i=1}^{k}\alpha_ic_i(x)+\sum_{j=1}^{l}\beta_jh_j(x))=0 max(i=1∑kαici(x)+j=1∑lβjhj(x))=0所以
θ P ( x ) = max α , β : α i ≥ 0 L ( x , α , β ) = f ( x ) \theta_P(x)=\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=f(x) θP(x)=α,β:αi≥0maxL(x,α,β)=f(x)因此,原始问题(式1~3)可以转化为:
(6) min x θ P ( x ) = min x max α , β : α i ≥ 0 L ( x , α , β ) \min_{x}\theta_P(x)=\min_{x}\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta) \tag{6} xminθP(x)=xminα,β:αi≥0maxL(x,α,β)(6)它是与原始问题等价的,即它们有相同的解。问题
min x max α , β : α i ≥ 0 L ( x , α , β ) \min_{x}\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta) xminα,β:αi≥0maxL(x,α,β)称为广义拉格朗日函数的极小极大问题。这样一来,就把原始最优化问题表示为广义拉格朗日函数的极小极大问题。为了方便,定义原始问题的最优解值为:
(7) p ∗ = min x θ P ( x ) p^*=\min_x\theta_P(x) \tag{7} p∗=xminθP(x)(7)
2.对偶问题
定义
(8)
θ
D
(
α
,
β
)
=
min
x
L
(
x
,
α
,
β
)
\theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta) \tag{8}
θD(α,β)=xminL(x,α,β)(8)再考虑极大化
θ
D
(
α
,
β
)
\theta_D(\alpha,\beta)
θD(α,β),即
(9)
max
α
,
β
:
α
i
≥
0
θ
D
(
α
,
β
)
=
max
α
,
β
:
α
i
≥
0
min
x
L
(
x
,
α
,
β
)
\max_{\alpha,\beta:\alpha_i\geq0}\theta_D(\alpha,\beta)=\max_{\alpha,\beta:\alpha_i\geq0}\min_xL(x,\alpha,\beta) \tag{9}
α,β:αi≥0maxθD(α,β)=α,β:αi≥0maxxminL(x,α,β)(9)称为广义拉格朗日函数的极大极小问题,表示为约束最优化问题:
(10)
max
α
,
β
θ
D
(
α
,
β
)
=
max
α
,
β
min
x
L
(
x
,
α
,
β
)
\max_{\alpha,\beta}\theta_D(\alpha,\beta)=\max_{\alpha,\beta}\min_xL(x,\alpha,\beta) \tag{10}
α,βmaxθD(α,β)=α,βmaxxminL(x,α,β)(10)
(11)
s
.
t
.
α
i
≥
0
,
i
=
1
,
2
,
.
.
.
,
k
s.t. \quad \alpha_i\geq0,i=1,2,...,k \tag{11}
s.t.αi≥0,i=1,2,...,k(11)称为原始问题的对偶问题,定义对偶问题的最优值为:
(12)
d
∗
=
max
α
,
β
:
α
i
≥
0
θ
D
(
α
,
β
)
d^*=\max_{\alpha,\beta:\alpha_i\geq0}\theta_D(\alpha,\beta) \tag{12}
d∗=α,β:αi≥0maxθD(α,β)(12)可以看出原始问题与对偶问题的变量并不相同,对于原始问题,它的变量是
x
x
x,而对于对偶问题,它的变量是
α
,
β
\alpha,\beta
α,β。这两个问题并不等价,有时可能相差甚远。可以理解为慢班中学习最好的学生都没有快班中学习最差的学生学习好(当然,这不一定是事实,只是一个比喻)。
3.原始问题与对偶问题的关系
对偶函数可以理解为给原始函数找了一个下界,在原始函数计算困难的时候,可以通过解对偶函数来得到一个近似的值。并且在函数满足一定条件的时候,对偶函数的解与原始函数的解是等价的。
定理1 若原始问题与对偶问题都有最优值,则
(13)
d
∗
=
max
α
,
β
:
α
i
≥
0
min
x
L
(
x
,
α
,
β
)
≤
min
x
max
α
,
β
:
α
i
≥
0
L
(
x
,
α
,
β
)
=
p
∗
d^*=\max_{\alpha,\beta:\alpha_i\geq0}\min_xL(x,\alpha,\beta)\leq \min_{x}\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=p^* \tag{13}
d∗=α,β:αi≥0maxxminL(x,α,β)≤xminα,β:αi≥0maxL(x,α,β)=p∗(13)
证明:对任意的 α , β , x \alpha,\beta,x α,β,x,有
θ D ( α , β ) = min x L ( x , α , β ) ≤ L ( x , α , β ) ≤ max α , β : α i ≥ 0 L ( x , α , β ) = θ P ( x ) \theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta)\leq L(x,\alpha,\beta)\leq \max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=\theta_P(x) θD(α,β)=xminL(x,α,β)≤L(x,α,β)≤α,β:αi≥0maxL(x,α,β)=θP(x)即
(14) θ D ( α , β ) ≤ θ P ( x ) \theta_D(\alpha,\beta)\leq \theta_P(x) \tag{14} θD(α,β)≤θP(x)(14)由于原始问题与对偶问题都有最优值( θ D ( α , β ) \theta_D(\alpha,\beta) θD(α,β)可以理解为慢班中的学生, θ P ( x ) \theta_P(x) θP(x)可以理解为快班中的学生,那么慢班中学习最好的学生都不一定有快班中学习最差的学生学习好),所以
max α , β : α i ≥ 0 θ D ( α , β ) ≤ min x θ P ( x ) \max_{\alpha,\beta:\alpha_i\geq0}\theta_D(\alpha,\beta)\leq \min_x\theta_P(x) α,β:αi≥0maxθ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\geq0}\min_xL(x,\alpha,\beta)\leq \min_{x}\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)=p^* d∗=α,β:αi≥0maxxminL(x,α,β)≤xminα,β:αi≥0maxL(x,α,β)=p∗
这个性质便是弱对偶性( weak duality )。弱对偶性对任何优化问题都成立,这似乎是显然的,因为这个下界并不严格,有时候甚至取到非常小,对原始问题的解没多大帮助。既有弱对偶性,那么便有强对偶性,强对偶性是指
d
∗
=
p
∗
d^* = p^*
d∗=p∗
定理2 考虑原始问题式1-3和对偶问题式10-11,假设函数
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 (slater条件),则存在
x
∗
,
α
∗
,
β
∗
x^*,\alpha^*,\beta^*
x∗,α∗,β∗,使
x
∗
x^*
x∗是原始问题的解,
α
∗
,
β
∗
\alpha^*,\beta^*
α∗,β∗是对偶问题的解,并且
(15)
p
∗
=
d
∗
=
L
(
x
∗
,
α
∗
,
β
∗
)
p^*=d^*=L(x^*,\alpha^*,\beta^*) \tag{15}
p∗=d∗=L(x∗,α∗,β∗)(15)
定理3 考虑原始问题式1-3和对偶问题式10-11,假设函数
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 (slater条件),则
x
∗
和
α
∗
,
β
∗
x^*和\alpha^*,\beta^*
x∗和α∗,β∗分别是原始问题和对偶问题的解的充分必要条件是
x
∗
,
α
∗
,
β
∗
x^*,\alpha^*,\beta^*
x∗,α∗,β∗满足下面的**Karush-Kuhn-Tucker(KKT)**条件:
(16)
▽
x
L
(
x
∗
,
α
∗
,
β
∗
)
=
0
\bigtriangledown_xL(x^*,\alpha^*,\beta^*)=0 \tag{16}
▽xL(x∗,α∗,β∗)=0(16)
(17)
▽
α
L
(
x
∗
,
α
∗
,
β
∗
)
=
0
\bigtriangledown_{\alpha}L(x^*,\alpha^*,\beta^*)=0 \tag{17}
▽αL(x∗,α∗,β∗)=0(17)
(18)
▽
β
L
(
x
∗
,
α
∗
,
β
∗
)
=
0
\bigtriangledown_{\beta}L(x^*,\alpha^*,\beta^*)=0 \tag{18}
▽βL(x∗,α∗,β∗)=0(18)
(19)
α
i
∗
c
i
(
x
∗
)
=
0
,
i
=
1
,
2
,
.
.
.
,
k
\alpha_i^*c_i(x^*)=0,\quad i=1,2,...,k \tag{19}
αi∗ci(x∗)=0,i=1,2,...,k(19)
(20)
c
i
(
x
∗
)
≤
0
,
i
=
1
,
2
,
.
.
.
,
k
c_i(x^*)\leq0,\quad i=1,2,...,k \tag{20}
ci(x∗)≤0,i=1,2,...,k(20)
(21)
α
i
∗
≥
0
,
i
=
1
,
2
,
.
.
.
,
k
\alpha_i^*\geq0, \quad i=1,2,...,k \tag{21}
αi∗≥0,i=1,2,...,k(21)
(22)
h
j
(
x
∗
)
=
0
,
j
=
1
,
2
,
.
.
.
,
l
h_j(x^*)=0, j=1,2,...,l \tag{22}
hj(x∗)=0,j=1,2,...,l(22)
特别指出,式19称为KKT的对偶互补条件。由此条件可知:若
α
i
∗
>
0
\alpha_i^*>0
αi∗>0,则
c
i
(
x
∗
)
=
0
c_i(x^*)=0
ci(x∗)=0
参考文献:
拉格朗日对偶性:https://blog.youkuaiyun.com/qq_35144795/article/details/98495869
李航《统计学习方法》