对偶的应用及拓展(Duality Uses and Correspondences)

总目录

一、 凸优化基础(Convex Optimization basics)

  1. 凸优化基础(Convex Optimization basics)

二、 一阶梯度方法(First-order methods)

  1. 梯度下降(Gradient Descent)
  2. 次梯度(Subgradients)
  3. 近端梯度法(Proximal Gradient Descent)
  4. 随机梯度下降(Stochastic gradient descent)

三、对偶

  1. 线性规划中的对偶(Duality in linear programs)
  2. 凸优化中的对偶(Duality in General Programs)
  3. KKT条件(Karush-Kuhn-Tucker Conditions)
  4. 对偶的应用及拓展(Duality Uses and Correspondences)
  5. 对偶方法(Dual Methods)
  6. 交替方向乘子法(Alternating Direction Method of Multipliers)

Introduction

在前几节中我们讨论了对偶。在强对偶条件下,给定对偶问题的最优解 u ∗ , v ∗ u^*,v^* u,v,任何使得拉普拉斯方程 L ( x , u ∗ , v ∗ ) L(x,u^*,v^*) L(x,u,v)最小化的 x x x都是原问题的最优解。特别是当原问题的解唯一时,其一定是最优解 x ∗ x^* x。这使得我们可以借助于对偶来求解原问题的解。本节我们主要讨论跟对偶相关的一些知识及应用。

对偶范数

∥ x ∥ \|x\| x为一个范数(norm), 定义其对偶范数(dual norm) ∥ x ∥ ∗ \|x\|_* x
∥ x ∥ ∗ = max ⁡ ∥ z ∥ ≤ 1 z T x \|x\|_*=\max_{\|z\|\leq1}z^Tx x=z1maxzTx

那么根据对偶关系可以得到 ∥ z T x ∥ ≤ ∥ z ∥ ∥ x ∥ ∗ \|z^Tx\|\leq\|z\|\|x\|_* zTxzx
例如,

  • l p \mathcal{l}_p lp norm: ∥ x ∥ p = ( ∑ i = 1 m ∣ x i ∣ p ) 1 / p \|x\|_p=(\sum^m_{i=1}|x_i|^p)^{1/p} xp=(i=1mxip)1/p, for p ≥ 1 p\geq1 p1
  • Trace norm: ∥ X ∥ t r = ∑ i = 1 r σ i ( X ) \|X\|_{tr}=\sum^r_{i=1}\sigma_i(X) Xtr=i=1rσi(X) (迹范数定义为矩阵所有特征值之和)

则其对应的对偶范数为

  • l p \mathcal{l}_p lp norm dual: ( ∥ x ∥ p ) ∗ = ∥ x ∥ q (\|x\|_p)_*=\|x\|_q (xp)=xq,其中, 1 / p + 1 / q = 1 1/p+1/q=1 1/p+1/q=1
  • Trace norm dual: ( ∥ X ∥ t r ) ∗ = ∥ X ∥ o p = σ 1 ( X ) (\|X\|_{tr})_*=\|X\|_{op}=\sigma_1(X) (Xtr)=Xop=σ1(X) 即矩阵最大的特征值

在强对偶下,对偶范数的对偶范数为其本身,即 ∥ x ∥ ∗ ∗ = ∥ x ∥ \|x\|_{**}=\|x\| x=x

共轭函数

共轭函数的定义

给定一个函数 f : R n → R f: R^n \to R f:RnR,定义其共轭(conjugate)为 f ∗ : R n → R f^*: R^n\to R f:RnR
f ∗ ( y ) = max ⁡ x y T x − f ( x ) f^*(y)=\max_x y^Tx-f(x) f(y)=xmaxyTxf(x)

注意到 f ∗ f^* f总是凸函数,因为其是凸函数(仿射函数)的最大值。如下图所示, f ∗ ( y ) f^*(y) f(y)表示最大化线性函数 y T x y^Tx yTx与函数 f ( x ) f(x) f(x)的间隔。
在这里插入图片描述
对于可微函数 f f f,共轭也被叫做勒让德变换(Legendre transform)。

共轭函数的性质

  1. Fenchel不等式:对于任意 x , y x,y x,y
    f ( x ) + f ∗ ( y ) ≥ x T y f(x)+f^*(y)\geq x^Ty f(x)+f(y)xTy

  2. 共轭的共轭 f ∗ ∗ f^{**} f满足 f ∗ ∗ ≤ f f^{**}\leq f ff

  3. 如果 f f f是闭合的且是凸的,那么 f ∗ ∗ = f f^{**}=f f=f

  4. 如果 f f f是闭合的且是凸的,那么对于任意 x , y x,y x,y
    x ∈ ∂ f ∗ ( y ) ⟺ y ∈ ∂ f ( x ) ⟺ f ( x ) + f ∗ ( y ) = x T y x\in\partial f^*(y) \Longleftrightarrow y\in\partial f(x) \Longleftrightarrow f(x)+f^*(y)=x^Ty xf(y)yf(x)f(x)+f(y)=xTy

  5. 如果 f ( u , v ) = f 1 ( u ) + f 2 ( v ) f(u,v)=f_1(u)+f_2(v) f(u,v)=f1(u)+f2(v),那么
    f ∗ ( w , z ) = f 1 ∗ ( w ) + f 2 ∗ ( z ) f^*(w,z)=f^*_1(w)+f^*_2(z) f(w,z)=f1(w)+f2(z)

例子

  • 二次规划: f ( x ) = 1 2 x T Q x f(x)=\frac{1}{2}x^TQx f(x)=21xTQx,其中 Q ≻ 0 Q\succ0 Q0。那么 y T x − 1 2 x T Q x y^Tx-\frac{1}{2}x^TQx yTx21xTQx是严格凹的,其最大值在 y = Q − 1 x y=Q^{-1}x y=Q1x处取得,因此
    f ∗ ( y ) = 1 2 y T Q − 1 y f^*(y)=\frac{1}{2}y^TQ^{-1}y f(y)=21yTQ1y
  • 指示函数:如果 f ( x ) = I C ( x ) f(x)=I_C(x) f(x)=IC(x),那么其共轭为
    f ∗ ( y ) = I c ∗ ( x ) = max ⁡ x ∈ C y T x f^*(y)=I^*_c(x)=\max_{x\in C}y^Tx f(y)=Ic(x)=xCmaxyTx也被称为集合 C C C的支持函数(support function)。
  • 范数:如果 f ( x ) = ∥ x ∥ f(x)=\|x\| f(x)=x,那么其共轭为
    f ∗ ( y ) = I { z : ∥ z ∥ ∗ ≤ 1 } ( y ) f^*(y)=I_{\{z:\|z\|_*\leq 1\}}(y) f(y)=I{z:z1}(y) 其中 ∥ ⋅ ∥ ∗ \|\cdot\|_* ∥ ⋅ ∥ \|\cdot\| 的对偶范数

共轭与对偶问题

共轭常出现在对偶问题的推导中。在最小化拉格朗日函数过程中,以
− f ∗ ( u ) = min ⁡ x f ( x ) − u T x -f^*(u)=\min_x f(x)-u^Tx f(u)=xminf(x)uTx 形式出现。

如考虑优化问题
min ⁡ x f ( x ) + g ( x ) \min_x f(x)+g(x) xminf(x)+g(x)

其等价于
min ⁡ x , z f ( x ) + g ( z ) s u b j e c t   t o x = z \begin{aligned} \min_{x,z}f(x)+g(z)\\ subject\ to\quad x=z\\ \end{aligned} x,zminf(x)+g(z)subject tox=z

拉格朗日对偶函数为
g ( u ) = min ⁡ x , z f ( x ) + g ( z ) + u T ( z − x ) = min ⁡ x , z f ( x ) − u T x + g ( z ) − ( − u ) T z = − max ⁡ x { u T x − f ( x ) } − max ⁡ z { ( − u ) T z − g ( z ) } = − f ∗ ( u ) − g ∗ ( − u ) \begin{aligned} g(u)=&\min_{x,z} f(x)+g(z)+u^T(z-x)\\ &=\min_{x,z}f(x)-u^Tx+g(z)-(-u)^Tz\\ &=-\max_x\{u^Tx-f(x)\}-\max_z\{(-u)^Tz-g(z)\}\\ &=-f^*(u)-g^*(-u) \end{aligned} g(u)=x,zminf(x)+g(z)+uT(zx)=x,zminf(x)uTx+g(z)(u)Tz=xmax{uTxf(x)}zmax{(u)Tzg(z)}=f(u)g(u)

因而对偶问题为
max ⁡ u − f ∗ ( u ) − g ∗ ( − u ) \max_u -f^*(u)-g^*(-u) umaxf(u)g(u)

转移线性变换

对偶公式可以帮助我们在目标函数的不同部分之间转移线性变换(shifting linear transformations)。
考虑以下问题
min ⁡ x f ( x ) + g ( A x ) \min_x f(x)+g(Ax) xminf(x)+g(Ax)

其等价于
min ⁡ x , z f ( x ) + g ( z ) s u b j e c t   t o A x = z \begin{aligned} \min_{x,z}f(x)+g(z)\\ subject\ to\quad Ax=z\\ \end{aligned} x,zminf(x)+g(z)subject toAx=z
像前面一样,其对偶问题为
max ⁡ u − f ∗ ( A T u ) − g ∗ ( − u ) \max_u -f^*(A^Tu)-g^*(-u) umaxf(ATu)g(u)

对偶的技巧

常常我们把对偶转换为一个等价的问题,仍然称为对偶。在强对偶条件下,我们可以使用对偶问题(或经过变换的对偶问题)的解来求解原问题的解。

为了得到无约束问题的对偶形式,一般首先在原问题中加入一个虚拟的中间变量,从而引入等式约束。再通过拉格朗日方程得到对偶形式。通常这种变换并不是唯一的,不同的变换可能导致不同的对偶问题。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值