统计学习方法 拉格朗日对偶性

统计学习方法 拉格朗日对偶性

读李航的《统计学习方法》时,关于拉格朗日对偶性的笔记。

在许多统计学习的约束最优化问题中,例如最大熵模型和支持向量机,常常使用拉格朗日对偶性(Lagrange duality)将原始问题转换为对偶问题,通过求解对偶问题而得到原始问题的解。

原始问题

假设 f ( x ) f(x) f(x) c i ( x ) c_i(x) ci(x) h j ( x ) h_j(x) hj(x) 是定义在 R n \R^n Rn 上的连续可微函数,考虑约束最优化问题(记为 P P P ):
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{aligned} \min_{x\in\R^n}&\, f(x) \\ \text{s.t.}&\,\, c_i(x)\leq 0,\quad i=1,2,\cdots,k \\ &\,\, h_j(x)=0, \quad j=1,2,\cdots,l \end{aligned} xRnmins.t.f(x)ci(x)0,i=1,2,,khj(x)=0,j=1,2,,l
它的 Lagrangian 为:
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\limits_{j=1}^l \beta_jh_j(x) L(x,α,β)=f(x)+i=1kαici(x)+j=1lβjhj(x)
其中 α i ≥ 0 \alpha_i \geq 0 αi0 ;以下是一个关于 x x x 的函数,下标 P P P 代表原始问题:
θ P ( x ) = max ⁡ α , β ;   α i ≥ 0 L ( x , α , β ) \theta_P(x)=\max\limits_{\alpha,\beta;\,\alpha_i\geq0}L(x,\alpha,\beta) θP(x)=α,β;αi0maxL(x,α,β)
可以得到该函数的性质:
θ P ( x ) = { f ( x ) , x  满足原始问题的约束 + ∞ , else \theta_P(x)=\left\{ \begin{array}{ll} f(x), & x\text{ 满足原始问题的约束} \\ +\infty, &\text{else} \end{array} \right. θP(x)={f(x),+,x 满足原始问题的约束else

  • 如果 x x x 不满足原始问题的约束,即存在某个 i i i 使得 c i ( x ) > 0 c_i(x)\gt 0 ci(x)>0 或者存在某个 j j j 使得 h j ( x ) ≠ 0 h_j(x)\not=0 hj(x)=0 ,那么就有:
    • 若存在某个 i i i 使得 c i ( x ) > 0 c_i(x)\gt 0 ci(x)>0 :我们令 α i → + ∞ \alpha_i\to+\infty αi+ ,则 θ P ( θ ) → + ∞ \theta_P(\theta)\to+\infty θP(θ)+
    • 若存在某个 j j j 使得 h j ( x ) ≠ 0 h_j(x)\not=0 hj(x)=0 :我们令 β j \beta_j βj 取和 h j ( x ) h_j(x) hj(x) 相同的符号,并且令 ∣ β j ∣ → + ∞ |\beta_j|\to+\infty βj+ ,即 β j h j ( x ) → + ∞ \beta_jh_j(x)\to+\infty βjhj(x)+ ,则 θ P ( θ ) → + ∞ \theta_P(\theta)\to+\infty θP(θ)+

θ P ( x ) = max ⁡ α , β ;   α i ≥ 0 [ f ( x ) + ∑ i = 1 k α i c i ( x ) + ∑ j = 1 l β j h j ( x ) ] = + ∞ \theta_P(x)=\max\limits_{\alpha,\beta;\,\alpha_i\geq0}\left[f(x)+\sum_{i=1}^{k}\alpha_ic_i(x)+\sum\limits_{j=1}^l \beta_jh_j(x)\right]=+\infty θP(x)=α,β;αi0max[f(x)+i=1kαici(x)+j=1lβjhj(x)]=+

  • x x x 满足原始问题的约束,则 ∑ i = 1 k α i c i ( x ) ≤ 0 \sum\limits_{i=1}^{k}\alpha_ic_i(x)\leq 0 i=1kαici(x)0 ∑ j = 1 l β j h j ( x ) = 0 \sum\limits_{j=1}^l \beta_jh_j(x)=0 j=1lβjhj(x)=0 ,因此:

θ P ( x ) = f ( x ) \theta_P(x)=f(x) θP(x)=f(x)

基于 θ P ( x ) \theta_P(x) θP(x) 的性质,我们考虑其极小化问题:
min ⁡ x θ P ( x ) = min ⁡ x max ⁡ α , β ;   α i ≥ 0 L ( x , α , β ) \min_{x}\theta_P(x)=\min_{x}\max\limits_{\alpha,\beta;\,\alpha_i\geq0}L(x,\alpha,\beta) xminθP(x)=xminα,β;αi0maxL(x,α,β)
它与原始问题 P P P 是等价的(因为 x x x 满足约束条件时, θ P ( x ) \theta_P(x) θP(x) f ( x ) f(x) f(x) 是等价的)。以上这个问题称为广义拉格朗日函数的极小极大问题。我们定义原始问题的最优值:
p ∗ = min ⁡ x θ P ( x ) p^\ast=\min_x\theta_P(x) p=xminθP(x)
称为原始问题的值。

对偶问题

以下是一个关于 α \alpha α β \beta β 的函数,下标 D D D 代表对偶问题:
θ D ( α , β ) = min ⁡ x L ( x , α , β ) \theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta) θD(α,β)=xminL(x,α,β)
再考虑 θ D ( α , β ) \theta_D(\alpha,\beta) θD(α,β) 的极大化问题:
max ⁡ α , β ;   α i ≥ 0 θ D ( α , β ) = max ⁡ α , β ;   α i ≥ 0 min ⁡ x L ( x , α , β ) \max\limits_{\alpha,\beta;\,\alpha_i\geq0}\theta_D(\alpha,\beta)=\max\limits_{\alpha,\beta;\,\alpha_i\geq0}\min_xL(x,\alpha,\beta) α,β;αi0maxθD(α,β)=α,β;αi0maxxminL(x,α,β)
该问题称为广义拉格朗日函数的极大极小问题,其还可以表示为约束最优化问题:
max ⁡ α , β ;   α i ≥ 0   θ D ( α , β ) = max ⁡ α , β ;   α i ≥ 0 min ⁡ x L ( x , α , β ) s.t.    α i ≥ 0 , i = 1 , 2 , ⋯   , k \begin{aligned} \max\limits_{\alpha,\beta;\,\alpha_i\geq0}&\, \theta_D(\alpha,\beta)=\max\limits_{\alpha,\beta;\,\alpha_i\geq0}\min_xL(x,\alpha,\beta) \\ \text{s.t.}&\,\, \alpha_i\geq 0, \quad i=1,2,\cdots,k \end{aligned} α,β;αi0maxs.t.θD(α,β)=α,β;αi0maxxminL(x,α,β)αi0,i=1,2,,k
极大极小问题称为原始问题的对偶问题,定义对偶问题的最优值为:
d ∗ = max ⁡ α , β ;   α i ≥ 0 θ D ( α , β ) d^\ast=\max\limits_{\alpha,\beta;\,\alpha_i\geq0}\theta_D(\alpha,\beta) d=α,β;αi0maxθD(α,β)
称为对偶问题的值。

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

Th C.1:若原始问题和对偶问题都有最优值,则对偶问题的最优值小于等于原始问题的最优值:
d ∗ ≤ p ∗ d^\ast \leq p^\ast dp
证明:由前面的定义得,对于任意的 α \alpha α β \beta β x 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\limits_{\alpha,\beta;\,\alpha_i\geq0}L(x,\alpha,\beta)=\theta_P(x) θD(α,β)=xminL(x,α,β)L(x,α,β)α,β;αi0maxL(x,α,β)=θP(x)
即:
θ D ( α , β ) ≤ θ P ( x ) \theta_D(\alpha,\beta)\leq\theta_P(x) θD(α,β)θP(x)
即:
d ∗ = max ⁡ α , β ;   α i ≥ 0 θ D ( α , β ) ≤ min ⁡ x θ P ( x ) = p ∗ d^\ast=\max\limits_{\alpha,\beta;\,\alpha_i\geq0}\theta_D(\alpha,\beta)\leq\min_x\theta_P(x)=p^\ast d=α,β;αi0maxθD(α,β)xminθP(x)=p
推论 C.1:设 x ∗ x^\ast x α ∗ \alpha^\ast α β ∗ \beta^\ast β 分别是原始问题和最优问题的可行解(即满足约束条件),且 d ∗ = p ∗ d^\ast=p^\ast d=p ,则 x ∗ x^\ast x α ∗ \alpha^\ast α β ∗ \beta^\ast β 分别是原始问题和最优问题的最优解。

Th C.2:对于原始问题和对偶问题,假设:

  • 函数 f ( x ) f(x) f(x) c i ( x ) c_i(x) ci(x) 是凸函数, h j ( x ) h_j(x) hj(x) 是仿射函数;
  • 存在 x x x ,对于任意 i i i ,满足 c i ( x ) < 0 c_i(x)\lt 0 ci(x)<0 (即不等式约束 c i ( x ) c_i(x) ci(x) 严格可行);

则存在 x ∗ x^\ast x α ∗ \alpha^\ast α β ∗ \beta^\ast β ,使得 x ∗ x^\ast x 是原始问题的解, α ∗ \alpha^\ast α β ∗ \beta^\ast β 是对偶问题的解,并且:
p ∗ = d ∗ = L ( x ∗ , α ∗ , β ∗ ) p^\ast=d^\ast=L(x^\ast,\alpha^\ast,\beta^\ast) p=d=L(x,α,β)
Th C.3:跟 Th C.2 一样的假设下, x ∗ x^\ast x α ∗ \alpha^\ast α β ∗ \beta^\ast β 分别是原始问题和最优问题的可行解的充分必要条件是: x ∗ x^\ast x α ∗ \alpha^\ast α β ∗ \beta^\ast β 满足 KKT 条件:
∇ x L ( x ∗ , α ∗ , β ∗ ) = 0 α i ∗ c i ( x ∗ ) = 0 , i = 1 , 2 , ⋯   , k c i ( x ∗ ) ≤ 0 , i = 1 , 2 , ⋯   , k α i ∗ ≥ 0 , i = 1 , 2 , ⋯   , k h j ( x ∗ ) = 0 , j = 1 , 2 , ⋯   , k \begin{array}{c} \nabla_x L(x^\ast,\alpha^\ast,\beta^\ast)=0 \\ \alpha_i^\ast c_i(x^\ast)=0, \quad i=1,2,\cdots,k \\ c_i(x^\ast)\leq 0, \quad i=1,2,\cdots,k \\ \alpha_i^\ast \geq 0, \quad i=1,2,\cdots,k \\ h_j(x^\ast)=0, \quad j=1,2,\cdots,k \\ \end{array} xL(x,α,β)=0αici(x)=0,i=1,2,,kci(x)0,i=1,2,,kαi0,i=1,2,,khj(x)=0,j=1,2,,k
其中 α i ∗ c i ( x ∗ ) = 0 , i = 1 , 2 , ⋯   , k \alpha_i^\ast c_i(x^\ast)=0, \quad i=1,2,\cdots,k αici(x)=0,i=1,2,,k 称为 KKT 的对偶互补条件。由此可知,若 α i > 0 \alpha_i \gt 0 αi>0 ,则 c i ( x ∗ ) = 0 c_i(x^\ast)=0 ci(x)=0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Air浩瀚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值