Jekyll2026-03-21T22:05:52-05:00https://truenobility303.github.io/feed.xmlTrueNobility303PhD student, IIIS, TsinghuaLesi Chen (陈乐偲)[email protected]矩阵博弈的复杂度下界2026-02-16T00:00:00-06:002026-02-16T00:00:00-06:00https://truenobility303.github.io/LB-GamePaper Reading: The Oracle Complexity of Simplex-based Matrix Games: Linear Separability and Nash Equilibria.

本文我们考虑建立如下单纯形矩阵博弈的优化复杂度下界:

\[\begin{align*} \max_{w \in W} \min_{p \in \Delta^n} p^\top A w = \max_{w \in W} \min_{l \in [n]} (Aw)_l. \end{align*}\]

这包含了很多基础性的问题。例如 (1) 当集合 $W$ 为单位范数球,等价于感知器问题,可以视作为一个最简单的单层神经网络。此时 $A$ 为数据集,$w$ 为线性模型的参数,求解上述问题等价于求解一个间隔最小的线形分类器;(2)当集合 $W$ 也为单纯形,等价于双玩家零和博弈问题,其中矩阵 $A$ 表示两个玩家不同对策的收益矩阵,求解上述问题等价求解两个玩家混合随机策略的Nash均衡点。我们将问题(1)和(2)分别称为 $\ell_2$/单纯形-问题和 单纯形/单纯形问题。

下面,我们采用一个证明框架,给出上述设定 (1) 和设定 (2) 的复杂度下界。我们定义的oracle复杂度为矩阵乘法的次数,其中包括了左乘操作 $Aw$ 或者右乘操作 $p^\top A$.

Lower Bound for Problem (1)

The Construction

对于一个给定的算法,我们考虑如下高维函数构造, 其中$\alpha, \beta$ 为待定参数。首先初始化 $v_0 = \alpha 1$,然后对于随后的 $T+1$ 次迭代,对于算法如下的对抗oracle。

  1. 计算算法的查询点 $p_t$ 和 $w_t$.
  2. 选择 $u_t$ 为正交于向量组 $u_1,\cdots,u_{t-1}, w_1,\cdots,w_t$ 的一个单位向量。
  3. 抽取独立的标准高维高斯向量 $\xi_t$, 然后令 $v_t$ 为 $\beta \xi_t$ 到向量组 $v_0,\cdots,v_{t-1},p_1,\cdots,p_t$ 补空间的正交投影。
  4. 令 $A_t = \sum_{j=1}^t (v_{j-1} - v_j) u_j^\top$ 并且返回oracle为 $p_t^\top A_t$ 以及 $A_t w_t$.

容易注意到根据构造,上述等价于给出了一个困难的例子,其中矩阵 $A$为

\[\begin{align*} A = \sum_{t=1}^T (v_{t-1} - v_t) u_j^\top + v_T u_{T+1}^\top. \end{align*}\]

上述构造中的正交性可以保证每次迭代 $t$ 返回oracle $p_t^\top A$ 以及 $A w_t$ 只依赖于直到迭代 $t$ 中所拥有的部分知识即可。

下面用上述构造给出在假设 $\max_{l \in [n]} \Vert A_l \Vert \le 1$ 下寻找一个 $\epsilon$ 解的 $\tilde{\Omega}(\epsilon^{-2/3})$ 的复杂度下界。我们将证明拆分成如下三个步骤。

Step I: Seperator Exists

我们希望我们构造的例子存在一个线性分类器。我们选择单位向量 $\bar w = \frac{1}{\sqrt{T+1}} \sum_{t=1}^{T+1} u_t$. 对于这个平均的向量,成立

\[\begin{align*} &\max_{w: \Vert w \Vert \le 1}\min_{p \in \Delta^n} p^\top A w \ge \min_{p \in \Delta^n} p^\top A \bar w = \frac{\alpha}{\sqrt{T+1}}. \end{align*}\]

Step II: Algorithm Returns a Non-Separator

上一步我们证明了一个近似分类器的存在,但下一步我们证明我们的构造可以保证算法无法返回一个分类器。根据构造,我们有

\[\begin{align*} A w_{T+1} =& \sum_{t=1}^T (v_{t-1} - v_t) u_t^\top w_{T+1}. \end{align*}\]

定义 向量 $r = (r_0,\cdots,r_T)$ 满足 $r_0 = u_1^\top w_{T+1}$, $r_T = u_T^\top w_{T+1}$, 以及对于其他的 $t$ 有 $r_t =u_t^\top w_{T+1} - u_{t+1}^\top w_{T+1}$. 因此,可以将上式重写为

\[\begin{align*} A w_{T+1} =& r_0 v_0 - \sum_{t=1}^T r_t v_t \\ =& \alpha r_0 1 - \beta \sum_{t=1}^T r_t (I - M_t M_t^\top ) \xi_t \\ =& \alpha r_0 1 - \beta \left( \sum_{t=1}^T r_t \xi_t - \sum_{t=1}^T r_t M_t M_t^\top \xi_t \right), \end{align*}\]

其中我们定义 $M_t$ 为向量组 $v_0,\cdots,v_{t-1},p_1,\cdots,p_t$ 的正交基。为了分析 $\min_{p \in \Delta^n} A w_{T+1} = \min_{l \in [n]}(A w_{T+1})_l$ 的大小,我们使用高维概率的集中不等式。为了便于理解,我们给出直觉上大致的估计而非完全严谨的证明,详细的推导可以见原论文。

首先我们对向量 $\sum_{t=1}^T r_t \xi_t$ 的每一个维度分别应用Hoeffding集中不等式可以知道其每一个维度都将集中在 $\Vert r_{1:T} \Vert$ 附近。而对于向量 $\sum_{t=1}^T r_t M_t M_t^\top \xi_t$ 由于投影的存在,事实上可以证明当维度足够高 (文中选择了 $n = \Omega(T^2)$ ) 的时候,该向量最小的一项应当小于 $\Vert r_{1:T} \Vert$。 因此,遵循我们上述的直觉,我们可以证明高概率下一定有:

\[\begin{align*} \min_{l \in [n]}(A w_{T+1})_l \le \alpha r_0 - \frac{\beta}{4} \Vert r_{1:T} \Vert, \end{align*}\]

其中常数 $1/4$ 是由于使用集中不等式的误差导致。回顾向量 $r$ 的定义,我们定义新的向量组 $x_t = u_t w_{T+1}$, 那么可以将上面的不等式重写为

\[\begin{align*} \min_{l \in [n]}(A w_{T+1})_l \le \alpha x_0 - \frac{\beta}{4} \sqrt{ \sum_{t=1}^{T=1} (x_j - x_{j+1})^2 + x_{T^2} }. \end{align*}.\]

上式子是否为负事实上可以通过定义一个三对角矩阵 $M$ 的正定性来得到, 业绩分析什么时候成立 $x^\top M x \ge 0$. 经过简单的分析我们可以知道,当 $\alpha = O(\beta / \sqrt{T})$ 的时候,可以保证上式右端项为父,因此算法一定不能返回一个线性分类器,并且结合第一步,我们知道

\[\begin{align*} \max_{w: \Vert w \Vert \le 1}\min_{l \in [n]}(A w)_l - \min_{l \in [n]}(A w_{T+1})_l \ge \frac{\alpha}{\sqrt{T+1}}. \end{align*}\]

Step III: Bounded Norm

最后一步,我们验证构造满足矩阵 $A$ 的范数有界条件, 容易根据集中不等式得到

\[\begin{align*} \max_{l \in [n]} \Vert A_l \Vert = \tilde{O}( \alpha + \beta \sqrt{T}). \end{align*}\]

An $\tilde{\Omega}(1/T^{3/2})$ Lower Bound

最后,我们选取合适的参数 $\alpha, \beta$ 得到最终的复杂度下界。为了保证 $\max_{l \in [n]} \Vert A_l \Vert \le 1$,我们需要选择 $\alpha = O(1)$ 以及 $\beta = \tilde{O}(1/\sqrt{T})$. 为了保证第二步中的条件成立,我们需要选择 $\alpha = O(\beta/ \sqrt{T}) =\tilde{O}(1/T)$. 最终我们知道给出的下界为

\[\begin{align*} \Omega\left( \frac{\alpha}{\sqrt{T}} \right) = \tilde{\Omega}\left( \frac{1}{T^{3/2}} \right). \end{align*}\]

Lower Bound for Problem (2)

本节,我们采用类似的构造,证明关于问题(2) 的复杂度下界。

A Reduction

首先,我们证明,任意求解单纯形/单纯形博弈问题的算法,都可以求解如下的 $\ell_1$/单纯形-矩阵博弈问题:

\[\begin{align*} \max_{w: \Vert w \Vert_1 \le 1} \min_{p \in \Delta^n} p^\top A w = \max_{w: \Vert w \Vert_1 \le 1} \min_{l \in [n]} (Aw)_l. \end{align*}\]

给定一个收益矩阵为 $A \in \mathbb{R}^{n \times d}$ 的 $\ell_1$/单纯形-矩阵博弈问题的实例,我们可以用如下的方式调用收益矩阵为 $(A;-A) \in \mathbb{R}^{n \times 2d}$ 一个单纯形/单纯形博弈问题的求解器进行求解。每次我们从求解器中获得询问点 $p \in \mathbb{R}^d$ 和 $(w^+,w^-) \in \mathbb{R}^{2n}$, 然后返回oracle为 $p^\top A$ 以及 $A(w^+ - w^-)$. 进行 $T+1$ 次迭代后,我们最后输出点 $p_{T+1}$ 以及 $w_{T+1} = w_{T+1}^+ - w_{T+1}^-$ 满足 $\Vert w_{T+1} \Vert \le \Vert w_{T+1}^+ \Vert + \Vert w_{T+1}^- \Vert_1 = 1$. 我们可以证明上述这个归约给出了一个相同效率的单纯形/单纯形问题的求解器,推导如下:

\[\begin{align*} & \max_{\Vert w \Vert_1 \le 1} \min_{p \in \Delta^n} p^\top A w - \min_{p \in \Delta^n} p_{T+1}^\top Aw_{T+1} \\ = & \max_{w \in \Delta^{2d}} \min_{p \in \Delta^n} p^\top A (w^+ - w^-) - \min_{p \in \Delta^n} p_{T+1}^\top A(w_{T+1}^+ - w_{T+1}^-). \end{align*}\]

上式做左端项代表$\ell_1$/单纯形问题解的逼近程度,而右端项是我们上述算法给出的关于单纯形/单纯形问题解的逼近程度。等号成立的原因是:关于$\ell_1$/单纯形问题的解 $w^\ast$ 一定满足 $\Vert w^\ast \Vert_1$,而此时将 $w^\ast$ 的负元素和非负元素的绝对值分开,得到的向量 $(w^+, w^-)$ 一定满足 $(w^+, w^-) \in \Delta^{2d}$.

The Construction

经过上述分析,我们知道如果一个算法可以求解单纯形/单纯形问题,那么也可以在相同的时间内求解 $\ell_1$/单纯形问题。因此,为了构造单纯形/单纯形问题的复杂度下界,只需要构造 $\ell_1$/单纯形问题的复杂度下界即可。由之前关于问题(1)的构造启发,我们进行简单的修改得到如下构造:首先初始化 $v_0 = \alpha 1$,然后对于随后的 $T+1$ 次迭代,对于算法如下的对抗oracle。

  1. 计算算法的查询点 $p_t$ 和 $w_t$.
  2. 取独立的标准高维高斯向量 $\xi_t’$, 然后令 $u_t$ 为$\xi_t’$ 到向量组 $u_1,\cdots,u_{t-1}, w_1,\cdots,w_t$ 补空间的正交投影,后并且归一化使得模长为1的向量。
  3. 抽取独立的标准高维高斯向量 $\xi_t$, 然后令 $v_t$ 为 $\beta \xi_t$ 到向量组 $v_0,\cdots,v_{t-1},p_1,\cdots,p_t$ 补空间的正交投影。
  4. 令 $A_t = \sum_{j=1}^t (v_{j-1} - v_j) u_j^\top$ 并且返回oracle为 $p_t^\top A_t$ 以及 $A_t w_t$.

注意到只有步骤2进行了修改,目的是为了使用集中不等式来满足矩阵 $A$ 的每个元素有界的条件。

Step I: Seperator Exists

类似地,我们可以证明存在一个线性分类器。我们选择单位向量 $\bar w = \frac{1}{\Vert \sum_{t=1}^{T+1} u_t \Vert_1} \sum_{t=1}^{T+1} u_t$. 对于这个平均的向量,成立

\[\begin{align*} &\max_{w: \Vert w \Vert_1 \le 1}\min_{p \in \Delta^n} p^\top A w \ge \min_{p \in \Delta^n} p^\top A \bar w = \frac{\alpha}{\Vert \sum_{t=1}^{T+1} u_t \Vert_1} \ge \frac{\alpha}{\sqrt{d}\Vert \sum_{t=1}^{T+1} u_t \Vert_2} = \frac{\alpha}{\sqrt{d(T+1)}}. \end{align*}\]

Step II: Algorithm Returns a Non-Separator

由于之前分析中的第二步只依赖于 $u_t$ 正交于向量组 $u_1,\cdots,u_{t-1}, w_1,\cdots,w_t$,之前的分析仍然成立。回顾之前的结论,我们知道当 $\alpha = O(\beta / \sqrt{T})$ 的时候,可以保证上式右端项为父,因此算法一定不能返回一个线性分类器,并且结合第一步,我们知道

\[\begin{align*} \max_{w: \Vert w \Vert \le 1}\min_{l \in [n]}(A w)_l - \min_{l \in [n]}(A w_{T+1})_l \ge \frac{\alpha}{\sqrt{d(T+1)}}. \end{align*}\]

Step III: Bounded Elements

在这一步中,我们利用高维高斯分布的集中不等式,证明构造的矩阵 $A$ 中每一个元素都有界。根据矩阵 $A$ 的定义以及三角不等式,我们可以得到

\[\begin{align*} \max_{i,j} \vert A_{i,j} \vert \le \left \vert \sum_{t=1}^T (v_{t-1,i} - v_{t,i}) u_{t,j} \right \vert + \vert v_{T,i} \vert \vert u_{T+1,j} \vert. \end{align*}\]

当给定向量组 $v_0,\cdots, v_T$ 的前提下,向量 $u_t$ 作为球面上的均匀分布,我们知道其满足次高斯范数为 $O(1/d)$ 的次高斯分布。因此根据次高斯随机变量和的集中不等式,我们可以得到以高概率成立

\[\begin{align*} \left \vert \sum_{t=1}^T (v_{t-1,i} - v_{t,i}) u_{t,j} \right \vert = \tilde{O} \left( \sum_{t=1}^T (v_{t-1,i} - v_{t,i})^2/d \right). \end{align*}\]

再对右端项利用Young氏不等式,得到

\[\begin{align*} \left \vert \sum_{t=1}^T (v_{t-1,i} - v_{t,i}) u_{t,j} \right \vert = \tilde{O} \left( \frac{\alpha^2+\sum_{t=1}^T v_{t,i}^2}{d} \right). \end{align*}\]

下面,注意到 $v_{t,i} \mid v_{0,i}, \cdots, v_{t-1,i}$ 服从于方差小于 $\beta^2$ 的高斯分布,我们利用鞅差序列的集中不等式,可以得到以高概率成立着

\[\begin{align*} \left \vert \sum_{t=1}^T v_{t,i}^2 \right \vert = \tilde{O} \left( \beta^2 T \right) \end{align*}\]

因此我们知道以高概率成立

\[\begin{align*} \max_{i,j} \vert A_{i,j} \vert = \tilde{O} \left( \alpha / \sqrt{d} + \beta \sqrt{T/d} \right). \end{align*}\]

An $\tilde{\Omega}(1/T^{3/2})$ Lower Bound

最后,我们选取合适的参数 $\alpha, \beta$ 得到最终的复杂度下界。为了保证 $\max_{i,j} \vert A_{i,j} \vert \le 1$,我们需要选择 $\alpha = O(\sqrt{d})$ 以及 $\beta = \tilde{O}(\sqrt{d/T})$. 为了保证第二步中的条件成立,我们需要选择 $\alpha = O(\beta/ \sqrt{T}) =\tilde{O}(\sqrt{d}/T ))$. 最终我们知道给出的下界为

\[\begin{align*} \Omega\left( \frac{\alpha}{\sqrt{dT}} \right) = \tilde{\Omega}\left( \frac{1}{T^{3/2}} \right). \end{align*}\]]]>
Lesi Chen (陈乐偲)[email protected]
深度强化学习算法总结2026-01-22T00:00:00-06:002026-01-22T00:00:00-06:00https://truenobility303.github.io/DRL深度强化学习前沿算法总结,从Markov决策过程下的经典算法值迭代和策略迭代出发,进而推导出DQN、DDPG、 Policy Gradient、A3C、PPO、DPO。

整理自 UCB CS285, instrusted by Sergey Levine.

RL with Simulators

考虑一个经典的表格设定下的Markov Decision Process (MDP),由五个元素组成:分别为状态空间 $\mathcal{S}$, 动作空间 $\mathcal{A}$, horizon $T$, 转移概率矩阵 $P(s’ | s,a)$, 以及回报函数 $R(s,a)$. 强化学习的目标是寻找到一个策略 $\pi$, 使得从这个策略中采样的轨迹 $\tau = (s_1,a_1,r_1\cdots, s_T,a_T,r_T)$ 可以最大化如下的期望累积折扣回报:

\[\begin{align*} \max_{\tau \sim p^\pi(\tau)} \mathbb{E} [ G(\tau)] = \max_{\tau \sim p^\pi(\tau)} \mathbb{E} \left[ \sum_{t=0}^{T-1} \gamma^t r_{t} \right], \end{align*}\]

其中折扣参数 $\gamma \in (0,1)$ 衡量了当下与未来回报的权衡。

转移概率矩阵 $P(s’| s,a)$ 已知的时候 (也称为可以访问模拟器的设定), 并且动作、状态都为有限的离散值的时候,这个MDP存在着精确求解的算法,即下面所介绍的值迭代 (Value Iteration) 以及策略迭代 (Policy Iteration) 两个经典算法。

Value Iteration

我们定义如下的值函数以及Q函数,分别表示从状态 $s$ 开始,执行策略 $\pi$ 得到的期望总回报:

\[\begin{align*} V^\pi(s) := \mathbb{E}_{\tau \sim p^\pi(\tau)} \left[ \sum_{t=0}^{T-1} \gamma^t r_{t} \mid \tau_{s_0} =s \right], \end{align*}\]

以及从状态 $s$ 出发,执行动作 $a$, 然后执行策略 $\pi$ 所得到的期望总回报:

\[\begin{align*} Q^\pi(s,a) := \mathbb{E}_{s' \sim p(s' |s,a)}[r(s,a) + \gamma V^\pi(s')]. \end{align*}\]

对于最优的策略 $\pi^\ast$, 我们相应地将其对应的值函数以及Q函数记作为 $V^\ast$ 以及 $Q^\ast$. 我们知道事实上最优的值函数以及最优策略可以由 $Q^\ast$ 决定:

\[\begin{align*} V^\ast(s) = \max_{a \in \mathcal{A}} Q^\ast(s,a) \quad \pi^\ast(s) = \arg \max_{a \in \mathcal{A}} Q^\ast(s,a). \end{align*}\]

并且我们证明最优值函数以及Q函数分别满足如下的贝尔曼方程 (Bellman Equation):

\[\begin{align*} V^\ast(s) =& \max_{a \in \mathcal{A}} \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma V^\ast(s')] \\ Q^\ast(s,a) =& \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma \max_{a' \in \mathcal{A}} Q^\ast(s',a') ]. \end{align*}\]

根据上面的关系式,值迭代不断地运行如下算法流程:

\[\begin{align*} V^{k+1}(s) = \max_{a \in \mathcal{A}} \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma V^k(s')]. \end{align*}\]

可以证明,将值函数 $V$ 堪称一个向量,上述迭代过程相当于对于一个收缩算子进行不动点迭代,因此上述迭代总是收敛的。

Policy Iteration

值迭代的每一步需要枚举所有的 $(s,a,a’)$ 元组,因此每次迭代复杂度为 $\mathcal{O}( |\mathcal{S}|^2 |\mathcal{A}| )$. 下面我们介绍称为策略迭代的算法,交替地执行策略评估以及策略改进,其中策略评估的单次迭代复杂度可以将为 $\mathcal{O}(|\mathcal{S}|^2)$,在实际中可能具有更好地效果。

对于给定的确定性策略 $\pi$, 我们知道成立关系式 $V^\pi(s,a) = Q^\pi(s,\pi(s))$, 相应的贝尔曼方程为:

\[\begin{align*} V^\pi(s) =& \mathbb{E}_{s' \sim p(s'|s,\pi(s))}[ r(s,\pi(s)) + \gamma V^\pi(s')]\\ Q^\pi(s,a) =& \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma Q^\pi(s', \pi(s')) ]. \end{align*}\]

上述方程由于策略是给定的,并不需要取max操作,只是一个简单的线性方程,也可以通过在V值上进行简单的不动点迭代求解,而每次迭代的复杂度仅仅需要 $\mathcal{O}(|\mathcal{S}|^2)$. 由于线性方程的求解技术非常成熟,策略评估在实际上可能只需要很低的代价。如果采用不动点迭代, 对于策略 $\pi^k$, 迭代式子为:

\[\begin{align*} V^k_{i+1} = \mathbb{E}_{s' \sim p(s'|s,\pi(s))}[ r(s,\pi(s)) + \gamma V^k_i(s')] \end{align*}\]

得到策略 $\pi$ 的值函数以及 Q-函数后,可以根据Q-函数进行策略改进:

\[\begin{align*} \pi^{k+1}(s) = \arg \max_{a \in \mathcal{A}} \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma V^k(s')]. \end{align*}\]

如果策略改进后价值函数不变,那么说明算法收敛,已经找到了最优策略。反之,可以证明新的策略 $\pi^{k+1}$ 一定严格由于旧的策略 $\pi^k$。由于总策略空间为 $|\mathcal{A}|^{|\mathcal{S}|}$, 我们知道整个算法一定会在有限步收敛。

有意思的是,可以看到值迭代算法实际上是策略迭代算法中的策略评估只进行一步的特例。

RL without Simulators

在本节我们关注于转移概率未知的情况,这也是强化学习中的一个核心设定。此时智能体需要在与环境的交互过程中获得样本,并且根据已有的样本来改进策略。

VI $\rightarrow$ DQN

回顾值迭代基于如下的贝尔曼方程进行不动点迭代:

\[\begin{align*} V^\ast(s) =& \max_{a \in \mathcal{A}} \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma V^\ast(s')]. \end{align*}\]

但是在没有模拟器,也成为无模型 (Model-Free) 的设定中, 我们并不能直接遍历所有的 $a \in \mathcal{A}$ 然后返回 $r(s,a)$, 因此上述值迭代难以直接运行。但幸运的是,我们可以从如下等价的关于 Q函数的方程中得到一个在无模型设定下更容易运行的算法:

\[\begin{align*} Q^\ast(s,a) =& \mathbb{E}_{s' \sim p(s'|s,a)} [ r(s,a) + \gamma \max_{a' \in \mathcal{A}} Q^\ast(s',a') ]. \end{align*}\]

在Deep Q Network (DQN) 中,使用一个神经网络对Q函数进行拟合,记作为 $Q_\theta(s,a)$. 而上面期望 $\mathbb{E}_{s’ \sim p(s’|s,a)}$ 的求解我们使用采样的方式估计,这里与值迭代和策略迭代出现一个本质区别:我们并不能直接选择当前Q函数下最优的策略 $\pi^\ast(s) = \arg \max_{a \in \mathcal{A}} Q_\theta(s,a)$, 因此这样子算法会仅仅利用 (exploit) 已经遇到过的动作,而没有遇到过的动作Q函数的估计量为0,因此我们需要对环境进行探索 (explore). 一个经验上可以比较好平衡探索与利用的简单策略是定义如下的 $\epsilon$-贪婪策略: 以概率 $1-\epsilon$ 选择 $\pi^\epsilon(s) = \arg \max_{a \in \mathcal{A}} Q_\theta(s,a)$, 而以概率 $\epsilon$ 随机选择 $\mathcal{A}$ 中的动作.

随着迭代的进行 $\epsilon$ 的值应当越来越小,最终当Q函数的估计收敛,策略也收敛到贪婪策略。对于网络参数 $\theta$ 的更新,我们在贝尔曼方程残差的平方损失下进行梯度下降,不断改进Q函数的估计:

\[\begin{align*} \theta_{k+1} = \theta_k - \eta \frac{d Q_{\theta_k}(s,a) }{d \theta } \left( Q_{\theta_k}(s,a) - (r(s,a) + \gamma \max_{a' \in \mathcal{A}} Q_{\theta_k}(s',a')) \right), \quad a \sim \pi^\epsilon(s), s' \sim p(s'|s,a) \end{align*}\]

该算法中用来采样的策略是 $\pi^\epsilon$, 但是目标函数的更新使用的是 $\max_{a \in \mathcal{A}} Q_{\theta}(s,a))$, 事实上是用贪婪策略得到了,因此采样和用来优化更新的策略并不一致,这样的算法成为异策略 (off-policy) 算法。这样的异策略算法由于并不要求采样策略与更新策略一致,通常实际中由于可以反复利用已有的样本来提升效率。基于此DQN也采用了经验池回放的思想,维护用过去的经验构成的经验池 $\mathcal{D}$,每次随机从经验池中抽取四元组样本 $(s,a,r,s’) \in \mathcal{D}$ 进行训练:

\[\begin{align*} \theta_{k+1} \approx \arg \min_{\theta} \left( Q_{\theta}(s,a) - (r+ \gamma \max_{a' \in \mathcal{A}} Q_{\theta}(s',a')) \right)^2, \quad (s,a,r,s') \sim \mathcal{D}. \end{align*}\]

上述回归问题如果回归目标项 $r(s,a) + \gamma \max_{a’ \in \mathcal{A}} Q_\theta(s’,a’)$ 一直在变化,很容易导致训练不稳定的现象。实际中一个解决方法是冻结这个目标,使用一个用Polyak平均更新的平滑的网络 $\theta’_{k+1} = \tau \theta’_k + (1-\tau) \theta_{k+1}$. 然后把目标函数变为

\[\begin{align*} \theta_{k+1} \approx \arg \min_{\theta} \left( Q_{\theta}(s,a) - (r + \gamma \max_{a' \in \mathcal{A}} Q_{\theta'_k}(s',a')) \right)^2. \end{align*}\]

然后,上述估计仍然有一个缺点。 根据关系式 $\mathbb{E} \max(X_1,X_2) \ge \max(\mathbb{E}X_1, \mathbb{E}X_2)$, 由于我们对 Q函数的估计事实上也是一个随机变量,因此上述迭代很容易造成Q函数高估的问题。Double DQN 提出如下的改进:通过另一个Q函数,把选择动作以及评估动作的策略进行解耦,可以减轻高估Q函数的问题。一个巧妙之处在于为了减低成本,实际并不构造一个新的Q函数,而是直接使用$\theta’$ 对应的Q函数。修正后的目标函数为:

\[\begin{align*} \theta_k \approx \arg \min_{\theta} \left( Q_{\theta}(s,a) - (r + \gamma Q_{\theta'_k}(s', \arg \max_{a' \in \mathcal{A}} Q_{\theta_k}(s,a) )) \right)^2. \end{align*}\]

DQN $\rightarrow$ DDPG

DQN 在离散动作空间中取得了很大的成功,但是由于需要枚举所有的动作选择最优,并不能直接适用于连续动作空间。本小节我们将介绍s适用于连续动作的 Deep Deterministic Policy Gradient (DDPG) 算法。DDPG的思想是:虽然不能直接选贪婪策略,我们可以使用一个神经网络拟合这个贪婪策略,记作为 $\mu_\phi(s)$. 网络训练的目标应当使得该策略接近于Q函数的最大值,因此只需要对于Q函数使用梯度上升就可以得到一个这样的近似策略。而有个这个近似策略 $\mu_\phi$ 之后,将他用来替换原来Q函数更新中的显式argmax操作,就可以得到一个可执行的算法,核心更新如下:

\[\begin{align*} \theta_{k+1} =& \theta_k - \eta_\theta \frac{d Q_{\theta_k}(s,a) }{d \theta } \left( Q_{\theta_k}(s,a) - (r + \gamma Q_{\theta_k'}(s',\mu_{\phi_k’}(s') )) \right), \quad (s,a,r,s') \sim \mathcal{D}; \\ \phi_{k+1} =& \phi_k + \eta_\phi \frac{d \mu_{\phi_k}(s)}{d \phi} \frac{d Q_{\theta_k} (s,\mu_\phi(s))}{d \mu_\phi}. \end{align*}\]

其中对于参数 $\theta$ 和 $\phi$ 与DQN的改进相同,分别维护一个Polyak平均版本$\theta’$ 和 $\phi’$,用来计算更稳定的冻结目标 $r(s,a) + \gamma Q_{\theta_k’}(s’,\mu_{\phi_k’}(s’) )$. 类似地,上面介绍的DQN的很多改进策略自然也适用于DDPG。Twin Delayed DDPG (TD3) 算法将这些技巧进行尝试,并且用对于实验效果最为关键的两个技术进行命名:其中 twin 来自于double DQN,用两个Q函数来减缓Q函数高估的问题。具体来说,TD3将Q函数的更新目标设置为

\[\begin{align*} r + \gamma \min \left( Q_{\theta_k'}^{(1)}(s',\mu_{\phi_k’}(s')), Q_{\theta_k'}^{(2)}(s',\mu_{\phi_k’}(s')) \right). \end{align*}\]

而第二个技巧 delay 说的是用来评估Q函数的参数 $\theta$ 以及用来执行动作的参数 $\phi$ 不要使用相同的更新频率。对于参数 $\phi$ 使用延迟的更新技巧,这样可以在 Q函数更新地更为准确的前提下执行动作。

Policy Gradient $\rightarrow$ A3C

DDPG中参数 $\theta$ 和 $\phi$ 其实扮演者评论家和演员的角色。本节将介绍一个基于这个思想的算法,称为演员-评论家 (Actor-Critic). 主要区别在于评论家的不同计算方式。DDPG依赖于假设策略 $\mu_\phi(s)$ 是一个确定性的函数,这很可能限制了其表达能力,我们可能希望学习到一个随机的策略,可以优于确定性的策略。

使用随机策略的核心困难在于如何进行求导,这需要依赖于如下的策略梯度的引理. 定义 $p_\phi(\tau)$ 为以 $\phi$ 为参数的策略采样出轨迹 $\tau = (s_1,a_1,r_1\cdots, s_T,a_T,r_T)$ 的概率分布,我们希望寻找最优的参数 $\phi$ 使得

\[\begin{align*} \max_\phi J(\phi) = \max_{\tau \sim p_\phi(\tau)} \mathbb{E} [ G(\tau)] = \max_{\tau \sim p_\phi(\tau)} \mathbb{E} \left[ \sum_{t=0}^{T-1} \gamma^t r_{t} \right], \end{align*}\]

策略梯度引理推导的是上述目标函数的一个无偏梯度估计, 使用恒等式 $\nabla_\phi \log z =\frac{1}{z} \nabla_\phi z$, 我们可以得到

\[\begin{align*} \nabla_\phi J(\phi) = \mathbb{E}_{\tau \sim p_\phi(\tau)} [ \nabla_\phi \log p_\phi(\tau) G(\tau)]. \end{align*}\]

这可以看成一个用回报加权的交叉熵损失的梯度。由于对于轨迹的概率有 $p_\phi(\tau) = p(s_0) \prod_{t=0}^{T-1}p(a_t|s_t) p(s_{t+1}| s_t,a_t)$, 我们可以知道上式可以展开为

\[\begin{align*} \nabla_\phi J(\phi) = \mathbb{E}_{\tau \sim p_\phi(\tau)} [ \sum_{t=0}^{T-1} \nabla_\phi \log p_\phi(a_t | s_t) G(\tau)]. \end{align*}\]

进一步利用关系式 $G(\tau) = G(\tau_{0:t}) + \gamma^t G(\tau_{t:T})$ 将累积回报分解并且注意到时刻 $t$ 之前的回报和时刻 $t$ 之后的动作无关,我们进一步得到化简后的式子为

\[\begin{align*} \nabla_\phi J(\phi) = \mathbb{E}_{\tau \sim p_\phi(\tau)} [ \sum_{t=0}^{T-1} \nabla_\phi \log p_\phi(a_t | s_t) \gamma^t G(\tau_{t:T})]. \end{align*}\]

采用上述梯度直接对参数 $\phi$ 进行梯度上升的策略就是策略梯度方法 (Policy Gradient). 该方法的一个实际弊端是上述估计量需要对所有horizon进行求和,会导致一个非常大的方差。REINFORCE算法通过将估计的总回报值减去一个基线的方式来减小方差,在每个时刻 $t$ 下的策略梯度为

\[\begin{align*} \nabla_\phi J_t(\phi) = \mathbb{E}_{(s_t,a_t) \sim p_{\phi}(s_t,a_t)} [\nabla_\phi \log p_\phi(a_t | s_t) \gamma^t G(\tau_{t:T})] \end{align*}\]

通过简单的计算,可以发现只要基线 $b(s_t)$ 与 $a_t$ 无关的话,将策略梯度改变为如下的形式仍然可以得到一个无偏估计

\[\begin{align*} \nabla_\phi J_t(\phi) = \mathbb{E}_{(s_t,a_t) \sim p_{\phi}(s_t,a_t)} [\nabla_\phi \log p_\phi(a_t | s_t) \gamma^t (G(\tau_{t:T}) - b(s_t))]. \end{align*}\]

回顾值函数以及Q函数的定义,我们知道 $\mathbb{E}[G(\tau_{t:T}) | s_t,a_t] = Q(s_t,a_t)$,并且可以想到值函数本身就是一个自然的基线。据此,我们定义策略 $\phi$ 诱导的优势函数为

\[\begin{align*} A_{\phi}(s,a) = Q_{\phi}(s,a) - V_{\phi}(s). \end{align*}\]

我们希望使用优势函数代替策略梯度中的 $G_{\tau:T}$, 这将得到 Advantage Actor-Critic (A2C) 算法。注意到为了避免拟合 $Q$ 函数以及值函数两个网络的复杂度,A2C 中使用关系式 $Q_\phi(s,a) := \mathbb{E}_{s’ \sim p(s’ |s,a)}[r(s,a) + \gamma V_\phi(s’)]$ 来使得算法只依赖值函数对应的网络。最终得到的算法如下, 对于每次迭代 $k$ 以及每个时刻 $t$, 进行如下更新

\[\begin{align*} & \text{Play } a_t \sim p_\phi(a|s_t)\\ & \text{Observe } r_t \text{ and neext state } s_{t+1} \sim p(s| s_t,a_t) \\ & \hat A_\phi(s_t,a_t) = V_{\theta_k}(s_t) - (r_{t} + \gamma V_{\theta_k}(s_{t+1})) \\ & \theta_{k+1} = \theta_k - \eta_{\theta} \frac{d V_{\theta_k}(s_t) }{d \theta } \hat A_\phi(s_t,a_t) \\ & \phi_{k+1} = \phi_k - \eta_\phi \frac{d \log p_{\phi_k}(a_t|s_t) }{d \phi} \gamma^t \hat A_\phi(s_t,a_t) \end{align*}\]

A3C (Asynchronous Advantage Actor-Critic) 进一步加入分布式算法的思想,在多个并行的环境里面异步使用A2C算法,来提升算法效率。

A3C $\rightarrow$ PPO

A3C 使用异步的方式提升效率,但基于之前DQN以及DDPG的经验,我们知道一个更本质的方法是直接使用异策略算法,在一个经验池中进行多次更新。因此,我们希望将演员-评论家算法修改为异策略算法,给定采样策略 $\pi_{\phi’}$ 对策略 $\pi_\phi$ 进行更新。

注意到评论家只需要评估采样策略 $\pi_{\phi’}$ 的优势函数,因此不需要进行改动。需要改动的方面为演员的策略更新,这可以通过重要性采样实现。可以证明如下的恒等式成立

\[\begin{align*} \nabla_\phi J_t(\phi) =& \mathbb{E}_{(s_t,a_t) \sim p_{\phi}(s_t,a_t)} [\nabla_\phi \log p_\phi(a_t | s_t) \gamma^t A_{\phi'}(s_t,a_t) ] \\ =& \mathbb{E}_{(s_t,a_t) \sim p_{\phi'}(s_t,a_t)} [ \frac{p_{\phi}(s_t,a_t)}{p_{\phi'}(s_t,a_t)} \nabla_\phi \log p_\phi(a_t | s_t) \gamma^t A_{\phi'}(s_t,a_t) ] \end{align*}\]

为了重要性采样会有比较好的效果,我们希望策略 $\phi$ 以及 $\phi’$ 尽可能接近,这可以通过约束两个分布之间的KL散度来实现。在每一步更新过程中,我们试图求解如下约束优化问题:

\[\begin{align*} \phi_{k+1} &\approx \arg \max_{\phi} J_t(\phi) \quad {\rm s.t.} \quad {\rm KL}(p_{\phi'}(a|s_t) \Vert p_\phi(a|s_t) ) \le \delta. \end{align*}\]

满足该约束的时候两个策略将很接近,因此 $p_\phi(s_t) \approx p_{\phi’}(s_t)$, 那么根据概率分解式 $p(s_t,a_t) = p(s_t) p (a_t | s_t)$, 我们知道 $p_{\phi}(s_t,a_t)/p_{\phi’}(s_t,a_t) \approx p_{\phi}(a_t|s_t)/p_{\phi’}(a_t|s_t)$, 这也简化了计算, 使得

\[\begin{align*} \nabla_\phi J_t(\phi) \approx& \mathbb{E}_{(s_t,a_t) \sim p_{\phi'}(s_t,a_t)} [ \frac{p_{\phi}(a_t|s_t)}{p_{\phi'}(a_t|s_t)} \nabla_\phi \log p_\phi(a_t | s_t) \gamma^t A_{\phi'}(s_t,a_t) ] \end{align*}\]

TRPO (Trust Region Policy Optimization) 利用共轭梯度法实现求逆的自然梯度方法来近似求解上述硬约束问题,但该算法由于较为复杂实际并不常用。现在实际训练中更广泛采用的算法称为PPO (Proximal Policy Optimization), 该算法求解如下的Lagrange问题:

\[\begin{align*} \phi_{k+1} &\approx \arg \max_{\phi} \min_{\lambda \in \mathbb{R}_+} J_t(\phi) - \lambda ({\rm KL}(p_{\phi'}(a|s_t) \Vert p_\phi(a|s_t) - \delta ). \end{align*}\]

这样的软约束优化问题可以使用梯度下降类型的算法进行求解,并且实际通常效果也相对理想。

PPO的另一个启发式(但实际也经常被使用)的版本直接使用如下的代理损失函数:

\[\begin{align*} \phi_{k+1} \approx \min_{\phi} \mathbb{E}_{(s_t,a_t) \sim p_{\phi'}(s_t,a_t)} \left[ \min\left(\frac{p_\phi(a_t \vert s_t)}{p_{\phi'}(a_t \vert s_t)} A_{\phi'}(s_t,a_t), \text{clip }\left(\frac{p_\phi(a_t \vert s_t)}{p_{\theta'}(a_t \vert s_t)},1 +\epsilon, 1-\epsilon\right) A_{\phi'}(s_t,a_t)\right) \right] \end{align*}\]

上式的含义是,当优势函数 $A_{\phi’}(s_t,a_t)$ 为正值的时候,梯度方向会鼓励 $p_\phi(a_t \vert s_t)$ 增大,但为了稳定性,我们限制增大的幅度不能超过 $p_{\phi’}(a_t \vert s_t)$ 的 $1+\epsilon$ 倍。而当 $A_{\phi’}(s_t,a_t)$ 为负值的时候,梯度方向会鼓励 $p_\phi(a_t \vert s_t)$ 减小,但我们限制其不能超过 $p_{\phi’}(a _t \vert s_t)$ 的 $1-\epsilon$ 倍。

PPO $\rightarrow$ DPO

本节我们特别考虑RLHF (Reinforcement Learning with Human Feedbacks) 的设定。记 $\phi$ 与 $\theta$ 分别为希望优化的策略模型以及回报模型参数,给定一个提示词 $x$, 以及大语言模型 $\phi$ 生成的样本对 $(y_+,y_-) \sim p_\phi(y|x)$. 注意到这里 $y_+$ 表示两者中更符合人类偏好的一个,而$y_-$则是更不符合的另一个。

给定一个由上述这样的正负样本对所生成的数据集$\mathcal{D}$,我们希望训练得到一个模型可以提供一个回报函数 $r_\theta(x,y)$ 可以尽可能地分开正样本和负样本。将其视作一个二元分类问题,令 $\sigma(\,\cdot\,)$ 为logistic 函数,我们定义关于模型 $\theta$ 的损失为

\[\begin{align*} \min_\theta L(\theta):= - \mathbb{E}_{(x,y_+,y_-) \sim \mathcal{D}}[ \log \sigma (r_\theta(x,y_+) - r_\theta(x,y_-) )]. \end{align*}\]

我们希望最小化上述损失函数得到一个好的回报模型。而对于策略模型,我们希望他所生成的样本应当尽可能最大化回报函数,但是与SFT过程中所得到的基础模型 $\theta_{\rm ref}$ 不应该有太多偏离。我们希望 $\phi$ 能优化如下的强化学习问题:

\[\begin{align*} \max_{\phi} J(\phi):= \mathbb{E}_{x \sim \mathcal{D}, y \sim p_\phi(y|x)}[ r_\theta(x,y)] - \beta {\rm KL}(p_\phi(y|x) \Vert p_{\phi'}(y |x) ). \end{align*}\]

通过求导并且令其为0,可以发现最优的策略模型 $\phi$ 应当满足

\[\begin{align*} p_\phi(y|x) \propto p_{\phi'}(y|x) \exp( r_\theta(x,y)/\beta). \end{align*}\]

因此,在这个模型下, $\phi$ 和 $\theta$ 实际上存在着上面的对应关系,我们用 $\phi$ 来表示 $r_\theta(x,y)$, 得到

\[\begin{align*} r_{\theta}(x,y) = \beta \left(\log \frac{p_\phi(y|x)}{p_{\phi'}(y|x)} + C \right), \end{align*}\]

其中 $C>0$ 是一个常数。代入关于模型 $\theta$ 的损失,得到最优的回报模型,关于 $\phi$ 需要求解

\[\begin{align*} \min_\phi L(\theta):= - \mathbb{E}_{(x,y_+,y_-) \sim \mathcal{D}}\left[ \log \sigma \left( \beta \log \frac{p_\phi(y_+|x)}{p_{\phi'}(y_+|x)} - \beta \frac{p_\phi(y_-|x)}{p_{\phi'}(y_-|x)} \right) \right]. \end{align*}\]

这就得到了 DPO (Direct Policay Optimization). 通过上述的变换,DPO去掉了PPO中的reward model以及value model,实现上更为简单。

]]>
Lesi Chen (陈乐偲)[email protected]
高阶凸优化的复杂度下界简证2025-12-19T00:00:00-06:002025-12-19T00:00:00-06:00https://truenobility303.github.io/LB-OptMSPaper Reading: Oracle Complexity of Second-Order Methods for Smooth Convex Optimization.

在上一期blog中,我们介绍了一个 $p$阶算法,可以对于凸优化问题取得 $\mathcal{O}(\epsilon^{-2/(3p+1)})$ 的收敛率。在本文我们进一步证明一个下界,说明这个结果是不可改进的。

我们曾经在很早之前 介绍过 一阶算法的最优复杂度下界, 为 $\Omega(\epsilon^{-1/2})$. 本文的结果事实上推广了上述构造,得到一个 $\Omega(\epsilon^{-2/(3p+1)})$ 的下界。

用 $x_{[i]}$ 来表示向量 $x$ 的第 $i$ 个坐标分量。对于任意给定的迭代次数 $T$, 我们考虑如下 $f_T: R^T \rightarrow R$ 的 函数

\[\begin{align*} f_T(x) = \frac{1}{T^{3 (p+1)/2}} \left( \frac{1}{p+1}\left( \sum_{i=1}^{T-1} \left \vert (x_{[i]} - x_{[i-1]}) T^{3/2} \right \vert^{p+1} + \left \vert x_{[T]} T^{3/2} \right \vert^{p+1} \right) - T^{3/2} x_{[1]} \right) \end{align*}\]

容易验证该函数是凸的,而且 $p$ 阶导数应该满足 $\mathcal{O}(1)$-Lipschitz 连续。换元,令

\[\begin{align*} y = T^{3/2} (x_{[1]} - x_{[2]}, x_{[2]} - x_{[3]}, \cdots, x_{[T]} ). \end{align*}\]

求导并且令其等于0。我们知道最优点处的 $y^\ast$ 应该为全 $1$ 向量。因此, $x^\ast$ 应该满足如下公差为 $-1$ 的等差数列

\[\begin{align*} x^\ast = (T, T-1, \cdots, 1) / T^{3/2}. \end{align*}\]

注意到最小点 $x^\ast$ 满足条件 $\Vert x^\ast \Vert = \mathcal{O}(1)$. 并且代入后可以得到函数的极小值为

\[\begin{align*} f_{T}^\ast = \frac{1}{T^{3 (p+1)/2}} \left( \frac{T}{p+1} - T \right) = - \frac{(p-1)}{(p+1)T^{(3p+1)/2}}. \end{align*}\]

对于任意从 $0$ 出发的进行不超过 $T$ 次迭代的 $p$ 阶算法,我们考虑将其优化函数 $f_{2T}$. 注意到由于函数的链式构造 (也即仅有相邻两个坐标相连),进行张量步运算的 $p$ 阶算法每次只能激活至多一个坐标(也即将一个新的坐标从零值变为非零值)。进行 $T$ 次迭代以内,由于从 $T+1$ 开始的坐标都为 $0$, 算法至多能取得与优化函数 $f_T$ 一样的效果,那么函数算法返回的点 $\hat x$ 成立

\[\begin{align*} f_{2T}(\hat x) - f_{2T}^\ast \ge f_T^\ast - f_{2T}^\ast = \Omega( T^{-(3p+1)/2} ). \end{align*}\]

证毕。

]]>
Lesi Chen (陈乐偲)[email protected]
外梯度法在凸优化的最优二阶以及高阶加速2025-12-18T00:00:00-06:002025-12-18T00:00:00-06:00https://truenobility303.github.io/OptMSPaper reading: Optimal and Adaptive Monteiro-Svaiter Acceleration.

本文介绍最优的二阶乃至于高阶算法. 考虑凸优化问题$\min_{x \in R^d} f(x)$ ,该算法可以在 $\mathcal{O}(\epsilon^{-2/(3p+1)})$ 迭代内寻找到一个近似解 $\hat x$ 满足 $f(\hat x) - f^\ast \le \epsilon$, 其中每次迭代调用常数次 $p$ 阶Oracle $(\nabla f(x), \nabla^2 f(x), \cdots, \nabla^p f(x))$.

上述结果最早由 [1,2] 用不同的方法独立做出来,但原始的算法都稍显复杂。本文我们介绍 [1] 的算法,而且部分推导过程参照了后续工作 [3] 的推导。

Preliminaries

在本文中,我们假设目标函数满足

\[\begin{align*} \Vert \nabla^p f(x) -\nabla^p f(y) \Vert \le L \Vert x-y \Vert, \quad \forall x,y \in R^d. \end{align*}\]

一个简单的推论是,定义 $p$ 阶Taylor展开

\[\begin{align*} T_{x,p}(z) = f(x) + \sum_{i=1}^p \frac{1}{i!} \nabla^i f(x) [z-x]^i, \quad \forall z \in R^d. \end{align*}\]

那么我们有如下的逼近关系

\[\begin{align*} &\vert f(z) - T_{x,p}(z) \vert \le \frac{L}{(p+1)!} \Vert z - x \Vert^{p+1}; \\ &\Vert \nabla f(z) - \nabla T_{x,p}(z) \Vert \le \frac{L}{p!} \Vert z - x \Vert^{p}. \end{align*}\]

Basic Tensor Step

本节,介绍基础的张量步,作为后续的oracle。

根据上一节介绍的Taylor展开的逼近关系,容易想到如下的操作,对于一个点 $x$, 利用Taylor展开定义一个局部的近似函数,然后求极小化,得到下一个点。用数学语言表达,我们有

\[\begin{align*} x^+ = \arg \min_{z \in R^d} T_{x,p}(z) + \frac{M}{(p+1)!} \Vert z - x \Vert^{p+1}, \end{align*}\]

其中参数 $M \ge L$. 例如 $M = 2L$, 令 $\lambda = (M / p!) \Vert x^+ -x \Vert^{p-1}$, 可以验证上述迭代满足

\[\begin{align*} \Vert \nabla f(x^+) + \lambda (x^+ - x) \Vert=& \Vert \nabla f(x^+) - \nabla T_{x,p}(x^+) \Vert \le \frac{L}{p!} \Vert x^+ - x \Vert^p = \frac{\lambda}{2} \Vert x^+ - x \Vert. \end{align*}\]

在后续算法的分析中,我们会用到这个条件。在这个章节,我们讨论上述张量步的具体实现。

  • 对于 $p=1$ 的情况,可以简单发现这等价于步长为 $1/M$ 的梯度步。
  • 对于 $p=2$ 的情况,可以发现这等价于之前介绍过的 三次正则牛顿步. 根据Nesterov 和 Polyak 著名的文章 [4], 我们知道这个二阶oracl可以在几乎和矩阵求逆等价的时间内实现。
  • 对于 $p=3$ 的情况,这等价于实现一个三阶张量步。根据Nesterov的近期工作 [5], 根据我们在节末给出的矩阵不等式,事实上三阶方向导数 $\nabla^3 f(x)[h^3]$ 可以被二阶导数 $\nabla^2 f(x)[h]$ 以及四阶距离函数 $\Vert h \Vert^4$ 的和控制住。最后三阶导数对子问题的影响很小,仍然可以在几乎和矩阵求逆等价的时间内实现。这个矩阵不等式为,对于任意的 $\tau >0$, 成立
\[\begin{align*} -\frac{1}{\tau} \nabla^2 f(x) - \frac{\tau}{2} L \Vert h \Vert^2 \preceq \nabla^3 f(x)[h] \preceq \frac{1}{\tau} \nabla^2 f(x) + \frac{\tau}{2} L \Vert h \Vert^2. \end{align*}\]
  • 对于 $p=+\infty$ 的情况, 文章 [1] 同样也讨论了对于Hessian很稳定的函数,例如logistic function,也可以通过牛顿步进行实现。

Wamup: Basic Acceleration

本节,作为一个预热,我们给出一个相对简单的加速算法,可以取得 $\mathcal{O}(\epsilon^{-(p+1)})$ 的收敛率。这个方法完全可以由我们之前的内容得到。在外梯度法的最优一阶加速 中,我们介绍了使用anytime-online-to-batch conversion以及外梯度法可以得到一个最优的具有 $\mathcal{O}(\epsilon^{-1/2})$ 的一阶算法。下面我们将该算法推广到高阶。

给定算法访问的点 $w_1,\cdots, w_t$, 我们会定义一个加权平均 $x_t = \sum_{i=0}^{t} a_i w_i / A_t$, 其中 $A_t = \sum_{i=0}^{t} a_t$. 我们在之前文章中已经证明:

\[\begin{align*} f(x_T) - f(x^\ast) \le \frac{\langle a_t \nabla f(x_t), w_t - x^\ast \rangle}{A_T} := \frac{R_T(x^\ast) }{A_T}. \end{align*}\]

我们下面设计一个算法保证遗憾界 $R_T(x^\ast) = \mathcal{O}(1)$。利用之前所介绍的外梯度法,为了达到该遗憾界,只需要构造出一个hint满足条件

\[\begin{align*} a_t \eta \Vert h_t - g_t \Vert \le \Vert w_t - v_t \Vert /2, \quad {\rm where} \quad g_t = \nabla f(x_t), \end{align*}\]

其中 $v_t$ 为外梯度法中的对偶变量。注意到 $x_t = \sum_{i=0}^{t} a_i w_i / A_t$ 依赖于还没有访问的 $w_t$,我们考虑将其用 $v_t$ 来代替,得到如下的hint设计:

\[\begin{align*} z_t = \frac{\sum_{i=0}^{t-1} a_i w_i + a_t v_t}{A_t}, \quad h_t = \sum_{i=1}^{p-1} \frac{1}{i!} \nabla^i f(x_t)[z_t-x_t]^{i-1}. \end{align*}\]

那么我们知道hint的近似误差满足

\[\begin{align*} \Vert h_t - g_t \Vert \le \frac{L}{p!} \Vert z_t - x_t \Vert^p = \frac{L}{p!} \left( \frac{a_t}{A_t} \right)^{p} \Vert w_t -v_t \Vert^p. \end{align*}\]

通过将外梯度发的所有迭代都投影到一个固定大小的集合内,我们可以容易地保证 $\Vert w_t -v_t \Vert = \mathcal{O}(D)$, 那么就有

\[\begin{align*} \frac{a_t \eta \Vert h_t - g_t \Vert}{\Vert w_t - v_t \Vert} = \mathcal{O} \left( \frac{\eta L a_t^{p+1} D^{p-1}}{A_t^p} \right). \end{align*}\]

选择步长 $\eta = \mathcal{O}(1/ (L D^{p-1}))$, 那么可以发现最大可选择的级数为 $a_t = \Omega(t^p)$。在这个设定下满足 $A_t = \Omega(t^{p+1})$. 然后,根据 外梯度法 的推导得到算法具有如下的收敛率:

\[\begin{align*} f(x_T) - f(x^\ast) \le \frac{L D^{p+1}}{T^{p+1}}. \end{align*}\]

换句话说,找到一个 $\epsilon$-解的 $p$ 阶oracle复杂度为 $\mathcal{O}(\epsilon^{-(p+1)})$.

Optimal Acceleration

本节介绍 [1] 中所给出的算法。首先,初始化变量 $A_0= 0$, $v_0 = y_0 = x_0$. 然后进行如下迭代总共 $T$ 次。

\[\begin{align*} a'_{t+1} =& \frac{1 + \sqrt{1+4 \lambda'_{t+1} A_t}}{2 \lambda'_{t+1}}, \quad A'_{t+1} = A_t + a'_{t+1}, \quad y_t = \frac{A_t}{A'_{t+1}} x_t + \frac{a'_{t+1}}{A'_{t+1}} v_t \\ z_{t+1} =& \arg \min_{z \in R^d} T_{y_t,p}(z) + \frac{2L}{(p+1)!} \Vert z - y_t \Vert^{p+1}, \quad \lambda_{t+1} = 2L \Vert z_{t+1} - y_t \Vert^{p-1} \\ \gamma_{t+1} =& \min \left\{1, \frac{\lambda'_{t+1}}{\lambda_{t+1}} \right\}, \quad a_{t+1} = \gamma_{t+1} a'_{t+1}, \quad A_{t+1} = A_t + a_{t+1} \\ x_{t+1} =& \frac{(1-\gamma_{t+1}) A_t}{A_{t+1}} x_t + \frac{\gamma_{t+1} A'_{t+1}}{A_{t+1}} z_{t+1} \\ v_{t+1} = & v_t - a_{t+1} \nabla f(z_{t+1}). \end{align*}\]

算法看起来有点复杂。我们进行一些简单的解释。框架上,算法大体上还是与 外梯度法 相似,用张量步更新变量原变量 $z$ 后,再紧接着更新对偶变量 $v$. 算法中的 $A_t = \sum_{i=0}^t a_t$ 也与之前加速算法中的量相同,我们希望证明算法的收敛率为 $\mathcal{O}(1/A_T)$ 并且希望 $A_t$ 是一个增长尽可能快的级数。$a’_{t+1}$ 的公式看着有点古怪,事实上它是一个二次函数的根,来源于 Nesterov加速梯度法 类似的步骤,我们很快会在后续的证明中看到这个公式的作用。算法中的 $\lambda’_{t+1}$ 会是一个动态选择的期望步长大小的倒数,而 $\lambda_{t+1}$ 则代表实际张量步得到的步长大小的倒数。当实际量 $\lambda_{t+1} \ge \lambda’_{t+1}$ 的时候,我们需要用系数 $\gamma_{t+1} = \lambda’_{t+1} / \lambda_{t+1}$ 减缓对偶变量的更新幅度。

Analysis

尽管算法稍显复杂,但结合证明可能更好理解。我们将证明拆解为以下几个步骤。

Potential Decrease

这一步中,我们定义势能函数并且证明其下降性。为了叙述方便,我们定义如下符号

\[\begin{align*} E_t: =f(x_t) - f(x^\ast), \quad D_t := \frac{1}{2} \Vert v_t - x^\ast \Vert^2, \quad N_{t+1}:= \frac{1}{2} \Vert z_{t+1} - y_t \Vert^2. \end{align*}\]

与Nesterov加速梯度法类似,我们希望证明势能函数 $A_t E_t + D_t$ 是单调下降的。

根据 $A’_{t+1} = A_t + a’_{t+1}$. 我们有

\[\begin{align*} a'_{t+1} v_t = A'_{t+1} y_t - A_t x_t = a'_{t+1} z_{t+1} + A'_{t+1} (y_t - z_{t+1})- A_t (x_t - z_{t+1}). \end{align*}\]

利用这个恒等式,我们将内积项写成如下的形式

\[\begin{align*} & a'_{t+1} \langle \nabla f(z_{t+1}), x^\ast - v_t \rangle \\ =& \langle \nabla f(z_{t+1}), A'_{t+1} y_t - A_t x_t = a'_{t+1} z_{t+1} + A'_{t+1} (y_t - z_{t+1})- A_t (x_t - z_{t+1}) \rangle \\ \le& a'_{t+1} (f(x^\ast) - f(z_{t+1})) + A'_{t+1} \langle \nabla f(z_{t+1}), z_{t+1} - y_t \rangle + A_t ( f(x_t) - f(z_{t+1}) ) \\ =& A_t E_t - A'_{t+1} ( f(z_{t+1}) - f(x^\ast) ) + A'_{t+1} \langle \nabla f(z_{t+1}), z_{t+1} - y_t \rangle \end{align*}\]

其中不等式使用了目标函数 $f$ 的凸性。对于最后的内积项,使用恒等式 $\langle a,b\rangle=\frac{1}{2} \Vert a \Vert^2 - \frac{1}{2} \Vert a \Vert^2 - \frac{1}{2} \Vert b \Vert^2$ 可以进一步得到

\[\begin{align*} & A'_{t+1} \langle \nabla f(z_{t+1}), z_{t+1} - y_t \rangle = \frac{A'_{t+1}}{\lambda_{t+1}} \langle \lambda_{t+1} \nabla f(z_{t+1}), z_{t+1} - y_t \rangle \\ =& \frac{A'_{t+1}}{2 \lambda_{t+1}} \Vert \nabla f(z_{t+1}) + \lambda_{t+1} (z_{t+1} - y_t) \Vert^2 - \frac{A'_{t+1}}{2 \lambda_{t+1}} \Vert \nabla f(z_{t+1}) \Vert^2 - \frac{A'_{t+1}\lambda_{t+1}}{2} \Vert z_{t+1} - y_t \Vert^2 \\ \le&-\frac{3}{4} A'_{t+1}\lambda_{t+1} N_{t+1} - \frac{A'_{t+1}}{2 \lambda_{t+1}} \Vert \nabla f(z_{t+1}) \Vert^2, \end{align*}\]

其中最后一步利用了之前所推到过的张量步的性质。因此,

\[\begin{align*} &A'_{t+1} (f(z_{t+1}) - f(x^\ast)) - A_t E_t \\ \le& a'_{t+1} \langle \nabla f(z_{t+1}), v_t - x^\ast \rangle -\frac{3}{4} A'_{t+1}\lambda_{t+1} N_{t+1} - \frac{A'_{t+1}}{2 \lambda_{t+1}} \Vert \nabla f(z_{t+1}) \Vert^2. \end{align*}\]

利用恒等式 $A_{t+1} = A_t + a_{t+1}= A_t + \gamma_{t+1} a’_{t+1} = (1-\gamma_{t+1}) A_t +\gamma_{t+1} A’_{t+1}$ 以及函数的凸性,我们知道

\[\begin{align*} &A_{t+1} E_{t+1} \\ \le& (1-\gamma_{t+1}) A_t E_t + \gamma_{t+1} A'_{t+1} (f(z_{t+1} - f(x^\ast)) ) \\ \le& A_t E_t + a_{t+1} \langle \nabla f(z_{t+1}), v_t - x^\ast \rangle -\frac{3}{4} \gamma_{t+1} A'_{t+1} \lambda_{t+1} N_{t+1} - \frac{\gamma_{t+1} A'_{t+1}}{2 \lambda_{t+1}} \Vert \nabla f(z_{t+1}) \Vert^2. \end{align*}\]

然后根据 $D_t$ 的定义以及对偶变量 $v_{t+1}$ 的外梯度更新公式,我们有

\[\begin{align*} D_{t+1}=& \frac{1}{2} \Vert v_{t+1} - x^\ast \Vert^2 = \frac{1}{2} \Vert v_t - a_{t+1} \nabla f(z_{t+1}) - x^\ast \Vert^2 \\ =& D_t + a_{t+1} \langle \nabla f(z_{t+1}), x^\ast - v_t \rangle + \frac{a_{t+1}^2}{2} \Vert \nabla f(z_{t+1}) \Vert^2. \end{align*}\]

这里出现了相同(但是符号相反的)内积项,我们将两个式子相加后得到

\[\begin{align*} & (A_{t+1} E_{t+1} + D_{t+1}) - (A_t E_t + D_t) \\ \le& -\frac{3}{4} \gamma_{t+1} A'_{t+1} \lambda_{t+1} N_{t+1} - \left(\frac{\gamma_{t+1} A'_{t+1}}{2 \lambda_{t+1}} - \frac{a_{t+1}^2}{2} \right) \Vert \nabla f(z_{t+1}) \Vert^2. \end{align*}\]

我们希望上式的最后一个一直是负数因此可以丢掉。这可以通过算法中定义 $a’_{t+1}$ 满足二次方程 $A’_{t+1} = A_t +a’_{t+1} = \lambda’_{t+1} (a’_{t+1})^2$ 来得到,这是因为在这个设定下,我们有

\[\begin{align*} \frac{\gamma_{t+1} A'_{t+1}}{2 \lambda_{t+1}} = \frac{\gamma_{t+1} \lambda'_{t+1} (a'_{t+1})^2}{2 \lambda_{t+1}} = \frac{\lambda'_{t+1} a_{t+1}^2}{2 \gamma_{t+1} \lambda_{t+1}} \ge \frac{a_{t+1}^2}{2}. \end{align*}\]

因此,我们可以得到

\[\begin{align*} A_{t+1} E_{t+1} + D_{t+1}\le A_t E_t + D_t -\frac{3}{4} \gamma_{t+1} A'_{t+1} \lambda_{t+1} N_{t+1}. \end{align*}\]

Estimation of the Growth Rate

下面,我们希望估计 $A_t$ 的增长速率。我们采用 [3] 中给出的一个简化版本的证明。

注意到算法中还有一个参数 $\lambda’_{t+1}$ 还没有选择,我们将根据上一小节得到的下降引理,选择最优的 $\lambda’_{t+1}$ 使得收敛最快。 在下面的证明中,我们分析会人为地将算法的运行过程分为多个epoch,其中每个epoch使得 $A_t$ 增长为2倍。我们分析每一个epoch应当有多长。我们记这样的epoch的开始时间为 $T_1$, 结束时间为 $T_2$, 那么 $T_2$ 也就是使得 $A_{t} \ge 2A_{T_1}$ 的最小时间戳 $t$。在每一个epoch内,我们会选择一个最优的,仅依赖于 $T_1$ 的参数 $\lambda’_{t+1}$.

在使用下降引理的时候,我们分别考虑 $\lambda_{t+1} \le \lambda’_{t+1}$ 以及 $\lambda_{t+1} > \lambda’_{t+1}$ 两种情况。它们分别对应着 $\gamma_{t+1} = 1$ 以及 $\gamma_{t+1}<1$ 的两种情况。我们将区间 $[T_1,T_2]$ 划分为这两种情况的不相交的并集,记作为 $S_{\rm down} \cup S_{\rm up}= [T_1,T_2]$.

在第一种情况下,我们有

\[\begin{align*} \sqrt{A_{t+1}} - \sqrt{A_t} = \frac{A_{t+1} - A_t}{\sqrt{A_{t+1}} + \sqrt{A_t}} = \frac{a_{t+1}}{\sqrt{A_{t+1}} + \sqrt{A_t}} = \frac{\sqrt{A_{t+1}/\lambda'_{t+1}}}{\sqrt{A_{t+1}} + \sqrt{A_t}} \ge \frac{1}{2 \sqrt{\lambda'_{t+1}}}. \end{align*}\]

因此,我们可以推断出

\[\begin{align*} \vert S_{\rm down} \vert \le 2 \left( \sqrt{2} -1\right) \sqrt{A_{T_1} \lambda'_{t+1}}. \end{align*}\]

在第二种情况下,根据关系式 $\lambda_{t+1} = 2 L \Vert z_{t+1} - y_t \Vert^{p-1} = 2L(2N_{t+1})^{(p-1)/2}$, 我们有

\[\begin{align*} D_0 \ge \frac{3}{4} \gamma_{t+1} A'_{t+1} \lambda_{t+1} N_{t+1} = \frac{3}{8} A'_{t+1} \lambda'_{t+1} \left( \frac{\lambda_{t+1}}{2L} \right)^{\frac{2}{p-1}} \ge \frac{3}{8} A'_{t+1} \lambda'_{t+1} \left( \frac{\lambda'_{t+1}}{2L} \right)^{\frac{2}{p-1}}. \end{align*}\]

因此,这种情况下,我们可以推断出,

\[\begin{align*} \vert S_{\rm up} \vert \le \frac{8 D_0 (2L)^{2/(p-1)} }{3 A_{T_1} (\lambda'_{t+1})^{(p+1)/(p-1)}}. \end{align*}\]

综合两种情况,我们在这个epoch内选择最优的 $\lambda’_{t+1}$ 之后,可以使得

\[\begin{align*} T_2 - T_1 = \vert S_{\rm down} \vert + \vert S_{\rm up} \vert = \mathcal{O} \left( \left( D_0^{\frac{p-1}{2}} L A_{T_1} \right)^{\frac{2}{3p+1}} \right). \end{align*}\]

对所有epoch求和后,可以得到

\[\begin{align*} T = \mathcal{O} \left( \left( D_0^{\frac{p-1}{2}} L A_{T} \right)^{\frac{2}{3p+1}} \right). \end{align*}\]

移项后就得到了

\[\begin{align*} A_T = \Omega \left( \frac{T^{(3p+1)/2}}{D_0^{(p-1)/2} L } \right ). \end{align*}\]

根据 $E_T \le D_0 / A_T$, 我们知道最终的收敛率满足

\[\begin{align*} E_T = \mathcal{O} \left( \frac{D_0^{(p+1)/2} L}{T^{(3p+1)/2}} \right). \end{align*}\]

换句话说,想要找到一个 $\epsilon$-解的复杂度为 $\mathcal{O}(\epsilon^{-2/(3p+1)})$.

Reference

[1] Carmon Y, Hausler D, Jambulapati A, Jin Y, Sidford A. Optimal and adaptive Monteiro-Svaiter acceleration. In NeurIPS, 2022.

[2] Kovalev D, Gasnikov A. The first optimal acceleration of high-order methods in smooth convex optimization. In NeurIPS, 2022.

[3] Adil D, Bullins B, Jambulapati A, Sidford A. Convex optimization with $p$-norm oracles. arXiv preprint arXiv:2410.24158. 2024.

[4] Nesterov Y, Polyak BT. Cubic regularization of Newton method and its global performance. Mathematical programming. 2006.

[5] Nesterov Y. Implementable tensor methods in unconstrained convex optimization. Mathematical Programming. 2021.

]]>
Lesi Chen (陈乐偲)[email protected]
外梯度法对于非凸优化的加速2025-12-17T00:00:00-06:002025-12-17T00:00:00-06:00https://truenobility303.github.io/ODOGPaper Reading: Improving Online-to-Nonconvex Conversion for Smooth Optimization via Double Optimism.

在近期的系列blog中,我们介绍了 外梯度法 作为求解general变分不等式的一个poweful的框架,以及该算法 在凸优化中的最优加速。 而本文将阅读一篇新的文章,给出关于非凸优化中的加速结果。

正式地,我们考虑如下问题:

\[\begin{align*} \min_{x \in \mathbb{R}^d} f(x). \end{align*}\]

我们假设函数具有Lipschitz连续的梯度和Hesisan,也即:

\[\begin{align*} \Vert \nabla f(x) - \nabla f(x') \Vert \le& L_1 \Vert x - x' \Vert, \quad x,x' \in \mathbb{R}^d.\\ \Vert \nabla^2 f(x) - \nabla^2 f(x') \Vert \le& L_2 \Vert x - x' \Vert, \quad x,x' \in \mathbb{R}^d. \end{align*}\]

但与上一篇blog所不同,我们并不假设函数的凸性。此时由于凸性的缺失,全局极小值将不能在多项式时间内找到。我们遵循前人的工作,退而求其次寻找一个 $\epsilon$-驻点,也即满足 $\Vert \nabla f(x) \Vert \le \epsilon$ 的点 $x$.

Online-to-Nonconvex Conversion (Smooth Setting)

我们曾经在介绍 非光滑非凸优化的最优随机算法 的时候,介绍过一个称为 Online-to-Nonconvex Conversion 的技术,这里我们使用一个类似的技术用于光滑优化,但是需要一些微小的改动。

在这个框架中,算法每次需要选则一个方向 $\Delta_n$, 然后环境会更新 $x_n = x_{n-1} + \Delta_n$ 并且计算 $w_n = \frac{1}{2} (x_n + x_{n-1})$, 然后返回损失 $\ell_n(\Delta_n) = \langle \nabla f(w_n) , \Delta_n\rangle$. 下面我们会证明,如果这个在线优化问题的遗憾界比较小,那么算法可以识别出一个驻点。

首先,使用代数基本定义以及Taylor展开,我们可以得到

\[\begin{align*} &f(x_n) - f(x_{n-1})\\ =& \left \langle \int_0^1 \nabla f(x_{n-1} + s \Delta_n) {\rm d} s, \Delta_n \right \rangle \\ =& \langle \nabla f(w_n), \Delta_n \rangle + \left \langle \int_0^1 \nabla f(x_{n-1} + s \Delta_n) {\rm d} s - \nabla f(w_n), \Delta_n \right \rangle \\ \le& \langle \nabla f(w_n), \Delta_n \rangle + \left \Vert \int_0^1 \nabla f(x_{n-1} + s \Delta_n) {\rm d} s - \nabla f(w_n) \right \Vert \Vert \Delta_n \Vert \\ =& \langle \nabla f(w_n), \Delta_n \rangle + \left \Vert \int_0^1 (\nabla f(x_{n-1} + s \Delta_n) {\rm d} s - \nabla f(w_n) - \nabla^2 f(w_n) (s -1/2) \Delta_n) {\rm d} s \right \Vert \Vert \Delta_n \Vert \\ \le& \langle \nabla f(w_n), \Delta_n \rangle + \int_0^1 \frac{L_2}{2} \Vert \Delta_n \Vert^3 (s-1/2)^2 {\rm d} s = \langle \nabla f(w_n), \Delta_n \rangle + \frac{L_2 D^3}{48}, \end{align*}\]

其中我们假设 $\Vert \Delta_n \Vert \le D$ 对任意的 $n$ 成立。这也将在算法中通过投影强制保证。

对于任意的向量 $u$, 我们使用上面的不等式,并且递推 $T$ 个迭代,可以得到

\[\begin{align*} f(x_T) - f(x_0) \le \sum_{n=1}^T \langle \nabla f(w_n), \Delta_n - u \rangle + \sum_{n=1}^T \langle \nabla f(w_n),u \rangle + \frac{L_2 T D^3}{48}. \end{align*}\]

那么,选取 $u = -D (\sum_{n=1}^T \nabla f(w_n)) / \Vert \sum_{n=1}^T \nabla f(w_n) \Vert$, 就可以进一步得到

\[\begin{align*} \left \Vert \frac{1}{T} \sum_{n=1}^T \nabla f(w_n) \right \Vert \le \frac{f(x_0) - f(x_T)}{DT} + \frac{1}{DT} \sum_{n=1}^T \langle g_n, \Delta_n - u \rangle + \frac{L_2 D^2}{48}. \end{align*}\]

这可以认为是一个二阶光滑下的梯度法的下降引理。值得注意的是,事实上左端项并不是可以一个点的梯度的形式,但是我们可以进一步证明,这与平均点的梯度相差很小。我们定义 $\bar w = \sum_{n=1}^T w_n / T$. 那么,可以证明

\[\begin{align*} & \left \Vert \frac{1}{T} \sum_{n=1}^T \nabla f(w_n) - \nabla f(\bar w) \right \Vert \\ =& \left \Vert \frac{1}{T} \sum_{n=1}^T (\nabla f(w_n) - \nabla f(\bar w) - \nabla^2 f(\bar w) (w_n - \bar w) ) \right \Vert \\ \le& \frac{L_2}{2T} \sum_{n=1}^T \Vert w_n - \bar w \Vert^2 \le \frac{L_2 T^2 D^2}{2}, \end{align*}\]

最后一步使用了 $\Vert w_n - \bar w \Vert \le TD$, 这可以通过 $w_n$ 定义以及每部的更新量小于等于 $D$ 得到。合起来,我们就得到了下面的不等式

\[\begin{align*} \Vert \nabla f(\bar w) \Vert \le \frac{f(x_0) - f(x_T)}{DT} + \frac{1}{DT} \sum_{n=1}^T \langle \nabla f(w_n), \Delta_n - u \rangle + \frac{L_2 D^2}{48} + \frac{L_2 T^2 D^2}{2}. \end{align*}\]

Hint Construction

上式中唯一还没有被很好的控制住的只有内积项,其正好也是一个遗憾界 ${\rm Reg}(u) := \langle \nabla f(w_n), \Delta_n - u \rangle$. 根据之前关于 外梯度法 的分析,为了得到一个对于外梯度法好的遗憾界,只需要选择合适的hint满足条件:

\[\begin{align*} \eta^2 \Vert \nabla f(w_n) - h_n \Vert^2 \le \frac{1}{2} \Vert \Delta_n - v_n \Vert^2 + \frac{1}{4} \Vert v_{n+1} - \Delta_n \Vert^2, \end{align*}\]

其中 $v_n$ 为外梯度法中引入的对偶变量。由此启发,我们设计如下的hint函数

\[\begin{align*} h_n = \nabla f(x_n + \Delta_{n-1}/2). \end{align*}\]

那么可以证明这个函数有如下的近似条件

\[\begin{align*} \Vert \nabla f(w_n) - h_n \Vert \le \frac{L_1}{2} \Vert \Delta_{n} - \Delta_{n-1} \Vert \le L_1 (\Vert \Delta_n - v_n \Vert + \Vert v_n - \Delta_{n-1} \Vert). \end{align*}\]

可以观察到,如果选择 $\eta = 1/(2\sqrt{2} L_1)$, 那么这已经非常接近于我们所需要的松弛条件,除了第二项的下标偏移了1. 但这并不会造成太大的影响,因为我们可以用类似裂项相消的方式处理,最终会得到遗憾界有如下保证:

\[\begin{align*} {\rm Reg}(u) = \mathcal{O}( L_1 D^2). \end{align*}\]

我们将这个遗憾界回代进入之前的不等式,就可以得到

\[\begin{align*} \Vert \nabla f(\bar w) \Vert \le \frac{f(x_0) - f(x_T)}{DT} + \mathcal{O}(L_1 D / T + L_2 T^2 D^2). \end{align*}\]

最后,我们使用相同的流程进行 $K$ 个epoch,然后求和起来,并且定义 $N =KT$,就可以得到

\[\begin{align*} \frac{1}{K}\Vert \nabla f(\bar w^k) \Vert \le \frac{f(x_0) - f(x_N)}{DN} + \mathcal{O}(L_1 D / T + L_2 T^2 D^2). \end{align*}\]

选择最优的 $T$, 可以得到

\[\begin{align*} \frac{1}{K}\Vert \nabla f(\bar w^k) \Vert \le \frac{f(x_0) - f(x_N)}{DN} + \mathcal{O}(L_1^{2/3} L_2^{1/3} D^{4/3}). \end{align*}\]

接着选择最优的 $D$, 可以得到

\[\begin{align*} \frac{1}{K}\Vert \nabla f(\bar w^k) \Vert= \mathcal{O}\left( \left( \frac{f(x_0) - f(x_N)}{N} \right)^{4/7} L_1^{2/7} L_2^{1/7} \right). \end{align*}\]

换句话说,想要找到一个 $\epsilon$-驻点,算法需要的复杂度为 $N = \mathcal{O}(L_1^{1/2} L_2^{1/4} \epsilon^{-7/4})$. 相较于朴素的梯度下降的 $\mathcal{O}(L_1 \epsilon^{-2})$, 我们在本文所推出的加速外梯度法具有更快的收敛率。

最后,注意到原文并没有采用外梯度法,而是采用了其一个被称为乐观梯度法的变种,但最后的收敛率是一样的。

]]>
Lesi Chen (陈乐偲)[email protected]
外梯度法对于凸优化的最优加速2025-10-26T00:00:00-05:002025-10-26T00:00:00-05:00https://truenobility303.github.io/UniXGradPaper Reading: UniXGrad: A Universal, Adaptive Algorithm with Optimal Guarantees for Constrained Optimization

我们在上一篇文章中介绍了用于变分不等式的外梯度算法,可以在 $O(\epsilon^{-1})$ 的复杂度内寻找到一个 $\epsilon$-近似解。本文介绍在凸优化中,可以进一步加速得到 $O(\epsilon^{-1/2})$ 的复杂度。

我们考虑如下经典的凸优化问题:

\[\begin{align*} \min_{x \in X} f(x). \end{align*}\]

外梯度法可以最小化遗憾上界,但我们需要一个conversion,将遗憾上界以及函数值的下降联系起来。给定算法访问的点 $w_1,\cdots, w_t$, 我们会定义一个加权平均 $x_t = \sum_{i=0}^{t} a_i w_i / A_t$, 其中 $A_t = \sum_{i=0}^{t} a_t$. 下面我们给出这个加权后的序列 $x_t,\dots,x_T$ 的收敛与加权后的Regret具有如下的关系:

\[\begin{align*} f(x_T) - f(x^\ast) \le \frac{\langle a_t \nabla f(x_t), w_t - x^\ast \rangle}{A_T} := \frac{R_T(x^\ast) }{A_T}. \end{align*}\]

这被称为anytime online-to-batch conversion。有了这个关系,我们的问题就转化使得加权后的遗憾值有界的前提下,序列 $a_0,\cdots,a_t$ 增长最快是多少,而这个增长速率就决定了算法的收敛率。下面我们首先证明上面这个关系式:我们从函数的凸性开始出发:

\[\begin{align*} &\sum_{t=0}^{T-1} a_t (f(x_t) - f(x^\ast)) \\ \le& \sum_{t=0}^{T-1} a_t \langle \nabla f(x_t), x_t - x^\ast \rangle \\ =& \sum_{t=0}^{T-1} a_t \langle \nabla f(x_t), x_t - w_t \rangle + \sum_{t=0}^{T-1} a_t \langle \nabla f(x_t), w_t - x^\ast \rangle \\ =& \sum_{t=0}^{T-1} A_{t-1} \langle \nabla f(x_t), x_{t-1} -x_t \rangle + R_T(x^\ast), \end{align*}\]

其中最后一步使用了恒等式 $a_t (x_t- w_t)=A_{t-1}(x_{t-1} -x_t)$, 这是由于 $A_t x_t= A_{t-1} x_{t-1} + a_t w_t$. 下面我们再次利用函数的凸性,进一步得到

\[\begin{align*} \sum_{t=0}^{T-1} a_t (f(x_t) - f(x^\ast)) \le \sum_{t=0}^{T-1} A_{t-1} ( f(x_{t-1}) - f(x_t)) + R_T(x^\ast), \end{align*}\]

重新排列,我们发现

\[\begin{align*} \sum_{t=0}^{T-1} A_t (f(x_t) - f(x^\ast)) \le \sum_{t=0}^{T-1} A_{t-1} (f(x_{t-1}) - f(x^\ast)) + R_T(x^\ast). \end{align*}\]

出现一个裂项相消数列的形式,我们使得 $A_0 = a_t = 0$, 就可以得到想要证明的式子

\[\begin{align*} f(x_T) - f(x^\ast) \le \frac{R_T(x^\ast) }{A_T}. \end{align*}\]

下面我们考虑如何设计算法最小化遗憾界。这可以看作一个在线学习问题,算法每次访问一个点 $w_t$, 然后环境计算出加权平均点 $x_t = \sum_{i=0}^{t} a_i w_i / A_t$, 据此计算得到 $w_t$的损失 $\langle a_t \nabla f(x_t), w_t \rangle$. 回顾上一篇文章中正好介绍的外梯度算法,只要构造出一个hint满足条件

\[\begin{align*} a_t \eta \Vert h_t - g_t \Vert \le \Vert w_t - v_t \Vert /2, \quad {\rm where} \quad g_t = \nabla f(x_t) \end{align*}\]

那么迭代

\[\begin{align*} w_{t} &= \Pi_Z (v_t - \eta a_t h_t) \\ v_{t+1} &= \Pi_Z (v_t - \eta a_t g_t), \end{align*}\]

就可以给出一个 $O(1)$ 的遗憾界,其中 $v_t$ 可以看作是 $w_t$的一个逼近序列。 Hint的目标是最好地预测未来的梯度值 $\nabla f(x_t)$, 注意到 $x_t = \sum_{i=0}^{t} a_i w_i / A_t$ 依赖于还没有访问的 $w_t$,我们考虑将其用 $v_t$ 来代替,得到如下的hint设计:

\[\begin{align*} z_t = \frac{\sum_{i=0}^{t-1} a_i w_i + a_t v_t}{A_t}, \quad h_t = \nabla f(z_t). \end{align*}\]

那么我们知道

\[\begin{align*} a_t \eta \Vert h_t -g_t \Vert \le a_t^2 L \eta \Vert w_t - v_t \Vert / A_t. \end{align*}\]

我们选取数列 $a_t = t$, 那么只需要选择 $\eta \le 1/(2L)$ 就可以满足条件。最后我们知道 $A_t = \Omega(t^2)$, 这意味着最后的收敛率为

\[\begin{align*} f(x_T) - f(x^\ast) \le \frac{R_T(x^\ast) }{A_T} = O(1/T^2). \end{align*}\]

换句话说,找到一个 $\epsilon$-近似解的复杂度为 $O(\epsilon^{-1/2})$, 这与 加速梯度法 的结果相匹配,达到最优。

]]>
Lesi Chen (陈乐偲)[email protected]
外梯度法求解变分不等式简证2025-10-25T00:00:00-05:002025-10-25T00:00:00-05:00https://truenobility303.github.io/EG本文给出对于外梯度法求解变分不等式问题的简要证明。

Problem Setup

给定一个算子 $F$, 文章关注于求解如下的变分不等式问题, 关注于寻找解 $z^\ast$ 满足

\[\begin{align*} \langle F(z), z^\ast - z \rangle \le 0, \quad, \forall z \in Z. \end{align*}\]

我们假设算子是单调的,也即满足

\[\begin{align*} \langle F(z) - F(z'), z-z' \rangle \ge 0, \quad \forall z, z' \in Z. \end{align*}\]

变分不等式推广了优化问题地最优一阶条件(取算子为梯度算子),而算子的单调性则推广了函数的凸性。

Algorithm

考虑如下的外梯度法,

\[\begin{align*} z_{t} &= \Pi_Z (v_t - \eta h_t) \\ v_{t+1} &= \Pi_Z (v_t - \eta g_t), \end{align*}\]

我们会选取 $h_t =F(v_t)$ 以及 $g_t = F(z_t)$.

我们假设 $F$ 为 $L$-Lipschitz 算子,也即

\[\begin{align*} \Vert F(z) - F(z') \Vert \le L \Vert z - z' \Vert, \quad z,z' \in Z. \end{align*}\]

上面的条件意味着 $\Vert h_t -g_t \Vert \le L \Vert z_t - v_t \Vert$. 在很多文献中,也会将 $h_t$ 称为一个hint,我们会证明只要 $h_t$ 以及 $g_t = F(z_t)$ 满足上式, 也即hint和真实梯度比较接近,算法可以在 $\mathcal{O}(\epsilon^{-1})$ 次迭代内寻找到一个 $\epsilon$-近似解。注意到虽然这里我们简单地选取 $h_t =F(v_t)$, 在很多其他的应用中,我们也会精心地设计hint,达到好的收敛。

我们算法的目标是最小化下面的Regret:

\[\begin{align*} {\rm Reg} (u):= \sum_{t=0}^{T-1} \langle g_t, z_t - u \rangle \end{align*}\]

如果对于任意的 $u \in Z$, 我们可以给出这个遗憾界的上界,那么这意味着我们只要输出平均点 $\bar z_T = \sum_{t=0}^{T-1} z_t / T$, 就是一个近似最优解,这是因为

\[\begin{align*} \langle F(u), \bar z_t - u \rangle = \frac{\sum_{t=0}^{T-1} \langle F(u), z_t - u \rangle}{T} \le \frac{ {\rm Reg}(u) }{T} \end{align*}\]

下面我们分析算法所产生的遗憾界。

Analysis

首先根据迭代中第二步的最优条件,有

\[\begin{align*} 0 \le& \langle \eta g_t +v_{t+1}- v_t, u - v_{t+1} \rangle, \quad \forall u \in Z \end{align*}\]

同样地,根据迭代中第一步的最优条件,有

\[\begin{align*} 0 \le& \langle \eta h_t + z_{t}- v_t, u' - z_t \rangle, \quad \forall u' \in Z. \end{align*}\]

因此,对于任意的 $u \in Z$, 有

\[\begin{align*} & \eta \langle g_t, z_{t} - u \rangle \\ = & \eta \langle g_t, v_{t+1} - u \rangle + \eta \langle g_t, z_{t} - v_{t+1} \rangle \\ =& \eta \langle g_t, v_{t+1} - u \rangle + \eta \langle h_t, z_{t} - v_{t+1} \rangle + \eta \langle g_t - h_t, z_{t} - v_{t+1} \rangle \\ \le & \langle v_{t+1} - v_t , u - v_{t+1} \rangle + \langle z_{t} - v_t , v_{t+1} - z_{t} \rangle + \eta \langle g_t - h_t, z_{t} - v_{t+1} \rangle \end{align*}\]

下面,利用恒等式 $\langle a, b \rangle = \frac{1}{2} \Vert a+b \Vert^2- \frac{1}{2} \Vert a \Vert^2 - \frac{1}{2} \Vert b \Vert^2$ 以及Young不等式 $\eta \langle a, b\rangle \le\frac{\eta^2}{2} \Vert a\Vert^2 + \frac{1}{2} \Vert b \Vert^2$, 我们可以进一步得到

\[\begin{align*} &\eta \langle g_t, z_{t} - u \rangle \\ \le & \frac{1}{2} \Vert u-v_t \Vert^2 - \frac{1}{2} \Vert v_{t+1} - v_t \Vert^2 - \frac{1}{2} \Vert u-v_{t+1} \Vert^2 \\ &+ \frac{1}{2} \Vert v_{t+1}-v_t \Vert^2 - \frac{1}{2} \Vert z_t - v_t \Vert^2 - \frac{1}{2} \Vert v_{t+1} - z_t \Vert^2 \\ &+ \eta^2 \Vert g_t - h_t \Vert^2 + \frac{1}{2} \Vert v_{t+1} - z_t \Vert^2. \end{align*}\]

事实上可以发现很多项都会正好被抵消掉,然后再利用光滑性条件 $\Vert h_t -g_t \Vert \le L \Vert z_t - v_t \Vert$ 并且选择步长 $\eta \le 1/ (\sqrt{2}L)$, 整理后可以得到

\[\begin{align*} \eta \langle g_t, z_{t} - u \rangle \le \frac{1}{2} \Vert u-v_t \Vert^2 - \frac{1}{2} \Vert u-v_{t+1} \Vert^2 \end{align*}\]

求和后就说明了遗憾界是 $O(1)$, 那么根据之前的分析,取平均点后收敛率就是 $O(1/T)$。 换句话说,找到一个 $\epsilon$-近似解的复杂度为 $O(\epsilon^{-1})$.

之前也写过关于外梯度法的一些推广结果,例如 方差缩减变种 以及 自适应变种,作为本文推导的一个进阶。

最后,我们给一个remark。上面的证明中其实还有一些负项被直接丢弃掉了,容易看出hint的近似性放松为如下条件时相同的结果仍然成立

\[\begin{align*} \eta^2 \Vert g_t - h_t \Vert^2 \le \frac{1}{2} \Vert z_t - v_t \Vert^2 + \frac{1}{4} \Vert v_{t+1} - z_t \Vert^2. \end{align*}\]

这个放松的条件在很多时候最近的工作里面也经常派上用场。

]]>
Lesi Chen (陈乐偲)[email protected]
Momentum-Based Variance Reduction in Non-Convex SGD2025-10-24T00:00:00-05:002025-10-24T00:00:00-05:00https://truenobility303.github.io/STORMPaper Reading: Momentum-Based Variance Reduction in Non-Convex SGD.

考虑如下的经典的随机优化问题

\[\begin{align*} \min_x \left\{f(x) \triangleq F(x;\xi) \right\}. \end{align*}\]

假设成立如下的平均光滑假设:

\[\begin{align*} E_\xi \Vert \nabla F(x;\xi) - \nabla F(y; \xi) \Vert^2 \le L \Vert x - y \Vert^2, \quad \forall x,y. \end{align*}\]

文章提出了一个简单的基于动量的方差缩减的方法,可以达到最优的 $\mathcal{O}(\epsilon^{-3})$ 的收敛率。

Algorithm and Analysis

算法对标准的带动量的SGD的动量项进行一个修正,迭代格式为:

\[\begin{align*} v_t =& (1-\alpha) v_{t-1} + \alpha \nabla f(x_t;\xi_t) + (1-\alpha) ( \nabla f(x_t; \xi_t) - \nabla f(x_{t-1}; \xi_t) ) \\ x_{t+1} = & x_t - \eta v_t. \end{align*}\]

首先是经典的光滑性假设下的下降引理, 若步长满足 $\eta \le 1/(2L)$, 则有

\[\begin{align*} f(x_{t+1}) \le & f(x_t) - \eta v_t^\top \nabla f(x_t) + \frac{\eta^2 L}{2} \Vert v_t \Vert^2 \\ =& f(x_t) - \frac{\eta(1- \eta L)}{2} \Vert v_t \Vert^2 - \frac{\eta}{2} \Vert \nabla f(x_t) \Vert^2 + \frac{\eta}{2} \Vert v_t - \nabla f(x) \Vert^2 \\ \le& f(x_t) - \frac{\eta}{2} \Vert \nabla f(x_t) \Vert^2 - \frac{\eta}{4} \Vert v_t \Vert^2 + \frac{\eta}{2} \Vert v_t - \nabla f(x) \Vert^2 \end{align*}\]

我们进一步控制最后一项的期望,根据等式

\[\begin{align*} v_t - \nabla f(x_t) =& (1-\alpha) v_{t-1} + \alpha \nabla f(x_t;\xi_t) - \nabla f(x_t) \\ &+ (1-\alpha) ( \nabla f(x_t; \xi_t) - \nabla f(x_{t-1}; \xi_t) ) \\ =& (1-\alpha) (v_{t-1} - \nabla f(x_{t-1})) - \alpha (\nabla f(x_t) - \nabla f(x_t;\xi_t)) \\ & +(1-\alpha ) (\nabla f(x_{t-1}) - \nabla f(x_t) + \nabla f(x_t; \xi_t) - \nabla f(x_{t-1}; \xi_t) ) \end{align*}\]

取期望,并且利用梯度的无偏性 $E[\nabla f(x_t; \xi_t)]= \nabla f(x_t)$,可以得到

\[\begin{align*} E \Vert v_t - \nabla f(x_t) \Vert^2 =& (1-\alpha)^2 E \Vert v_{t-1} - \nabla f(x_{t-1}) \Vert^2 + \alpha^2 E \Vert \nabla f(x_t)- \nabla f(x_t;\xi_t) \Vert^2 \\ &+ (1-\alpha)^2 E \Vert \nabla f(x_{t-1}) - \nabla f(x_t) + \nabla f(x_t; \xi_t) - \nabla f(x_{t-1}; \xi_t) \Vert^2. \end{align*}\]

进一步利用梯度的方差小于等于 $\sigma^2$, 以及光滑性假设,可以得到

\[\begin{align*} E \Vert v_t - \nabla f(x_t) \Vert^2 \le& (1-\alpha)^2 E \Vert v_{t-1} - \nabla f(x_{t-1}) \Vert^2 + \alpha^2 \sigma^2 + 2(1-\alpha)^2 L^2 \Vert x_t - x_{t-1} \Vert^2. \end{align*}\]

展开递推式,得到

\[\begin{align*} E \Vert v_t - \nabla f(x_t) \Vert^2 \le \frac{(1-\alpha)^{2t} \sigma^2}{b_0} + \frac{\alpha \sigma^2}{2-\alpha} + 2 (1-\alpha)^2 L^2 \eta^2 \sum_{k=0}^{t-1} (1-\alpha)^{2(t-1-k)} \Vert v_k \Vert^2. \end{align*}\]

求和

\[\begin{align*} \sum_{t=0}^{T-1} E \Vert v_t - \nabla f(x_t) \Vert^2 \le \frac{\sigma^2}{b_0\alpha(2-\alpha)} + \frac{\alpha \sigma^2 T}{2-\alpha}+ \frac{2 (1-\alpha)^2 L^2 \eta^2}{2 \alpha - \alpha^2} \sum_{t=0}^{T-1} \Vert v_t \Vert^2, \end{align*}\]

其中 $b_0$为初始的batch size.

结合方差的界以及下降引理,我们指导选择 $\eta \le \sqrt{\alpha}/ (4 L)$ 以及 $\alpha \le 1/2$, 就可以使用下降引理中的 $\Vert v_t \Vert^2$ 项抵消掉方差中对应项的上升,得到

\[\begin{align*} \frac{1}{T} \Vert \nabla f(x_t) \Vert^2 \le \frac{2\Delta}{\eta T} + \frac{2\sigma^2}{\alpha b_0 T } +2 \alpha \sigma^2 = \mathcal{O}(T^{-2/3}), \end{align*}\]

其中 $\Delta = f(x_0) - \inf_x f(x)$, 并且选择 $\alpha = 1/T^{2/3}$, $b_0 = T^{1/3}$.

换句话说,找到一个 $\epsilon$-稳定点的复杂度为 $\mathcal{O}(\epsilon^{-3})$.

]]>
Lesi Chen (陈乐偲)[email protected]
Momentum Improves Normalized SGD2025-10-23T00:00:00-05:002025-10-23T00:00:00-05:00https://truenobility303.github.io/NSGDPaper Reading: Momentum Improves Normalized SGD

考虑如下的经典的随机优化问题

\[\begin{align*} \min_x \left\{f(x) \triangleq F(x;\xi) \right\}. \end{align*}\]

并且采用如下基于动量与归一化相结合的SGD更新进行优化

\[\begin{align*} g_t &= (1-\alpha) g_{t-1} + \alpha \nabla F(x_t;\xi_t) \\ x_{t+1} &= x_t - \eta \frac{g_t}{\Vert g_t \Vert}. \end{align*}\]

文章使用非常简洁的方式从理论上证明了Normalized SGD加上动量可以达到更快的收敛

Normalized SGD

首先分析只有 $L$-smooth 下面的时候,也即满足假设

\[\begin{align*} \Vert \nabla f(x) - \nabla f(y) \Vert \le L \Vert x - y \Vert, \quad \forall x,y. \end{align*}\]

此时成立

\[\begin{align*} f(x_{t+1}) &\le f(x_t) + \nabla f(x_t)^\top (x_{t+1} - x_t) + \frac{L}{2} \Vert x_{t+1} - x_t \Vert^2 \\ &= f(x_t)- \frac{\eta \nabla f(x_t)^\top g_t}{\Vert g_t \Vert} + \frac{\eta^2 L}{2} \\ &\le f(x_t) - \frac{\eta}{3} \Vert \nabla f(x_t) \Vert + \frac{8\eta}{3} \Vert g_t - \nabla f(x_t) \Vert + \frac{\eta^2 L}{2}, \end{align*}\]

其中最后一步使用了一个稍微技巧性的不等式 $- a^\top b/ \Vert b \Vert \le - \Vert a \Vert / 3 + 8 \Vert a - b \Vert/3 $.

根据动量更新公式,

\[\begin{align*} &\quad g_{t+1} - \nabla f(x_{t+1}) \\ &= (1-\alpha) g_t + \alpha \nabla F(x_{t+1};\xi_t) - \nabla f(x_{t+1}) \\ &= (1-\alpha) g_t - (1-\alpha) \nabla f(x_{t+1}) + \alpha \epsilon_{t+1} \\ &= (1-\alpha) (g_t - \nabla f(x_t)) + (1-\alpha ) (\nabla f(x_t) - \nabla f(x_{t+1})) + \alpha \epsilon_{t+1}. \end{align*}\]

展开递推式得到

\[\begin{align*} g_{t} - \nabla f(x_{t}) &= (1-\alpha)^t (g_ 0- \nabla f(x_0)) + \sum_{k=0}^{t-1}(1-\alpha)^{t-k} ( \nabla f(x_k) - \nabla f(x_{k+1})) + \alpha \sum_{k=0}^{t-1} (1-\alpha)^{t-k-1} \epsilon_{k+1}. \end{align*}\]

取期望后得到

\[\begin{align*} \mathbb{E} \Vert g_t - \nabla f(x_t) \Vert &\le (1-\alpha)^t \sqrt{\mathbb{E} \Vert \epsilon_0 \Vert^2} + \sum_{k=0}^{t-1} (1-\alpha)^{t-k} \mathbb{E}\Vert \nabla f(x_k) - \nabla f(x_{k+1}) \Vert + \alpha \sqrt{ \mathbb{E} \left \Vert \sum_{k=0}^{t-1}(1-\alpha)^{t-k-1} \epsilon_{k+1} \right \Vert^2 } \\ &=(1-\alpha)^t \sqrt{\mathbb{E} \Vert \epsilon_0 \Vert^2} + \sum_{k=0}^{t-1} (1-\alpha)^{t-k} \mathbb{E}\Vert \nabla f(x_k) - \nabla f(x_{k+1}) \Vert +\alpha \sqrt{ \sum_{k=0}^{t-1}(1-\alpha)^{2(t-k-1)} \left \Vert \epsilon_{k+1} \right \Vert^2 } \\ &\le (1-\alpha)^t \sigma + \sum_{k=0}^{t-1} (1-\alpha)^{t-k} \eta L + \alpha \sigma \sqrt{ \sum_{k=0}^{t-1} (1-\alpha)^{2(t-k-1)}} \\ &\le (1-\alpha)^{t} \sigma + \frac{\eta L}{\alpha} + \sqrt{\alpha} \sigma. \end{align*}\]

代入并且递推后得到

\[\begin{align*} \frac{1}{T} \sum_{t=0}^{T-1} \mathbb{E} \Vert \nabla f(x_t) \Vert \le \mathcal{O} \left( \frac{\Delta}{\eta T} + \eta L + \frac{\sigma}{\alpha T} +\frac{\eta L}{\alpha} + \sqrt{\alpha} \sigma \right) = \mathcal{O} \left( T^{-1/4}\right) \end{align*}\]

换句话说,找到一个 $\epsilon$-稳定点的复杂度是 $\mathcal{O}(\epsilon^{-4})$.

Second Order Smoothness

该文章有意思的结论是,当函数进一步满足Hessian Lipschitz连续的时候,可以得到比SGD更快的收敛率,记Hessian的连续性系数为 $\rho$, 该假设下有

\[\begin{align*} \Vert \nabla f(x) - \nabla f(y) - \nabla^2 f(y) (x-y) \Vert \le \frac{\rho}{2} \Vert x- y \Vert^2, \quad \forall x,y. \end{align*}\]

考虑如下的更新方式,

\[\begin{align*} y_t &= \frac{1}{\alpha} x_t - \frac{1-\alpha}{\alpha} x_{t-1} \\ g_t &= (1-\alpha) g_{t-1} + \alpha \nabla f(y_t;\xi_t) \\ x_{t-1} &= x_t - \eta \frac{g_t}{ \Vert g_t \Vert } \end{align*}\]

该更新方式的核心在于利用更高阶的连续性,

\[\begin{align*} &\quad g_{t+1} - \nabla f(x_{t+1}) \\ &= (1-\alpha) g_t + \alpha \nabla F(y_{t+1};\xi_t) - \nabla f(x_{t+1}) \\ &= (1-\alpha) (g_t - \nabla f(x_t)) + (1-\alpha) (\nabla f(x_t) - \nabla f(x_{t+1})) +\alpha (\nabla f(y_{t+1}) - \nabla f(x_{t+1})) + \alpha \epsilon_{t+1} \\ &= (1-\alpha) (g_t - \nabla f(x_t)) + (1-\alpha) (\nabla f(x_t) - \nabla f(x_{t+1}) - \nabla^2 f(x_{t+1}) (x_t - x_{t+1})) \\ &\quad +\alpha (\nabla f(y_{t+1}) - \nabla f(x_{t+1}) - \nabla^2 f(x_{t+1})(y_{t+1} - x_{t+1}) ) + \alpha \epsilon_{t+1}. \end{align*}\]

展开递推式并取期望后得到

\[\begin{align*} &\quad \mathbb{E} \Vert g_t - \nabla f(x_t) \Vert \\ &\le(1-\alpha)^t \sqrt{\mathbb{E} \Vert \epsilon_0 \Vert^2} + \sum_{k=0}^{t-1} (1-\alpha)^{t-k} \mathbb{E}\Vert \nabla f(x_k) - \nabla f(x_{k+1}) - \nabla^2 f(x_{k+1}) (x_k - x_{k+1}) \Vert \\ &\quad + \alpha\sum_{k=0}^{t-1} (1-\alpha)^{t-k-1} \mathbb{E}\Vert \nabla f(y_{k+1}) - \nabla f(x_{k+1}) - \nabla^2 f(x_{k+1}) (y_{k+1} - x_{k+1}) \Vert +\alpha \sqrt{ \sum_{k=0}^{t-1}(1-\alpha)^{2(t-k-1)} \left \Vert \epsilon_{k+1} \right \Vert^2 } \\ &\le (1-\alpha)^t \sigma + 2\sum_{k=0}^{t-1} (1-\alpha)^{t-k} \eta^2 \rho + \alpha \sigma \sqrt{ \sum_{k=0}^{t-1} (1-\alpha)^{2(t-k-1)}} \\ &\le (1-\alpha)^{t} \sigma + \frac{\eta^2 \rho}{\alpha^2} + \sqrt{\alpha} \sigma. \end{align*}\]

代入并且递推后得到

\[\begin{align*} \frac{1}{T} \sum_{t=0}^{T-1} \mathbb{E} \Vert \nabla f(x_t) \Vert \le \mathcal{O}\left(\frac{\Delta}{\eta T} + \eta L + \frac{\sigma}{\alpha T} +\frac{\eta^2 \rho}{\alpha^2} + \sqrt{\alpha} \sigma \right) = \mathcal{O} \left( T^{-2/7}\right) \end{align*}\]

当取 $\alpha = \mathcal{O} \left( T^{-4/7} \right)$ 以及 $\eta = \mathcal{O} \left( T^{-5/7} \right)$ 的时候取到等号。

换句话说,找到一个 $\epsilon$-稳定点的复杂度是 $\mathcal{O}(\epsilon^{-3.5})$.

]]>
Lesi Chen (陈乐偲)[email protected]
RSI下的非凸随机优化复杂度下界2025-09-08T00:00:00-05:002025-09-08T00:00:00-05:00https://truenobility303.github.io/LB-RSIPaper Reading: New Lower Bounds for Stochastic Non-Convex Optimization through Divergence Decomposition [COLT’25].

考虑经典的优化问题:

\[\begin{align*} \min_{x \in R^d} f(x). \end{align*}\]

假设算法每次只能通过随机映射 $\phi$ 得到一个方差为 $\sigma^2$ 的随机梯度,满足

\[\begin{align*} \mathbb{E}[\phi(x)] = \nabla f(x) \quad {\rm and} \quad \mathbb{E} \Vert \phi(x) - \nabla f(x) \Vert^2 \le \sigma^2. \end{align*}\]

我们希望知道算法需要多少次随机梯度访问才能找到问题的一个 $\epsilon$-近似解 $\hat x$ 满足 $f(\hat x) - f^\ast \le \epsilon$, 其中 $f^\ast = \min_{x \in R^d} f(x)$. 标准的课本假设考虑 $L$-光滑,$\mu$-强凸函数,定义为满足如下两个不等式:第一,光滑性:

\[\begin{align*} \Vert \nabla f(x) - \nabla f(y) \Vert \le L \Vert x -y \Vert, \quad \forall x,y \in R^d. \end{align*}\]

第二,强凸性:

\[\begin{align*} \langle \nabla f(x) - \nabla f(y), x - y \rangle \ge \mu \Vert x - y \Vert^2, \quad \forall x,y \in R^d. \end{align*}\]

当 $\mu=0$ 时候为凸函数。对于上述函数类,可以证明经典的随机梯度下降 SGD 算法的复杂度分别为 $\mathcal{O}(L \epsilon^{-1} + \sigma^2 \epsilon^{-2})$ 以及 $\mathcal{O}(L/\mu + \sigma^2 / (\mu \epsilon))$. 上述结果也可以被证明是最优的,其对应下界的证明我们在 随机一阶优化的复杂度下界 中已经介绍,对应的下界构造取 $d=1$ 都已经是紧的。

本篇论文考虑满足更放松的条件下的复杂度。具体来说,考虑满足如下的 Restricted-Secant-Inequaility(RSI) 条件的非凸函数:

\[\begin{align*} \langle \nabla f(x), x- x_p \rangle \ge \mu \Vert x - x_p \Vert^2, \quad \forall x \in R^d, \end{align*}\]

其中 $x_p$ 表示点 $x$ 到最优点的集合 $\arg \min_{x \in R^d} f(x)$ 的投影。可以注意到RSI不等式严格推广了强凸函数,是一个更广的函数类。首先第一个问题是,SGD在该类函数上的收敛率是怎样的。经过简单的推导可以发现,此时SGD的复杂度为 $O(\kappa \sigma^2 / (\mu \epsilon))$, 其中 $\kappa = L/ \mu$. 这说明了在没有强凸性的前提下,RSI条件下的非凸优化会有更慢的收敛率。

本篇论文最主要的贡献在于给出了与上述结果完全匹配的下界。当然原论文考虑了多种相关的结构性非凸条件,包括 Quasar-Convexity (QC), Quadratic Growth (QG), Error Bound (EB) 等多种条件。但这里为了方便我只选讲了 RSI 条件下的证明。而其他条件下的结果都可以在完全相同的证明框架下取得。

对于一个 $d$ 维优化问题,我们的下界总是考虑一个 $d_0 \le d$ 的函数列 ${f_1,\cdots,f_m }$,其中的每个函数由 $z_1,\cdots,z_m \in B_{d_0}(0, 5 \Delta)$ 决定。我们根据球体的packing数选择最大可能的 $m = \lceil (5/4)^{d_0} /2 \rceil$ 使得

\[\begin{align*} B(z_i, 2\Delta) \cap B(z_i, 2 \Delta) = \emptyset, \quad \forall i \ne j. \end{align*}\]

选择一个参数 $a \in (0,1)$, 我们定义

\[\begin{align*} f_i(x)= \begin{cases} \frac{L}{2} \Vert x - z_i \Vert^2, \quad & \Vert x - z_i \Vert \le \Delta, \\ - \frac{L}{2} \Vert x - z_i \Vert^2 + 2L \Delta \Vert x - z_i \Vert - L \Delta^2, & \Delta \le \Vert x - z_i \Vert \le (1+a)\Delta,\\ L \Delta^2 \frac{1+2a -a^2}{2} + \frac{\mu}{2}( \Vert x - z_i \Vert^2 -(1+a^2) \Delta^2), & \Vert x - z_i \Vert \ge (1+a) \Delta. \end{cases} \end{align*}\]

选择 $\Delta \in (0,1)$ 可以发现函数梯度满足 $L$-光滑假设,下面我们验证RSI条件。我们计算

\[\begin{align*} & \langle \nabla f_i(x), x-z_i \rangle - \mu \Vert x - z_i \Vert^2 \\ =& \begin{cases} (L-\mu) \Vert x - z_i \Vert^2, & \Vert x - z_i \Vert \le \Delta, \\ - (L+\mu) \Vert x - z_i \Vert^2 + 2 L \Delta \Vert x - z_i \Vert, & \Delta \le \Vert x - z_i \Vert \le (1+a)\Delta, \\ 0, & \Vert x - z_i \Vert \ge (1+a) \Delta. \end{cases} \end{align*}\]

通过计算可以发现右端项总是大于等于0.

下面的证明非常有意思,本质上可以在看作模仿 多臂老虎机的遗憾下界 的证明。我们定义如下这个无信息的函数 $g$, 其满足

\[\begin{align*} \nabla g(x) = \begin{cases} 0, &\Vert x \Vert \le 2 \Delta, \\ \mu x, & \Vert x \Vert \ge 2 \Delta. \end{cases} \end{align*}\]

容易验证成立着如下的关系式

\[\begin{align*} \Vert \nabla f_i(x) - \nabla g(x) \Vert \le \begin{cases} L \Delta, & x \in B(z_i, 2 \Delta), \\ 5 \mu \Delta, & x \notin B(z_i,2 \Delta). \end{cases} \end{align*}\]

我们定义 $P_i$ 和 $Q$ 为所有 $T$ 次随机oracle的概率分布,$N_i$ 为算法访问 $x \in B(z_i, 2\Delta)$ 中的点的次数, $\mathbb{E}_i[\cdot]$ 以及 $\mathbb{E}[\cdot]$ 分别为关于分布 $P_i$ 以及 $Q$ 的期望。

利用KL散度的链式法则、算法与oracle交互过程中的Markov性质、以及正态分布的KL散度的公式,我们可以得到

\[\begin{align*} D(Q \Vert P_i) \le& \frac{d_0}{2\sigma^2} \mathbb{E}[N_i] \sup_{x \in B(z_i, 2\Delta)} \Vert \nabla g(x) - \nabla f_i(x) \Vert^2 \\& \quad + \frac{d_0}{2 \sigma^2} \mathbb{E}[T-N_i] \sup_{x \notin B(z_i, 2\Delta)} \Vert \nabla g(x) - \nabla f_i(x) \Vert^2 \\ \le & \frac{d_0 L^2 \Delta^2}{2 \sigma^2} \mathbb{E}[N_i] + \frac{25 d_0 \mu^2 \Delta^2}{2 \sigma^2} T. \end{align*}\]

对所有的 $i=1,\cdots,m$ 求和可以得到

\[\begin{align*} \frac{1}{m} \sum_{i=1}^m D(Q \Vert P_i) \le \frac{d_0^2 \mu^2 \Delta^2}{2 \sigma^2} \left( \frac{\kappa^2}{m} + 25 \right) T. \end{align*}\]

下面我们说明若上述KL散度总是很小的话,那么算法将不可能很快的找到一个近似最优解. 为了叙述方便面,我们定义 $\Xi_i$ 为算法输出 $\hat x \in B(z_i, 2\Delta)$ 发生的事件,此时算法输出了一个最优点附近的解。我们下面说,KL散度很小的时候,算法将有很大的概率对于均匀选择的 $i$ 不能正确触发事件 $\Xi_i$.

\[\begin{align*} \mathbb{E}_i [f_i(\hat x)] \ge & \mathbb{P}_i(\Xi_i) \inf_{x \in B(z_i, 2 \Delta)} f_i(x) + (1 -\mathbb{P}_i(\Xi_i)) \inf_{x \notin B(z_i, 2\Delta)} f_i(x) \\ \ge & (1 -\mathbb{P}_i(\Xi_i)) \inf_{x \notin B(z_i, 2\Delta)} f_i(x) \\ \ge& (1 -\mathbb{P}_i(\Xi_i)) \frac{L \Delta^2}{2}. \end{align*}\]

根据Pinsker不等式,可以得到

\[\begin{align*} \frac{1}{m} \sum_{i=1}^m \mathbb{P}_i (\Xi_i) \le \frac{1}{m} \sum_{i=1}^m \mathbb{Q}(\Xi_i) + \sqrt{\frac{1}{2m} \sum_{i=1}^m D(\mathbb{Q} \Vert \mathbb{P}_i)} \end{align*}\]

注意到事件 $\Xi_i$ 并不相交,意味着 $\sum_{i=1}^m \mathbb{Q}(\Xi_i) \le 1$, 那么

\[\begin{align*} \frac{1}{m} \sum_{i=1}^m \mathbb{E}_i [f_i(\hat x)] \ge \frac{L \Delta^2}{2} \left( 1 - \frac{1}{m} - \sqrt{\frac{d_0^2 \mu^2 \Delta^2}{2 \sigma^2} \left( \frac{\kappa^2}{m} + 25 \right) T} \right). \end{align*}\]

在 $m = \lceil (5/4)^{d_0} /2 \rceil$ 以及 $d_0 = \lceil \log_{5/4} ( 4 \kappa^2) \rceil$ 的参数选择下,我们进一步选取最大可能的 $\Delta$, 最终可以得到复杂度下界为

\[\begin{align*} \frac{1}{m} \sum_{i=1}^m \mathbb{E}_i [f_i(\hat x)] \ge \Omega \left( \frac{L \sigma^2}{\log(\kappa) \mu^2 T} \right). \end{align*}\]]]>
Lesi Chen (陈乐偲)[email protected]