×

PyTorch教程12.6之势头

消耗积分:0 | 格式:pdf | 大小:0.73 MB | 2023-06-05

Petc

分享资料个

第 12.4 节中,我们回顾了在执行随机梯度下降时会发生什么,即,在只有梯度的噪声变体可用的情况下执行优化时。特别是,我们注意到对于噪声梯度,我们在选择面对噪声的学习率时需要格外谨慎。如果我们将它降低得太快,收敛就会停滞。如果我们过于宽容,我们将无法收敛到一个足够好的解决方案,因为噪声会不断驱使我们远离最优解。

12.6.1。基本

在本节中,我们将探索更有效的优化算法,尤其是针对实践中常见的某些类型的优化问题。

12.6.1.1。漏平均值

在上一节中,我们讨论了小批量 SGD 作为加速计算的一种方法。它还有一个很好的副作用,即平均梯度减少了方差量。小批量随机梯度下降可以通过以下方式计算:

(12.6.1)gt,t−1=∂w1|Bt|∑i∈Btf(xi,wt−1)=1|Bt|∑i∈Bthi,t−1.

为了保持符号简单,我们在这里使用 hi,t−1=∂wf(xi,wt−1) 作为样本的随机梯度下降i使用及时更新的权重t−1. 如果我们能够从方差减少的效果中受益,甚至超越小批量的平均梯度,那就太好了。完成此任务的一个选择是用“leaky average”代替梯度计算:

(12.6.2)vt=βvt−1+gt,t−1

对于一些β∈(0,1). 这有效地将瞬时梯度替换为对多个过去梯度进行平均的梯度v称为速度它积累了过去的梯度,类似于一个重球从目标函数景观上滚下来如何对过去的力进行积分。为了更详细地了解发生了什么,让我们展开vt递归地进入

(12.6.3)vt=β2vt−2+βgt−1,t−2+gt,t−1=…,=∑τ=0t−1βτgt−τ,t−τ−1.

大的β相当于长期平均水平,而小 β仅相当于相对于梯度法的轻微修正。新的梯度替换不再指向特定实例上最速下降的方向,而是指向过去梯度的加权平均值的方向。这使我们能够实现批量平均的大部分好处,而无需实际计算其梯度的成本。稍后我们将更详细地重新讨论这个平均过程。

上述推理构成了现在所谓的 加速梯度方法的基础,例如动量梯度。他们享有额外的好处,即在优化问题是病态的情况下更有效(即,在某些方向上进展比其他方向慢得多,类似于狭窄的峡谷)。此外,它们允许我们对后续梯度进行平均以获得更稳定的下降方向。事实上,即使对于无噪声凸问题,加速方面也是动量起作用的关键原因之一。

正如人们所预料的那样,由于其功效,势头是深度学习及其他领域优化的一个深入研究的课题。例如,请参阅Goh(2017 年撰写的 精美说明文章,以获取深入分析和交互式动画。它是由Polyak ( 1964 )提出的。Nesterov(2018在凸优化的背景下进行了详细的理论讨论。长期以来,众所周知,深度学习的势头是有益的。参见例如Sutskever等人的讨论 。( 2013 )了解详情。

12.6.1.2。病态问题

为了更好地理解动量法的几何特性,我们重新审视了梯度下降法,尽管它的目标函数明显不太令人满意。回想一下我们在12.3 节中使用的f(x)=x12+2x22,即适度扭曲的椭球物镜。我们通过在x1方向通过

(12.6.4)f(x)=0.1x12+2x22.

像之前一样

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !