梯度的方差,例如在 SGD 中

机器算法验证 方差 梯度下降 随机梯度下降
2022-03-23 13:10:40

在有关随机优化方法(例如 SGD)的论文中,人们经常谈论梯度的方差g并且主要表达如下:

Var(gr)=E(gE(g)22)=E(g22)E(g)22

这让我想起了随机变量的标准方差定义X, 那是:

Var(X)=E[(XE(X))2]=E(X2)E(X)2
.

所以这让我感到困惑:

  • 在上面的表达式中,我们有Var(g), 不是Var(g). 那么为什么 l2 范数会出现在这里呢?
  • gr是向量值随机变量,其值在Rn.对于向量值随机变量,方差应该是E((Xμ)(Xμ)T),即方差-协方差矩阵。为什么我们仍然在这里应用另一个公式?

我不是统计专家,因此非常感谢您的澄清。

先感谢您!

1个回答

我对这个问题进行了更多思考,得出了以下结论:大多数处理 SGD 方差减少的论文(SVRG、SAGA 和 SAG 等方法)实际上是指梯度方差的 1-范数(trace的 cov 矩阵)当他们写Var(g).

假设随机梯度 gRp是我们拥有的真实梯度的无偏估计:

diag(Cov(g))1=Var(g)1=|E(g1f1)2|+...+|E(gpfp)2|=E((g1f1)2+...+(gpfp)2)=E(gf22)=E(g2)f2=E(g2)E(g)2=defVar(g)