[机器学习] 2. 随机方差缩减梯度下降 Stochastic Variance Reduced Gradient

ML Theory 太魔怔了!!!!!

接上文,GD 有 1T 的收敛速率而 SGD 只有 1T 的收敛速率。有许多种方法可以加速 SGD 的收敛速度。有一类算法是通过让方差呈递减趋势下降,最终以与 GD 同阶的速度收敛(凸与 L-平滑以 1T 速度收敛;强凸与 L-平滑以线性速度收敛)。这里介绍其中一种,SVRG (stochastic variance reduced gradient)。

SVRG 的想法在于,有一个随机变量 X,我们要通过蒙特卡洛法估计 EX,而有一个易于计算 EY 的随机变量 Y,且 X,Y 强相关,那么可以通过

θα=α(XY)+EY

来估计 EX。其中

Eθα=αEX+(1α)EY

Var(θα)=Var(α(XY))=α2Var(XY)

α=1 时,Eθα=EX,Var(θα)=Var(XY)。这样便不依赖于 Var(X) 而只依赖于 X,Y 的相关性。

我们可以这样设计一个算法:X 在当前的 wjYwj 的 snapshot,wjmm。我们将 m 设计得足够大使得可以接受计算 wim 完整梯度的代价,这些梯度就是 EY

直观地讲,我们用 X0 中随机梯度与梯度的差来估计 Xt 中随机梯度与梯度的差,如图,红色和橙色为两者的随机梯度,黑色为已知的,绿色为要估计的,取黑+橙-红。这样问题就不在于橙色与绿色的角度长度偏差有多大,而在于 X0Xt 的偏差的差有多大。

完整算法描述如下:

SVRG 算法

  • For s=1,2,
    • w~=w~s1
    • u~=1Ni=1Nli(w~)=f(w~)
    • w0=w~
    • For t=1,2,,m
      • 随机选取 i[N]
      • wt=wt1η(li(wt1)li(w~)+u~)
    • 随机选取 wt, t{0,1,,m1} 作为 w~s

最后一步随机选取是为了可以用 E 说事。如果选取 w~m,没人证得出来。。

这里给出 μ-强凸的收敛性分析。

vt=li(wt1)li(w~)+u~

gi(w)=li(w)li(w)li(w),ww

由于 li(w) 是凸的,gi(w) 也是凸的,而计算可得 gi(w)=0,因此 gi(w)=minwgi(w)

0=gi(w)minη{gi(wηgi(w))}minη{gi(w)ηgi(w)22+L2η2gi(w)22}Smoothness=gi(w)12Lgi(w)22

这个过程就是平滑性取二次函数顶点。移项得

li(w)li(w)222L(li(w)li(w)li(w),ww)

这个式子有点像 Lipschitz 的形式,区别在于左侧是范数的平方。

对所有 li 求和得

Eli(w)li(w)222L(f(w)f(w))

Evt222Eli(wt1)li(w)22+2Eli(w~)li(w)f(w~)22a+b222a22+2b222Eli(wt1)li(w)22+2Eli(w~)li(w)E(li(w~)li(w))22f(w)=02Eli(wt1)li(w)22+2Eli(w~)li(w)22EXEX22=EX22EX22EX224L(f(wt1)f(w)+f(w~)f(w))

Ewtw22=wt1w222ηwt1w,Evt+η2Evt22wt1w222ηwt1w,f(wt1)+4Lη2(f(wt1)f(w)+f(w~)f(w))wt1w222η(f(wt1)f(w))+4Lη2(f(wt1)f(w)+f(w~)f(w))Convexity=wt1w222η(12Lη)(f(wt1)f(w))+4Lη2(f(w~)f(w))

其中 4Lη2(f(w~)f(w)) 是误差部分,其会随着 w~w 减小。

Ewmw22Ew0w222mη(12Lη)t=1mf((wt1)f(w))+4mLη2(f(w~)f(w))=Ew0w222mη(12Lη)E(f(w~s)f(w))+4mLη2(f(w~)f(w))

我们拿到了想要的项,E(f(w~s)f(w))f(w~)f(w) 的线性组合,等式左边可以直接缩放为 0,因此只需要消掉 Ew0w22 便大功告成。

Ew0w22=Ew~w222μE(f(w~)f(w))Convexity+f(w)=0

E(f(w~s)f(w))(1mμη(12Lη)+2Lη12Lη)E(f(w~s1f(w))

因此,η<1Lm 足够大时,系数会 <1,因此线性收敛。

posted @   shiys22  阅读(607)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示