深度学习笔记(2):2.6 momentum | 2.7 RMSprop | 2.8 Adam

        今天要介绍三种优化算法,momentum,RMSprop和Adam。很多人提出了很多优化算法,但随着越来越多的优化算法提出,大家开始质疑优化算法的效果,因为毕竟有一些优化算法只在小部分上有效果,对于各种各样的神经网络适用范围并不是那么广泛,但是今天介绍的这三种优化算法在大多数的神经网络上都奏效,被大家广泛使用并认为有很好效果。

2.6 momentum

这一节讲动量梯度下降法(gradient descent with momentum)。从介词with可以看出,这个方法实际是对梯度下降法的改进,就是在梯度下降法中加入了动量(momentum),为什么称为动量呢?和物理学中的动量有关系吗?接下来你就会明白这个名字的含义了。

首先我们先来复习一下梯度下降法,假设上图中轮廓表示我们的目标函数值,中间的红点表示我们想要得到的全局最小值,从一个点开始,我们使用梯度下降法,路径如图中蓝色部分所示,直至收敛到达红点。那加上动量的梯度下降法又是怎样的呢?

我们先从公式上来看动量是如何对梯度下降法作出改变的。首先,在每一轮迭代t,我们通过mini-batch计算得到W和b的梯度,接着不同于梯度下降法的直接使用每一轮迭代计算出来的梯度,我们先对梯度做一个变换,即计算梯度的指数加权移动平均,然后再将其作为梯度进行权重的更新,如上图中蓝色公式所示。

加了动量之后的梯度下降路径为图中红线所示,为什么加了动量的梯度下降路径由原来的蓝色变为现在的红色呢?了解指数加权平均的同学应该知道,加入动量的梯度下降法在计算第t轮的梯度时,相当于平均了前1/(1-\beta )轮的梯度值。这也是路径为什么发生了改变,因为对于每一蓝色箭头,都可以将其方向分为水平和垂直两个方向,而垂直方向总是一上一下,经过平均,均值近似为0,而水平方向始终都是正的,都是朝着最优解的方向。假设\beta取0.9,那么加入动量的梯度下降法在每次迭代计算梯度时,相当于平均前10次的梯度,所以红色箭头的垂直分量相比蓝色箭头更小,而当后期快收敛时,蓝色路径波动幅度较小,红色路径通过指数加权平均,后期梯度方向几乎水平。

我们在分析蓝红路径差别时其实已经表现出了加入动量的梯度下降法相比梯度下降法的优点,显然,加入动量之后,梯度下降法走了一条更直接的路,在抵达最小值的路径上减少了摆动,速度自然比原始梯度下降更快。同时,原始梯度下降的上下波动还阻止使用较大的学习率,因为梯度下降方向在垂直方向上分量较大,一旦不小心使用了较大的学习率,就会像图中左侧紫线那样

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值