深度学习学习笔记(五)

第二门课 第二周

文章目录

  • 一、Mini-batch 梯度下降
  • 二、动量梯度下降法
  • 三、RMSprop
  • 四、Adam算法
  • 五、学习率衰减
  • 总结


一、Mini-batch 梯度下降

向量化可以较快地处理m个样本,但是若m很大的话(比如m等于500万,x^{(1)}x^{(5000000)}),处理速度还是很慢。针对这一现象,将五百万个样本分割为一些小的子集(比如分割为5000个子集(𝑋 {1}至𝑋 {5000}),这些子集被取名为 mini-batch,每一个子集有1000个样本(比如第一个子集𝑋 {1}表示x^{(1)}x^{(1000)}))。

它不会总朝向最小值靠近,但它比随机梯度下降要更持续地靠近最小值的方向。

如果样本数m比较小(小于2000),直接使用batch梯度下降法;m较大时,一般的mini-batch 大小为 64 到 512(2的n次方),尝试不同的n,然后看能否找到一个让梯度下降优化算法最高效的大小。


二、动量梯度下降法

指数加权平均:V𝑡 = 𝛽*V(𝑡−1) + (1 − 𝛽)*𝜃𝑡

动量梯度下降法:是计算梯度的指数加权平均数,并利用该梯度更新权重。        

公式为:

 迭代效果如下图所示,纵向震荡较大,横向迭代速度需提高。

 


三、RMSprop

RMSprop,全称是均方根,将微分进行平方,然后最后使用平方根。

减缓纵轴方向的学习,同时加快横轴方向的学习

公式为:

 RMSprop减缓纵轴方向的学习,同时加快横轴方向的学习。


四、Adam算法

Adam 优化算法基本上就是将 Momentum 和 RMSprop 结合在一起。

Momentum 更新了超参数𝛽1(一般取值为0.9),RMSprop 更新了超参数𝛽2(一般取值为0.999),式中ε的作用是为了确 保数值稳定(无论何时都不会除以一个很小很小的值),值设为10^{-8}

公式为:

torch.optim.Adam()   #pytorch运用

五、学习率衰减

随时间慢慢减少学习率,称为学习率衰减。

torch.optim.lr_scheduler.LambdaLR   #pytorch运用

总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值