SGD(Stochastic Gradient Descent):随机梯度下降,每一次计算mini-batch的平均梯度,然后更新参数
降低方差类
SAG(Stochastic Average Gradient):随机平均梯度,该算法的梯度更新公式为:
w k + 1 = w k − α k k ∑ j = 1 k g i j ( w j ) w^{k+1}=w^{k}-\frac{\alpha_{k}}{k} \sum_{j=1}^{k} g_{i_{j}}(w^{j}) wk+1=wk−kαkj=1∑kgij(wj)
不同于SGD,SAG额外记录了一张以往的梯度更新表,在迭代的过程中,不断地记录当前参数下的梯度,且在当前步进行参数更新时,选取的梯度是过去所记录的所有梯度的平均值。
SVRG(Stochastic Variance Reduction Gradient):随机方差下降,该算法旨在减小梯度的方差,其梯度更新公式如下:
w k = w k − 1 − α ( g i ( w k − 1 ) − g i ( w ~ ) + μ ~ ) w^{k}=w^{k-1}-\alpha (g_{i}(w^{k-1})-g_{i}(\tilde{w})+\tilde{\mu}) wk=wk−1−α(gi(wk−1)−gi(w~)+μ~)