吴恩达深度学习笔记——优化算法
P61 Mini-batch gradient descent
参考https://blog.csdn.net/red_stone1/article/details/78348753和吴恩达深度学习视频
把m个训练样本分成若干个子集,称为mini-batches。
普通的gradient descent的epoch只是指一次遍历了训练集,只经历了一次梯度下降;mini-batch gradient descent ,一个epoch会进行T次梯度下降算法。
mini-batch比batch梯度下降法法运行更快。
P62 Understanding mini-batch gradient descent
minibatch会有噪声,因为每次的损失值J与当前的X和Y有关,有些比较容易计算。但是走势是下降的。
mini-batch设置多少合适?
需要决定mini-batch的大小,一共有m个样本。
- mini-batch = m
就是batch梯度下降法,只有一个mini-batch,并且有m个样本。每个epoch运算量较大。 - mini-batch = 1
随机梯度下降法,每个样本都是独立的mini-batch,一次只处理一个样本。有很多噪声。随机梯度下降永远不会收敛,而是在最小值附近波动。较小学习率噪声会有所改善。但是效率低下。
- mini-batch
不宜设置太大或者太小,基本能接近全局最小值。一般取64,128,256等2的幂值,之所以这样设置的原因是计算机存储数据一般是2的幂,这样设置可以提高运算速度。
P63 Exponentially weighted averages(指数加权平均)
一般形式为
β值越大,则指数加权平均的天数越多,平均后的趋势线就越平缓,但是同时也会向右平移。下图绿色曲线和黄色曲线分别表示了β=0.98和β=0.5时,指数加权平均的结果。
将原始数据值与衰减指数点乘,相当于做了指数衰减,离得越近,影响越大,离得越远,影响越小,衰减越厉害
P64 Bias correction in exponentially weighted average(偏差修正)
β=0.98时,指数加权平均结果如下图绿色曲线所示。但是实际上,真实曲线如紫色曲线所示。紫色曲线与绿色曲线的区别是,紫色曲线开始的时候相对较低一些。这是因为开始时我们设置V0=0,所以初始值会相对小一些,直到后面受前面的影响渐渐变小,趋于正常。
修正这种问题的方法是进行偏移校正(bias correction),即在每次计算完Vt后,对Vt进行下式处理:
随着t的增大,偏差修正几乎没有作用,因为β^t接近于0,该式子接近于Vt。偏差修正可以使从紫线编程绿线。
P66 Gradient descent with momentum(动量梯度下降法)
动量梯度下降比梯度下降算法块很多。就是在每次训练时 ,对梯度进行加权平均处理,然后得到的梯度值更新权重W和常数b。
相当于我想让横轴变化较小,纵轴变化较大。所以有一个权重
有两个超参数,α是lr,β是指数加权平均数,通常取0.9,平均10个数据。
另外,关于偏移校正,可以不使用。因为经过10次迭代后,随着滑动平均的过程,偏移情况会逐渐消失。
P67 RMSprop
RMSprop是另外一种优化梯度下降速度的算法。
令水平方向为W的方向,垂直方向为b的方向。
由蓝线可以看出,梯度在水平震荡较小,纵向震荡较大就是dw较小,db较大,所以Sw较小,Sb较大,作为分母后,变化值W的变化较大,b变化较小。纵轴上的更新较小,需要被一个较大的数相除;而水平轴的更新较大,需要被一个较小的数相除。
即加快了W方向的速度,减小了b方向的速度,减小振荡,实现快速梯度下降算法。总得来说,就是如果哪个方向振荡大,就减小该方向的更新速度,从而减小振荡。
为避免分母为0,需要在分母加上一个ε
这样能让α取一个很大的值。梯度更新速率变快。
P68 Adam优化算法(Adaptive Moment Estimation)
结合了动量梯度下降算法和RMSprop算法。
Adam算法包含了几个超参数,分别是:α,β1,β2,ε。其中,β1通常设置为0.9,β2通常设置为0.999,ε通常设置为10−8。一般只需要对β1和β2进行调试。
P69 Learning rate decay(学习率衰减)
刚开始的时候,α较大,学习的步伐较大,收敛快;但是后来α会减小,梯度下降的步伐小,收敛到局部值。
t为mini-batch number。
除此之外,还可以设置α为关于t的离散值,随着t增加,α呈阶梯式减小。当然,也可以根据训练情况灵活调整当前的α值,但会比较耗时间。
P70 The problem of local optim(局部最优)
导数为0的点——鞍点。
在使用梯度下降算法不断减小cost function时,可能会得到局部最优解(local optima)而不是全局最优解(global optima)。之前我们对局部最优解的理解是形如碗状的凹槽,如下图左边所示。但是在神经网络中,local optima的概念发生了变化。准确地来说,大部分梯度为零的“最优点”并不是这些凹槽处,而是形如右边所示的马鞍状,称为saddle point。梯度为0不能确定其实最大值还是最小值。
进入鞍点需要很长的时间,进入鞍点后会由于随
机扰动,梯度沿着绿色剪头离开鞍点。
Adam算法能够有效解决plateaus下降过慢的问题,提高学习速率。
吴恩达深度学习笔记——优化算法相关推荐
- 吴恩达深度学习笔记(四)
吴恩达深度学习笔记(四) 卷积神经网络CNN-第二版 卷积神经网络 深度卷积网络:实例探究 目标检测 特殊应用:人脸识别和神经风格转换 卷积神经网络编程作业 卷积神经网络CNN-第二版 卷积神经网络 ...
- 吴恩达深度学习笔记——卷积神经网络(Convolutional Neural Networks)
深度学习笔记导航 前言 传送门 卷积神经网络(Convolutional Neural Networks) 卷积神经网络基础(Foundations of Convolutional Neural N ...
- 吴恩达深度学习笔记——结构化机器学习项目(Structuring Machine Learning Projects)
深度学习笔记导航 前言 传送门 结构化机器学习项目(Machine Learning Strategy) 机器学习策略概述 正交化(orthogonalization) 评价指标 数字评估指标的单一性 ...
- 吴恩达深度学习笔记——神经网络与深度学习(Neural Networks and Deep Learning)
文章目录 前言 传送门 神经网络与深度学习(Neural Networks and Deep Learning) 绪论 梯度下降法与二分逻辑回归(Gradient Descend and Logist ...
- 799页!吴恩达深度学习笔记.PDF
吴恩达深度学习课程,是公认的最优秀的深度学习课程之一,目前没有教材,只有视频,本文提供完整笔记下载,这本笔记非常适合和深度学习入门. 0.导语 黄海广博士和同学将吴恩达老师深度学习视频课程做了完整的笔 ...
- 吴恩达深度学习笔记1-Course1-Week1【深度学习概论】
2018.5.7 吴恩达深度学习视频教程网址 网易云课堂:https://mooc.study.163.com/smartSpec/detail/1001319001.htm Coursera:htt ...
- 吴恩达深度学习笔记- lesson4 卷积神经网络
文章目录 Week 1 卷积神经网络基础 4.1.1 计算机视觉(Computer vision) 4.1.2 边缘检测示例(Edge detection example) 4.1.3 更多边缘检测内 ...
- 吴恩达--深度学习笔记
这是一个督促自己学习的笔记 文章目录 这是一个督促自己学习的笔记 1.logistic回归 1. 神经网络基础----二分分类 2. logistic回归 3. logistic回归损失函数 4. 梯 ...
- 吴恩达深度学习笔记(四)——深度学习的实践层面
一.数据集的划分 要确保验证集和测试集的数据来自同一分布. 二.偏差和方差 方差:训练集和验证集的数据分布是否均匀,训练集和验证集之间的差别: 偏差:训练集和真实结果的差别. 高偏差:欠拟合 高方差: ...
- 吴恩达深度学习笔记(四)—— 正则化
有关正则化的详细内容: 吴恩达机器学习笔记(三) -- Regularization正则化 <机器学习实战>学习笔记第五章 -- Logistic回归 主要内容: 一.无正则化 二.L2正 ...
最新文章
- KMP算法求回溯数组的步骤
- MPB:浙大王佳堃组瘤胃微生物移植(视频)
- props写法_好程序员web前端培训React中事件的写法总结
- java %2f_字符串“http%3A%2F%2F”转换成http://详解
- 那些曾经拥有的最大快乐,都是好奇心的结果
- 执子之手简约唯美的表白网站HTML源码
- 滴滴新增对手!腾讯投资的网约车平台OnTime或将于本月上线
- DatabaseMetaData的使用
- C# 在类文件自动添加文件注释的方法
- Raki的读paper小记:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
- php在html中if,html里的if注释怎么使用
- 用Excel制作甘特图跟踪项目进度(附绘制教程)
- Jupyter notebook系列(6):更高级的配置Mark(显示行号,更改工作路径,使用sudo权限)
- Windows10家庭版 VMWare15 安装虚拟机启动时出现 蓝屏(而且重启)问题
- 腾讯地图标注_怎样在导航地图上标注公司名和位置
- elm and halogen
- Microsoft Office 2016出现Excel文件打不开解决方法
- 微信微网站需要服务器吗,一分钟搭建微信微网站
- python正则表达式及RE模块
- CentOS 连接错误解决办法