原文信息:No-regret dynamics in the Fenchel game- A unified framework for algorithmic convex optimization
原文作者:Jun-Kun Wang, Jacob Abernethy, Kfir Y. Levy
论文解读者:赵田田
编者按:
对于一个凸优化问题,我们可以把它看作是一个min-max问题中的一部分. 而对于求解min-max问题,我们可以考虑让对应极小化和极大化的两个变量依次进行更新,并持续重复这个过程. 本文将这两个变量可以采取的更新方法限定在无悔学习策略(no-regret learning algorithms). 可以证明,许多的一阶凸优化算法,都可以看作是双方采取不同的无悔学习策略来求解min-max问题. 利用这个特别的框架(FGNRD, the Fenchel game no-regret dynamics),我们可以给出一套算法的收敛性证明,并提出一些包含在框架中的新算法,它们同时也具有好的收敛结果.
一、从凸优化到min-max问题
对于凸优化问题
min
x
∈
X
f
(
x
)
,
\min_{x\in\mathcal{X}}f(x),
x∈Xminf(x),
假设最小值点在
X
\mathcal{X}
X中的某个有界区域内取到. 我们可以构造对应的鞍点问题(Fenchel Game),其中目标函数为
g
(
x
,
y
)
:
=
⟨
x
,
y
⟩
−
f
∗
(
y
)
g(x,y):=\langle x,y\rangle-f^{*}(y)
g(x,y):=⟨x,y⟩−f∗(y),
f
∗
f^{*}
f∗是
f
f
f的共轭函数. 可以看出
g
g
g关于
x
x
x是凸函数,而关于
y
y
y是凹函数.
定义1( ϵ − \epsilon- ϵ−均衡点) x ^ , y ^ \hat{x}, \hat{y} x^,y^是 g ( ⋅ , ⋅ ) g(\cdot, \cdot) g(⋅,⋅)的一对 ϵ − \epsilon- ϵ−均衡点,当且仅当 V ∗ − ϵ ≤ inf x ∈ X g ( x , y ^ ) ≤ V ∗ ≤ sup y ∈ Y g ( x ^ , y ) ≤ V ∗ + ϵ , V^*-\epsilon \leq \inf _{x \in \mathcal{X}} g(x, \hat{y}) \leq V^* \leq \sup _{y \in \mathcal{Y}} g(\hat{x}, y) \leq V^*+\epsilon, V∗−ϵ≤x∈Xinfg(x,y^)≤V∗≤y∈Ysupg(x^,y)≤V∗+ϵ, 其中 V ∗ = inf x ∈ X sup y ∈ Y g ( x , y ) V^*=\inf_{x \in \mathcal{X}} \sup_{y \in \mathcal{Y}} g(x, y) V∗=infx∈Xsupy∈Yg(x,y).
假设
x
^
\hat{x}
x^和
y
^
\hat{y}
y^是函数
g
g
g的一组均衡点(
ϵ
=
0
\epsilon=0
ϵ=0),此时根据共轭函数和均衡点的定义,可得
inf
x
∈
X
f
(
x
)
=
inf
x
∈
X
sup
y
∈
Y
{
⟨
x
,
y
⟩
−
f
∗
(
y
)
}
=
inf
x
∈
X
sup
y
∈
Y
g
(
x
,
y
)
=
V
∗
=
sup
y
∈
Y
g
(
x
^
,
y
)
=
sup
y
∈
Y
{
⟨
x
^
,
y
⟩
−
f
∗
(
y
)
}
=
f
(
x
^
)
.
\begin{aligned} \inf _{x \in \mathcal{X}} f(x) & =\inf _{x \in \mathcal{X}} \sup _{y \in \mathcal{Y}}\left\{\langle x, y\rangle-f^*(y)\right\}=\inf _{x \in \mathcal{X}} \sup _{y \in \mathcal{Y}} g(x, y)=V^{*} \\ & =\sup _{y \in \mathcal{Y}} g(\hat{x}, y)=\sup _{y \in \mathcal{Y}}\left\{\langle\hat{x}, y\rangle-f^*(y)\right\}=f(\hat{x}) . \end{aligned}
x∈Xinff(x)=x∈Xinfy∈Ysup{⟨x,y⟩−f∗(y)}=x∈Xinfy∈Ysupg(x,y)=V∗=y∈Ysupg(x^,y)=y∈Ysup{⟨x^,y⟩−f∗(y)}=f(x^).
因此每个鞍点问题的均衡点,都对应凸优化问题的一个极小值点. 类似地,我们还可以证明:
引理1 如果 ( x ^ , y ^ ) (\hat{x},\hat{y}) (x^,y^)是上述 Fenchel Game
的一组 ϵ − \epsilon- ϵ−均衡点,则有 f ( x ^ ) − min x ∈ X f ( x ) ≤ ϵ . f(\hat{x})-\min_{x\in\mathcal{X}}f(x)\leq\epsilon. f(x^)−minx∈Xf(x)≤ϵ.
这样一来,考虑min-max问题就相当于求解原本的凸优化问题.
二、无悔动力学:求解min-max问题
2.1 整体算法框架
对于求解min-max问题
inf
x
∈
X
sup
y
∈
Y
g
(
x
,
y
)
,
\inf_{x \in \mathcal{X}} \sup_{y \in \mathcal{Y}} g(x, y),
x∈Xinfy∈Ysupg(x,y),
本文考虑让
x
,
y
x, y
x,y分别采取不同的无悔策略,交替更新.
x
,
y
x,y
x,y遵循的算法如下所示:
从 Protocol 1 能看出,本文考虑的是 OAlg 学习算法. 它的任务是要在凸的决策集合 Z ∈ R d \mathcal{Z}\in\mathbb{R}^{d} Z∈Rd中选取合适的动作. 对于每个回合( t = 1 , 2 ⋯ , T t=1,2\cdots,T t=1,2⋯,T), OAlg 都返回某个 z t ∈ Z z_t\in\mathcal{Z} zt∈Z,并在返回之后获得当前回合的权重 α t > 0 \alpha_t>0 αt>0以及用来衡量 z t z_t zt的某个凸的损失函数 l t : Z → R l_t:\mathcal{Z}\to\mathbb{R} lt:Z→R.
求解 Fenchel Game 的整体算法框架如下所示.
注1: 最终输出的结果 ( x ˉ T , y ˉ T ) (\bar{x}_T,\bar{y}_T) (xˉT,yˉT)是先前迭代点的加权平均.
注2:对于现有的大多数算法,它们对应的模式都是 y y y先更新, x x x再更新. 当然也有相反的情况,比如 Cumulative gradient descent. 我们有时候也可以通过交换双方的更新顺序来获得新的算法.
2.2 用 Regret 刻画解的接近程度
在介绍 OAlg 算法具体有哪些选择之前, 我们先展示
α
t
\alpha_t
αt和
l
t
l_t
lt(
h
t
h_t
ht) 在收敛性分析中起到的作用. 考虑使用某种 OAlg 算法. 沿用 Protocol 1 中的符号, 把每一次对应的损失累积起来,我们可以得到所谓的Regret:
α
−
REG
z
(
z
∗
)
:
=
∑
t
=
1
T
α
t
ℓ
t
(
z
t
)
−
∑
t
=
1
T
α
t
ℓ
t
(
z
∗
)
,
\boldsymbol{\alpha}-\operatorname{REG}^z\left(z^*\right):=\sum_{t=1}^T \alpha_t \ell_t\left(z_t\right)-\sum_{t=1}^T \alpha_t \ell_t\left(z^*\right),
α−REGz(z∗):=t=1∑Tαtℓt(zt)−t=1∑Tαtℓt(z∗),
其中
z
∗
∈
Z
z^{*}\in\mathcal{Z}
z∗∈Z是用于比较的标准(可自选). 接着可以定义
α
−
R
E
G
‾
z
(
z
∗
)
:
=
α
−
R
E
G
z
(
z
∗
)
A
T
\overline{\boldsymbol{\alpha}-\mathrm{REG}}^z\left(z^*\right):=\frac{\boldsymbol{\alpha}-\mathrm{REG}^z\left(z^*\right)}{A_T}
α−REGz(z∗):=ATα−REGz(z∗),
其中
A
T
:
=
∑
t
=
1
T
α
t
A_T:=\sum_{t=1}^T \alpha_t
AT:=∑t=1Tαt. Protocol 2 的损失函数分别为
l
t
(
y
)
:
=
f
∗
(
y
)
−
⟨
x
t
,
y
⟩
l_t(y):=f^{*}(y)-\langle x_t,y\rangle
lt(y):=f∗(y)−⟨xt,y⟩
和
和
和
h
t
(
x
)
:
=
⟨
x
,
y
t
⟩
−
f
∗
(
y
t
)
h_t(x):=\langle x,y_t\rangle-f^{*}(y_t)
ht(x):=⟨x,yt⟩−f∗(yt). 对应地, 我们可以定义
α
−
REG
y
:
=
∑
t
=
1
T
α
t
ℓ
t
(
y
t
)
−
min
y
∈
Y
∑
t
=
1
T
α
t
ℓ
t
(
y
)
,
α
−
REG
x
:
=
∑
t
=
1
T
α
t
h
t
(
x
t
)
−
min
x
∈
X
∑
t
=
1
T
α
t
h
t
(
x
)
,
\begin{aligned} \boldsymbol{\alpha}-\operatorname{REG}^y & :=\sum_{t=1}^T \alpha_t \ell_t\left(y_t\right)-\min _{y \in \mathcal{Y}} \sum_{t=1}^T \alpha_t \ell_t(y), \\ \boldsymbol{\alpha}-\operatorname{REG}^x & :=\sum_{t=1}^T \alpha_t h_t\left(x_t\right)-\min _{x \in \mathcal{X}} \sum_{t=1}^T \alpha_t h_t(x), \end{aligned}
α−REGyα−REGx:=t=1∑Tαtℓt(yt)−y∈Ymint=1∑Tαtℓt(y),:=t=1∑Tαtht(xt)−x∈Xmint=1∑Tαtht(x),
其中
Y
:
=
⋃
x
∈
X
∂
f
(
x
)
\mathcal{Y}:=\bigcup_{x\in\mathcal{X}}\partial f(x)
Y:=⋃x∈X∂f(x). 可以证明,
Y
\mathcal{Y}
Y的闭包是一个凸集. 类似地, 我们可以定义
α
−
REG
‾
y
\overline{\boldsymbol{\alpha}-\operatorname{REG}}^y
α−REGy和$\overline{\boldsymbol{\alpha}-\operatorname{REG}}^x
.
下面的定理告诉我们
,
通过无悔策略所获得的
. 下面的定理告诉我们, 通过无悔策略所获得的
.下面的定理告诉我们,通过无悔策略所获得的\bar{x}_T
,
它和最优值的差距可以被
, 它和最优值的差距可以被
,它和最优值的差距可以被\overline{\boldsymbol{\alpha}-\operatorname{REG}}y$和$\overline{\boldsymbol{\alpha}-\operatorname{REG}}x $之和控制.
整个定理的证明只用到 f f f的凸性以及一些已经给出的定义.
2.3 OAlg 算法
我们接下来介绍 OAlg 算法的具体选择 (这里继续使用 Protocol 1中的符号). OAlg 算法基本上可以被分为两大类: Batch-style 和 Update-style. 此外还有一种不属于二者的更新方法: BESTRESP+.
这里的 + + +号表示能够在确定 z t z_t zt之前就知道损失函数 l t ( ⋅ ) l_t(\cdot) lt(⋅). 这对于 Protocol 2 里的 x x x变量来说是成立的 (在更新 x t x_t xt之前, 由于 y t y_t yt已经确定, 因此 h t h_t ht也已经得到).
Batch-style 从字面上理解是"批量", 它的特点在于把过去的损失函数加权累计, 来获得子问题的目标函数. 算法名称中的 + + +号与之前所述意义相同. 名称中的 R 代表目标函数中包含正则项, 而 OPTIMISTIC 代表当前损失函数 l t ( ⋅ ) l_t(\cdot) lt(⋅)是未知的, 而我们在目标函数中加入 m t m_t mt项作为对它的估计. Batch-style类的算法如下所示:
Update-style的目标函数集中在最新的损失函数上, 同时增加了一项 Bregman 距离, 其中 ϕ \phi ϕ是生成距离的函数. Update-style 类的算法如下所示.
2.4 刻画 Regret 的上界
根据 2.2 节中的定理2, 可知 f ( x ˉ T ) f(\bar{x}_T) f(xˉT)- f ∗ f^{*} f∗被 α − REG ‾ y \overline{\boldsymbol{\alpha}-\operatorname{REG}}^y α−REGy和$\overline{\boldsymbol{\alpha}-\operatorname{REG}}^x 之和控制 . 由于我们要对 P r o t o c o l 2 中算法的收敛速度进行分析 , 因此我们的任务就转化为控制 之和控制. 由于我们要对 Protocol 2 中算法的收敛速度进行分析, 因此我们的任务就转化为控制 之和控制.由于我们要对Protocol2中算法的收敛速度进行分析,因此我们的任务就转化为控制\overline{\boldsymbol{\alpha}-\operatorname{REG}}y$和$\overline{\boldsymbol{\alpha}-\operatorname{REG}}x $的大小. 文中对于不同类型的 OAlg 算法, 分别给出了它们 Regret 的上界.
对于 BESTRESP+, 通常使用的结论是 α − REG ‾ z ( z ∗ ) ≤ 0. \overline{\boldsymbol{\alpha}-\operatorname{REG}}^z(z^*)\leq0. α−REGz(z∗)≤0.
对于 Batch-style 类算法, 可以看出 OPTIMISTICFTRL 包含了其他所有算法 (它们都是它的某个特例). 对于 OPTIMISTICFTRL 算法, 我们通过归纳法可以证明它的 Regret 满足以下不等式.
对于 Batch-style 类中的其他算法, 我们都可以从 Lemma 3 出发, 得到 Regret 上界的表达式. 对于 Update-style 类的算法, 我们有如下形式的结论 (以 OPTIMISTICMD 为例, 其余算法省去):
三. 从无悔动力学到凸优化算法
在第一节中, 我们展示了min-max问题的( ϵ − \epsilon- ϵ−)解同样是凸优化问题的( ϵ − \epsilon- ϵ−)解. 在第二节中, 我们考虑用无悔学习策略求解 min-max 问题, 介绍算法框架, 给出了函数值与最优值之差的上界表达式. 在这一节中, 我们展示 Protocol 2 中的一些算法 ( y y y和 x x x策略的组合) 可以等价于某个的凸优化算法, 并利用 2.2 和 2.4 节的内容, 获得一些好的收敛性结论.
3.1 Frank-Wolfe 算法
假设定义域 K \mathcal{K} K是凸集 (在算法中我们直接设 X = K \mathcal{X}=\mathcal{K} X=K), f f f是 L-smooth 的闭凸函数. Frank-Wolfe 算法的迭代格式 (左) 和它在无悔动力学下的等价形式 (右) 如下所示:
我们可以通过归纳法证明: ∇ f ( ω t − 1 ) = y t , v t = x t , ω t = x ˉ t {\nabla}f(\omega_{t-1})=y_t, v_t=x_t, \omega_t = \bar{x}_t ∇f(ωt−1)=yt,vt=xt,ωt=xˉt(文中 Proposition 3), 并得到如下定理.
定理的证明过程如下.
根据 2.2 节的 Theorem 2 和 2.4 节的 Lemma 2,可以得到
f
(
ω
T
)
−
f
∗
=
f
(
x
ˉ
T
)
−
f
∗
≤
α
−
R
E
G
‾
y
[
F
T
L
]
+
α
−
R
E
G
‾
x
[
B
E
S
T
R
E
S
P
+
]
≤
α
−
R
E
G
‾
y
[
F
T
L
]
.
f(\omega_T)-f^{*}=f(\bar{x}_T)-f^{*}\leq \overline{\boldsymbol{\alpha}-\mathrm{REG}}^y[\mathrm{FTL}] +\overline{\boldsymbol{\alpha}-\mathrm{REG}}^x[\mathrm{BESTRESP}^+] \leq \overline{\boldsymbol{\alpha}-\mathrm{REG}}^y[\mathrm{FTL}].
f(ωT)−f∗=f(xˉT)−f∗≤α−REGy[FTL]+α−REGx[BESTRESP+]≤α−REGy[FTL].
而关于 FTL 算法,我们可以从 Lemma 3 中推导出如下引理.
由于
f
f
f是 L-smooth 的,所以它的共轭函数
f
∗
f^{*}
f∗是
1
L
\frac{1}{L}
L1-强凸的,从而函数
l
t
(
⋅
)
:
=
−
g
(
x
,
⋅
)
l_t(\cdot):=-g(x,\cdot)
lt(⋅):=−g(x,⋅)也是
1
L
\frac{1}{L}
L1-强凸的. 将
μ
=
1
/
L
\mu=1/L
μ=1/L
和
和
和
α
t
=
t
\alpha_t=t
αt=t代入(27)中,即得
α
−
R
E
G
‾
y
[
F
T
L
]
≤
1
A
T
∑
t
=
1
T
2
α
t
2
∥
∇
l
t
(
y
t
)
∥
2
∑
s
=
1
t
α
s
(
1
/
L
)
=
8
L
T
(
T
+
1
)
∑
t
=
1
T
t
2
∥
∇
l
t
(
y
t
)
∥
2
t
(
t
+
1
)
.
\overline{\boldsymbol{\alpha}-\mathrm{REG}}^y[\mathrm{FTL}] \leq \frac{1}{A_T} \sum_{t=1}^T \frac{2 \alpha_t^2\left\|\nabla l_t\left(y_t\right)\right\|^2}{\sum_{s=1}^t \alpha_s(1 / L)}=\frac{8 L}{T(T+1)} \sum_{t=1}^T \frac{t^2 \left\|\nabla l_t\left(y_t\right)\right\|^2}{t(t+1)} .
α−REGy[FTL]≤AT1t=1∑T∑s=1tαs(1/L)2αt2∥∇lt(yt)∥2=T(T+1)8Lt=1∑Tt(t+1)t2∥∇lt(yt)∥2.
根据等价性可知
y
t
=
∇
f
(
ω
t
−
1
)
=
∇
f
(
x
ˉ
t
−
1
)
y_t=\nabla{f}(\omega_{t-1})=\nabla{f}(\bar{x}_{t-1})
yt=∇f(ωt−1)=∇f(xˉt−1), 而
f
f
f是闭凸函数,根据共轭函数的性质有
x
ˉ
t
−
1
=
∇
f
∗
(
y
t
)
\bar{x}_{t-1}=\nabla{f}^*(y_t)
xˉt−1=∇f∗(yt). 因此我们可以控制
∥
∇
l
t
(
y
t
)
∥
\|\nabla{l}_t(y_t)\|
∥∇lt(yt)∥的大小:
∥
∇
ℓ
t
(
y
t
)
∥
2
=
∥
x
t
−
∇
f
∗
(
y
t
)
∥
2
=
∥
x
t
−
x
ˉ
t
−
1
∥
2
≤
D
,
\left\|\nabla \ell_t\left(y_t\right)\right\|^2=\left\|x_t-\nabla f^*\left(y_t\right)\right\|^2=\left\|x_t-\bar{x}_{t-1}\right\|^2 \leq D,
∥∇ℓt(yt)∥2=∥xt−∇f∗(yt)∥2=∥xt−xˉt−1∥2≤D,
其中第一个等式来自
l
t
l_t
lt定义,最后一个不等式来自 Theorem 4 中的条件.
最终我们得到$f(\omega_T)-f{*}\leq\overline{\boldsymbol{\alpha}-\mathrm{REG}}y[\mathrm{FTL}] \leq \frac{8 LD}{T+1} $, 即得证.
3.2 Nesterov加速算法
同样假设定义域 K \mathcal{K} K是凸集 (在算法中我们直接设 X = K \mathcal{X}=\mathcal{K} X=K), f f f是 L-smooth 的闭凸函数. Nesterov 加速算法的迭代格式 (左) 和它在无悔动力学下的等价形式 (右) 如下所示:
注3:OPTIMISTICFTL中涉及对函数 l t ( ⋅ ) l_t(\cdot) lt(⋅)的估计项 m t ( ⋅ ) m_t(\cdot) mt(⋅),这里直接取成 l t − 1 ( ⋅ ) l_{t-1}(\cdot) lt−1(⋅).
可以用归纳法证明证明: ∇ f ( z t ) = y t , v t = x t , ω t = x ˉ t \nabla{f}({z_t})=y_t, v_t=x_t, \omega_t=\bar{x}_t ∇f(zt)=yt,vt=xt,ωt=xˉt. 通过无悔算法的框架,可得如下定理.
3.3 Boundary Frank-Wolfe 算法(新)
根据 3.1 节的 Frank-Wolfe 算法,我们通过交换 x x x和 y y y更新的顺序,以及改变 α t \alpha_t αt的大小,得到如下的Boundary Fank-Wolfe 算法:
类似地,可以证明:
算法收敛的速率受到参数 L T L_T LT的影响. 为保证 L T > 0 L_T>0 LT>0, 我们可以假设凸优化问题的最优解在定义域的边界取到. 这样一来,零向量不在 Y \mathcal{Y} Y的闭包中,一定有 L T > 0 L_T>0 LT>0成立
参考文献
[1] Wang, J., Abernethy, J.D., & Levy, K.Y. (2021). No-Regret Dynamics in the Fenchel Game: A Unified Framework for Algorithmic Convex Optimization. ArXiv, abs/2111.11309…