2.2.3 动量梯度下降法
动量梯度下降法
我们现在介绍一下Momentum梯度下降法,运行速度快于标准的梯度下降法。其基本思想就是计算梯度的指数加权平均数,并利用该梯度来更新权重。
如图所示,图中蓝色的代表batch或者mini-batch的梯度下降法,很可能这种梯度下降法的逼近就是以这种形式来逼近的。这种上下波动减慢了梯度下降法的更新速度。使你无法用更大的学习率。如果用更大的学习率可能就如图中紫色线条所示,偏离了学习范围。为了避免波动过大,你要使用一个较小的学习率。
从另外一个角度我们来看,我们希望在纵轴上学的慢一点,而在横轴上学的快一点。Momentum梯度下降法刚好就可以解决这个问题。
像图中下侧所示的公式一样,我们指数加权平均更新dw和db,然后再更新w和b。这样就可以减少梯度下降的幅度。
就像图中部分那些小箭头一样,如果我们平均的话,正负数相互抵消,在纵轴方向平均值就是0了。而在横轴方向,因为所有的微分都指向横轴方向,所以横轴方向的平均值仍然较大。
momentum算法的名称由来如下:
想象你有一个碗,有一个球从碗的边缘滚下去,微分给了这个碗加速度,球因为加速度会越滚越快。ββ\beta比一小,表现出一些摩擦力。因为向下获得动量,所以称之为momentum。
下面是如何具体实现
右侧公式是删了1−β1−β1-\beta之后的结果,实际上,这两个公式都是可以的。
吴教主深度学习和神经网络课程总纲
2.2.3 动量梯度下降法相关推荐
- 2.6 动量梯度下降法-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
←上一篇 ↓↑ 下一篇→ 2.5 指数加权平均的偏差修正 回到目录 2.7 RMSprop 动量梯度下降法 (Gradient Descent with Momentum) 还有一种算法叫做Momen ...
- 动量梯度下降法 Momentum
动量梯度下降法是对梯度下降法的一种优化算法,该方法学习率可以选择更大的值,函数的收敛速度也更快. 梯度下降法就像下面这张图,通过不断的更新 w与b,从而让函数移动到红点,但是要到达最优解,需要我们不断 ...
- 随机梯度下降法_动量梯度下降法(gradient descent with momentum)
简介 动量梯度下降法是对梯度下降法的改良版本,通常来说优化效果好于梯度下降法.对梯度下降法不熟悉的可以参考梯度下降法,理解梯度下降法是理解动量梯度下降法的前提,除此之外要搞懂动量梯度下降法需要知道原始 ...
- 指数加权平均、动量梯度下降法、RMSprop、Adam优化算法
目录 1.指数加权平均(exponentially weighted averages) 这里有一年的温度数据. 如果想计算温度的趋势,也就是局部平均值(local average),或者说移动平均值 ...
- 动量梯度下降法Momentum
转载请注明出处,原文地址 前言 动量梯度下降法是对梯度下降法的一种优化算法,该方法学习率可以选择更大的值,函数的收敛速度也更快.梯度下降法就像下面这张图,通过不断的跟新w与b,从而让函数移动到红点,但 ...
- 改善深层神经网络:超参数调整、正则化以及优化——2.6 动量梯度下降法
如果要优化成本函数,函数如下图所示,红点代表最小值的位置.假设从边缘开始梯度下降,如果进行梯度下降法的一次迭代,无论是batch还是mini-batch下降法,都会产生较大的迭代波动,这会导致花费更多 ...
- 2.6 动量梯度下降法
- 使用动量的梯度下降法
整理自吴恩达深度学习系列视频: https://mooc.study.163.com/learn/2001281003?tid=2001391036#/learn/content?type=detai ...
- 路遥知马力——Momentum动量梯度
NAG:在滑板下降过程中 也就是速度加快的时候 增大水平方向的力(累计的动量方向) 而在上升的过程中 也就是速度下降的时候 减少垂直方向的力(当前的梯度方向) 两种情况下 的最终结果 都是加大了往最优 ...
最新文章
- javaweb:session
- converter 无法查询活动linux源计算机,【VMware】Converter迁移linux系统虚拟机
- iPhone流量偷跑探秘
- masm5安装教程_汇编语言程序环境搭建masm+debug64位 win10/7
- Java-逻辑运算符、位运算符
- python进行数据分析 简书_《利用python进行数据分析》读书笔记1
- java 创建日程到期提醒_晓日程 微信日历加桌面日历,规划时间,掌握未来
- bzoj 1682: [Usaco2005 Mar]Out of Hay 干草危机(最小生成树)
- 计算机毕业设计ssm+vue基本微信小程序的购物商城系统
- 群晖用php装aria2,群晖Synology安装Aria2实现迅雷离线下载,安装IPKG
- 2011年11月-2012年10月份 历时一年的 博客回顾
- python编写脚本教程_python脚本编写教程gee引擎解密工具
- 前端项目的总结——为什么要组件化?
- 《计算机网络技术》第一章课后习题答案(全)
- 什么是API?(详细解说)
- 方队 - 启发式合并 - 主席树
- 英伟达(NVIDIA)显卡、驱动版本与cuda版本对应关系
- 红帽linux挑战赛题目,浅谈红帽linux挑战赛(三)
- 26岁的他,任中国科大特任教授!2年前已在美国顶尖大学担任博士生导师!
- 基于51单片机的八路电压表采集Proteus仿真(源码+仿真+原理图+全套资料)
热门文章
- php微服务架构设计模式,《微服务架构设计模式》读书笔记---第十一章:开发面向生产环境的微服务应用...
- Spring Boot Security
- 智慧医疗机器人的普及还需很长一段路要走!
- Spring笔记——2.使用Spring容器
- 修改eclipse启动时eclipse使用的jre
- jquery easyui 弹出对话框被activex控件遮挡问题
- 开发非代码的业务知识
- 《互联网运营智慧》十一月进展
- ubuntu+2080ti系统用anaconda 安装tensorflow
- The DVMM Lab at Columbia University