首页 > 其他 > 详细

自适应学习之 Deep Learning 最优化方法之Momentum(动量)

时间:2021-03-27 18:48:30      阅读:59      评论:0      收藏:0      [点我收藏+]

整个优化系列文章列表:

Deep Learning 之 最优化方法

Deep Learning 最优化方法之SGD

Deep Learning 最优化方法之Momentum(动量)

Deep Learning 最优化方法之Nesterov(牛顿动量)

Deep Learning 最优化方法之AdaGrad

Deep Learning 最优化方法之RMSProp

Deep Learning 最优化方法之Adam

先上结论:

1.动量方法主要是为了解决Hessian矩阵病态条件问题(直观上讲就是梯度高度敏感于参数空间的某些方向)的。

2.加速学习

3.一般将参数设为0.5,0.9,或者0.99,分别表示最大速度2倍,10倍,100倍于SGD的算法。

4.通过速度v,来积累了之间梯度指数级衰减的平均,并且继续延该方向移动:

技术分享图片

 

 

再看看算法:

技术分享图片

 

 


动量算法直观效果解释:

??如图所示,红色为SGD+Momentum。黑色为SGD。可以看到黑色为典型Hessian矩阵病态的情况,相当于大幅度的徘徊着向最低点前进。
??而由于动量积攒了历史的梯度,如点P前一刻的梯度与当前的梯度方向几乎相反。因此原本在P点原本要大幅徘徊的梯度,主要受到前一时刻的影响,而导致在当前时刻的梯度幅度减小。
??直观上讲就是,要是当前时刻的梯度与历史时刻梯度方向相似,这种趋势在当前时刻则会加强;要是不同,则当前时刻的梯度方向减弱。

技术分享图片

 

 

从另一个角度讲:

??要是当前时刻的梯度与历史时刻梯度方向相似,这种趋势在当前时刻则会加强;要是不同,则当前时刻的梯度方向减弱。

技术分享图片

 

 


??假设每个时刻的梯度g总是类似,那么由我们可以直观的看到每次的步长为:

技术分享图片

 

 


即当设为0.5,0.9,或者0.99,分别表示最大速度2倍,10倍,100倍于SGD的算法。
————————————————
版权声明:本文为CSDN博主「BVL10101111」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bvl10101111/article/details/72615621

自适应学习之 Deep Learning 最优化方法之Momentum(动量)

原文:https://www.cnblogs.com/ai-ldj/p/14586026.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!