Skip to content

算法Algorithm

AdaGrad 对角自适应梯度法

AdaGrad · Diagonal AdaGrad · 对角自适应梯度法

按每个坐标累积梯度平方调整步长,完整推导盒约束下的路径式遗憾界,并通过稀疏序列和条件化检验其随机优化保证。

形式陈述 ​

AdaGrad用已经观察到的梯度调整后续更新的尺度。下面固定可完全展开的对角、盒约束版本。设决策集

C=∏i=1d[ℓi,ri],−∞<ℓi≤ri<∞,

坐标宽度 Di=ri−ℓi。在在线凸优化协议中,先选择 xt∈C,再看到本轮凸损失 ft 及一个有限次梯度 gt∈∂ft(xt)。给定 x1∈C、η>0 和正的平滑常数 δ>0,初始化 s0,i=0;每轮执行

st,i=st−1,i+gt,i2,at,i=δ2+st,i,(1)xt+1,i=clip[ℓi,ri](xt,i−ηgt,iat,i).

这里的 δ 是分母平滑常数,不是失败概率。本页采用平方根内部加 δ2 的约定;软件中也常见根号外加常数,二者的数值轨迹与精确界应分别计算。

每轮使用一个当前梯度,累计 T 轮共 T 次查询;更新累积平方、缩放和盒投影需 O(d) 算术、O(d) 状态。若 Di=0,该坐标始终固定;若某坐标梯度一直为零,其分母仍为 δ,不会发生 0/0。梯度、平方和或更新出现非有限数时应报告数值失败。

适用于每一条已观察路径的保证 ​

对任意固定比较器 u∈C,式(1)满足

(2)∑t=1T[ft(xt)−ft(u)]≤∑i=1d[Di2aT,i2η+η(aT,i−δ)].

无需假设损失或梯度独立,也不需要在运行前知道梯度幅度或预算 T。如果某个坐标宽度为零,它对真正遗憾的贡献为零,可以直接从右侧和中删去;保留它只得到更松的上界。

若 Di≤D,D>0,取 η=D/2,可简化为

(3)RegT≤2D∑iδ2+∑t=1Tgt,i2.

若整个盒只有一个点,所有遗憾为零,直接返回该点即可,不使用含正宽度的调参公式。

直觉

每个坐标有自己的历史刻度。经常出现大梯度的方向,其分母增长快,后续单次移动变小;长期很少出现的方向保留较大的有效步长。因此方法会根据实际坐标活动分配移动幅度。

这并不意味着所有坐标上的小梯度都应无限放大。正的 δ 控制初期尺度,盒投影限制可行移动。若坐标系发生旋转,哪些分量看起来稀疏也会变化;对角AdaGrad依赖所选坐标,并不是一个对任意旋转都不变的几何规则。

例子与边界

时变尺度不能直接望远镜消去 ​

固定一个坐标,简记 at=at,i、zt=xt,i−ui。区间投影不增到可行比较器的距离,故

(4)gt,izt≤at2η(zt2−zt+12)+ηgt,i22at.

求和时 at 随时间变化,必须保留额外项:

∑t=1Tat(zt2−zt+12)=a1z12+∑t=2T(at−at−1)zt2−aTzT+12≤Di2aT.

因为 at 单调不减,且 |zt|≤Di。另一方面,at2−at−12=gt,i2、a0=δ,所以

gt,i2at=(at−at−1)at+at−1at≤2(at−at−1).

第二项真正望远镜求和为 2(aT−δ)。将这两条界代入式(4),再对坐标求和;凸次梯度不等式 ft(xt)−ft(u)≤⟨gt,xt−u⟩ 给出式(2)。这说明改变尺度的代价已被实际计入,而不是把固定步长证明换个符号。

两次更新和一条稀疏预算比较 ​

取二维盒 [−2,2]2、x1=(0,0)、η=δ=1,两轮线性损失的梯度为 g1=(3,0)、g2=(0,4)。第一轮累积平方 (9,0),分母 (10,1),故

x2=(−3/10,0).

第二轮累积平方 (9,16),分母 (10,17),故

x3=(−3/10,−4/17).

两步都在盒内,无需截断。累计在线损失为0;最优固定比较器 (−2,−2) 的两轮总损失为 −14,实际遗憾为14。式(2)给上界 9(10+17)−2≈63.57,说明它是保证而非逐例等式。

再比较相同100次查询、相同100维盒 [−1,1]100。若每轮梯度都为第一个单位向量 e1,取 D=2,δ=0.001,式(3)给

22[100.000001+99⋅0.001]≈28.56.

使用整个盒的欧氏直径 20 和每步梯度范数1,普通固定步长OGD的已知预算界为 20100=200。这里对角界利用了只有一个坐标活动,而不是从100维付相同的几何费用。

如果100轮依次各触发一个不同坐标,同一AdaGrad上界约为282.84,比这个OGD界更松。所谓稀疏优势要看整个时间序列的坐标能量分布;单独每轮只有一个非零分量,不足以保证严格改善。一般地,Cauchy–Schwarz给 ∑i∑tgt,i2≤d∑t‖gt‖2,表明集中与分散的两种极端。

当前梯度参与缩放,会改变条件期望 ​

在一个点上,让随机梯度以概率 3/4 取 −1、以概率 1/4 取3,其条件均值为0。若历史平方和为0、δ=1,本轮缩放方向的条件均值为

34−12+14310=34(1/10−1/2)<0.

因此“原梯度无偏”不意味着“按当前梯度调步长后的方向仍无偏”。这不推翻式(2):它先对每条路径控制 ∑⟨gt,xt−u⟩,并未在证明中把随机有效步长提出条件期望。

推论与应用

从在线保证到随机优化 ​

若 ft(x)=ℓ(x,Zt),每个损失对 x 凸,Zt 为新鲜IID样本,并且 xt 只使用过去,则Online-to-Batch转换将式(2)的期望右侧除以 T,变成平均输出 x¯=T−1∑t=1Txt 的期望总体超额风险界。更新时使用本轮梯度计算 at 没有破坏这个步骤,因为被评价的是看本轮样本之前的 xt。

例如有确定条件界 E[gt,i2∣过去]≤Gi2,平方根的凹性给

Eδ2+∑tgt,i2≤δ2+TGi2,

故式(3)转成

E[F(x¯)−F(u)]≤2DT∑iδ2+TGi2.

比较器 u 固定且相关损失可积;若最优点存在可取它。重复使用固定训练集时,应改为条件于该数据的经验目标,不能把同一个证明直接称作总体泛化界。

本页的保证需要凸损失、有限坐标范围和准确的盒投影。无约束深度网络、指数遗忘二阶矩的Adam、额外动量以及任意矩阵预条件,都改变了分析对象。它们不是式(1)的同义实现。

参考资料
关系图谱11 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

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