吴恩达深度学习 2.2 改善深度神经网络-优化算法
2021/10/3 22:11:20
本文主要是介绍吴恩达深度学习 2.2 改善深度神经网络-优化算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1. 知识点
- Mini-batch梯度下降法
普通梯度下降法,每一步梯度下降都要对训练集的所有样本进行运算。
Mini-batch梯度下降法,每一步梯度下降选择训练集样本的子集进行运算。
Mini-batch梯度下降的算法实现:打乱训练集、对训练集进行切分(比如,切分为64个子集)、更新参数时每次选择一个子集进行运算。
普通梯度下降、随机梯度下降、Mini-batch梯度下降成本函数的比较:普通梯度下降每一次训练时间较长,成本递减;随机梯度下降成本总体趋势向下,呈波动状态;Mini-batch在前两者之间做到一个平衡。
Mini-batch大小的选择:如果样本数较小,选择普通梯度下降。切分的子集的样本数,要符合CPU/GPU的运算能力。
- 指数加权平均:将离散波动的观测值变得平滑。
同时考虑当前观测值和前n个观测值的平均值,对两者进行加权运算,获得指数加权平均值。。
偏差修正:由于=0 ,且较大,t较小时,会明显小于,需要修改。修正函数为。随着t的增大,接近于0 ,不再起到修正作用。
- 动量梯度下降法:为了减小梯度下降时成本函数上下波动幅度,将指数加权平均用在计算梯度上。、、、。
- RMSprop优化算法:(为啥这样更新能起到减小成本波动的作用,没想明白??)
- Adam优化算法:将动量梯度下降法和RMSprop结合起来。
用动量梯度下降计算,用RMSprop计算,分别修偏差,,,更新参数。
- 学习率衰减:用固定的学习率,当算法在到达最小值附近时,由于噪声存在,使得不会精确收敛,而是会在最小值附近一定范围内波动。学习率衰减,可以让波动减小,计算结果更接近最小值。
- 局部最优
存在一些局部最小值点,其梯度为0。
在高维度的函数中,会存在一些梯度为0的点,并不是局点最小值点,而是在有些维度局部最小,在有些维度局部最大,这样的点为鞍点。
这篇关于吴恩达深度学习 2.2 改善深度神经网络-优化算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南