Skip to content

算法Algorithm

加速梯度法

施工中 · 内容逐步修订

Accelerated gradient method · Nesterov accelerated gradient method

以外推点和递推动量整合历史梯度,使光滑凸优化达到最优的一阶函数值阶数。

形式陈述 ​

给定可微目标 f:Rn→R、初值 x0、正参数 L>0、容差和迭代预算,一种标准凸加速梯度法初始化 y1=x0,t1=1;对 k=1,2,… 迭代

xk=yk−1L∇f(yk),tk+1=1+1+4tk22,yk+1=xk+tk−1tk+1(xk−xk−1).

第一行是从外推点 yk 出发的一次梯度步,第三行用相邻主序列差构造下一查询点;首轮系数 t1−1=0,所以无需额外定义 x−1。算法可返回 xk、梯度或函数值残差、迭代次数和失败状态;yk 是查询状态,不应与最终候选点混为一谈。这个更新对任意可微函数都能形式执行,用于收敛保证时,L 必须确为梯度的有效 Lipschitz 上界;O(1/k2) 的全局结论还需光滑凸假设及正确的 L。

固定 L 时,每轮需要一次梯度求值及 O(n) 的向量运算,保存主序列、外推点与梯度需 O(n) 空间;求值器内部成本、额外停机诊断和回溯的时间与工作空间另计。

递推恒等式 tk+12−tk+1=tk2 是证明中权重望远镜消去的关键。实际未知 L 时可以在每轮回溯,直到以二次上模型检验梯度步;回溯版必须同步维护证明要求的权重,不能只把 L 临时改掉而保留不相容的动量。

直觉

普通梯度下降每轮丢弃上一方向,只保留当前位置。加速法把连续几轮的一致移动解释成“尚未走够”,将查询点向前外推;若新梯度仍支持这个趋势,历史位移便减少低曲率方向的拖延。与此同时,梯度步负责用局部二次模型校正外推,避免动量完全脱离目标。

动量外推与梯度校正

图中 βk=(tk−1)/tk+1;几何示意取 β=3/4,使从 xk 到 yk+1 的位移与前一步同向、长度为其 3/4。它把第 k 轮的外推与下一轮的梯度步连在一起,使用与上面更新式相同的下标,实际系数仍由 tk 递推确定。

加速不是保证每一步函数值更低的惯性小技巧。它依靠特定权重把函数值误差与一个辅助点到解的距离组合成势函数;单项可能上升,只要组合量下降即可。系数趋近一意味着后期会保留较长记忆,也解释了模型突然改变、常数错估或有限精度扰动时为何容易过冲。重启会在检测到不良外推时清空记忆,但何时重启是额外策略。

重球法同样保存历史位移,但在当前主点查询梯度,而本页从外推点查询梯度。两个查询位置产生不同递推;重球的二次最优谱参数还可能在同样强凸光滑的非二次目标上形成三周期,不能继承本页特定权重的势函数结论。

例子与边界

取 f(x)=x2/2,真实最小光滑常数为 1,但假设只掌握安全上界 L=4,从 x0=1 开始。前两轮因 t1−1=0 与梯度下降相同:

x1=0.75,x2=0.5625.

t2=(1+5)/2≈1.618、t3≈2.194,于是

y3=x2+t2−1t3(x2−x1)≈0.5097,x3≈0.3823.

相同步长的普通梯度下降第三点是 0.421875。这条轨迹真实展示外推获得的增益,也展示加速不会凭空修正过度保守的 L;若使用紧常数 L=1,两种方法都在一次梯度步到达零,根本没有可加速的余地。

边界同样具体。低估 L 会使梯度校正步越过二次上模型,动量随后可能放大误差;固定目标上的加速函数值也可能短暂上升或越过极小点。非凸目标没有本页势函数,照搬系数只是一种启发式。随机梯度噪声会被长记忆累积,需要不同分析。若停止测试只看 f(xk)−f(xk−1),振荡可能制造假停机;应结合梯度映射、预算和最佳已见函数值。

推论与应用

若 f 为 L-光滑凸目标且存在极小点 x∗,上述更新满足

f(xk)−f(x∗)≤2L‖x0−x∗‖2(k+1)2,

其证明与常数见Nesterov 加速率。这把达到函数值精度 ε 所需的一阶查询从梯度下降的 O(1/ε) 降到 O(1/ε),并在加速率条目所说明的一阶线性张成模型和高维最坏情形中达到最优阶。结论针对函数值,不自动说明主序列或外推序列的每个点都单调收敛。

复合目标把第一行替换成近端梯度步便得到 FISTA 型方法;强凸参数已知时可改用常动量获得 O(L/μlog⁡(1/ε)) 复杂度。两种变体的更新与证明常数不同,本页不把它们伪装成同一行参数开关。实现时最小可审计记录包括当前 L、回溯次数、tk、主/外推点函数值和停止原因。

复合外推的可执行入口 ​

FISTA复合加速法把外推查询与精确prox结合,保留本页的主点/查询点区分,并完整证明非光滑三点式。它还给出只增不减的回溯常数规则:这种特定规则可以保留原来的 tk递推;若允许接受曲率下降,则需要重新检查权重。耦合Lasso例同时展示主目标非单调与残差构造的gap更早反增,两种现象应分开记录。

参考资料
  • Yurii Nesterov, “A Method for Solving the Convex Programming Problem with Convergence Rate O(1/k2),” Soviet Mathematics Doklady 27, 1983, 372–376。
  • Yurii Nesterov, Introductory Lectures on Convex Optimization: A Basic Course, Kluwer, 2004,§2.2.2,optimal methods for smooth convex minimization。
  • Amir Beck and Marc Teboulle, “A Fast Iterative Shrinkage-Thresholding Algorithm for Linear Inverse Problems,” SIAM Journal on Imaging Sciences 2(1), 2009, 183–202,§4,accelerated recurrence and rate。
关系图谱11 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系