深度学习笔记(10) 优化算法(二)

深度学习笔记(10) 优化算法(二)


1. Adam 优化算法

Adam代表的是 Adaptive Moment Estimation
基本上就是将 MomentumRMSprop 结合在一起

首先初始化,vdW=0,SdW=0,vdb=0,Sdb=0
在第 t 次迭代中,要计算微分,用当前的mini-batch计算dW,db

接下来计算Momentum指数加权平均数:
在这里插入图片描述
用RMSprop计算:
在这里插入图片描述

计算偏差修正:
在这里插入图片描述
最后更新权重,所以W,b更新后是
在这里插入图片描述
超参数β1常用的缺省值为0.9
这是dW的移动平均数,也就是dW的加权平均数
计算这个微分dW,叫做第一矩

超参数β2,推荐使用0.999
建议 ε 为10-8
计算平方数的指数加权平均数dW2,叫做第二矩


2. 学习率衰减

加快学习算法的一个办法就是随时间慢慢减少学习率,称为学习率衰减
减少a的本质在于,在学习初期,能承受较大的步伐
但当开始收敛的时候,小一些的学习率能让步伐小一些

拆分成不同的mini-batch,第一次遍历训练集叫做第一代
第二次就是第二代,依此类推,
将设学习率:
在这里插入图片描述
衰减率: d e c a y − r a t e decay-rate decayrate
代数: e p o c h − n u m epoch-num epochnum
初始学习率: α α α0

也有指数衰减
其中a相当于一个小于1的值
α α α = 0.95epoch-num α α α0,所以学习率呈指数下降

人们用到的其它公式有:
在这里插入图片描述
t 为 mini-batch 的数字


3. 局部最优的问题

如果要创建一个神经网络,通常梯度为零的点并不是这个图中的局部最优点,通常是鞍点
在这里插入图片描述
但是一个具有高维度空间的函数,如果梯度为0
那么在每个方向,它可能是凸函数,也可能是凹函数

如果在2万维空间中,那么想要得到局部最优,所有的2万个方向都需要是这样
但发生的机率也许很小,也许是2-20000
更有可能遇到有些方向的曲线会这样向上弯曲,另一些方向曲线向下弯,而不是所有的都向上弯曲
因此在高维度空间,更可能碰到鞍点

在这里插入图片描述
局部最优不是问题,结果是平稳段会减缓学习
平稳段是一块区域,其中导数长时间接近于0

花上很长时间慢慢抵达平稳段的这个点,因为左边或右边的随机扰动,就能够走出平稳段
Momentum 或是 RMSpropAdam 这样的算法,能够加速学习算法
在这些情况下,更成熟的优化算法,如 Adam 算法,能够加快速度,尽早往下走出平稳段


参考:

《神经网络和深度学习》视频课程


相关推荐:

深度学习笔记(9) 优化算法(一)
深度学习笔记(8) 实践层面(三)
深度学习笔记(7) 实践层面(二)
深度学习笔记(6) 实践层面(一)
深度学习笔记(5) 深层神经网络


谢谢!

氢键H-H CSDN认证博客专家 机器人软件 运动控制 深度学习
一位永远相信美好的事情即将发生,从事自动化机器人软件开发,不忘初心,牢记使命,为实现中华民族伟大复兴而奋斗的社会主义接班人。
©️2020 CSDN 皮肤主题: 我行我“速” 设计师:Amelia_0503 返回首页
实付 49.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值