本文是Deep Learning 之 最优化方法系列文章的Momentum(动量)方法。主要参考Deep Learning 一书。

整个优化系列文章列表:

Deep Learning 之 最优化方法

Deep Learning 最优化方法之SGD

Deep Learning 最优化方法之Momentum(动量)

Deep Learning 最优化方法之Nesterov(牛顿动量)

Deep Learning 最优化方法之AdaGrad

Deep Learning 最优化方法之RMSProp

Deep Learning 最优化方法之Adam

先上结论:

1.动量方法主要是为了解决Hessian矩阵病态条件问题(直观上讲就是梯度高度敏感于参数空间的某些方向)的。

2.加速学习

3.一般将参数设为0.5,0.9,或者0.99,分别表示最大速度2倍,10倍,100倍于SGD的算法。

4.通过速度v,来积累了之间梯度指数级衰减的平均,并且继续延该方向移动:

再看看算法:

动量算法直观效果解释:

  如图所示,红色为SGD+Momentum。黑色为SGD。可以看到黑色为典型Hessian矩阵病态的情况,相当于大幅度的徘徊着向最低点前进。
  而由于动量积攒了历史的梯度,如点P前一刻的梯度与当前的梯度方向几乎相反。因此原本在P点原本要大幅徘徊的梯度,主要受到前一时刻的影响,而导致在当前时刻的梯度幅度减小。
  直观上讲就是,要是当前时刻的梯度与历史时刻梯度方向相似,这种趋势在当前时刻则会加强;要是不同,则当前时刻的梯度方向减弱。

从另一个角度讲:

  要是当前时刻的梯度与历史时刻梯度方向相似,这种趋势在当前时刻则会加强;要是不同,则当前时刻的梯度方向减弱。
  假设每个时刻的梯度g总是类似,那么由我们可以直观的看到每次的步长为:

即当设为0.5,0.9,或者0.99,分别表示最大速度2倍,10倍,100倍于SGD的算法。

Deep Learning 最优化方法之Momentum(动量)相关推荐

  1. Deep Learning 最优化方法之RMSProp

    原文地址:http://blog.csdn.net/bvl10101111/article/details/72616378 本文是Deep Learning 之 最优化方法系列文章的RMSProp方 ...

  2. Deep Learning 最优化方法

    链接:https://blog.csdn.net/BVL10101111/article/details/72615961

  3. 笔记 | 吴恩达Coursera Deep Learning学习笔记

    向AI转型的程序员都关注了这个号☝☝☝ 作者:Lisa Song 微软总部云智能高级数据科学家,现居西雅图.具有多年机器学习和深度学习的应用经验,熟悉各种业务场景下机器学习和人工智能产品的需求分析.架 ...

  4. Deep Learning论文笔记之(三)单层非监督学习网络分析

    Deep Learning论文笔记之(三)单层非监督学习网络分析 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文,但老感 ...

  5. Deep Learning论文笔记之(二)Sparse Filtering稀疏滤波

    Deep Learning论文笔记之(二)Sparse Filtering稀疏滤波 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看 ...

  6. 【超分辨率实验】Matlab-使用深度学习的单图像超分辨率(Single Image Super-Resolution Using Deep Learning)

    [超分辨率实验]Matlab-使用深度学习的单图像超分辨率(Single Image Super-Resolution Using Deep Learning) 此示例演示如何训练非常深的超分辨率 V ...

  7. 《Deep Learning for Computer Vision withPython》阅读笔记-PractitionerBundle(第9 - 11章)

    9.使用HDF5和大数据集 到目前为止,在本书中,我们只使用了能够装入机器主存储器的数据集.对于小数据集来说,这是一个合理的假设--我们只需加载每一个单独的图像,对其进行预处理,并允许其通过我们的网络 ...

  8. 速看!deep learning(rnn、cnn)调参的经验

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|视觉算法 话说三人行,必有我师焉.有哪些deep lea ...

  9. Deep Learning for Remote Sensing Data

    Deep Learning for Remote Sensing Data_A technical tutorial on the state of the art 一,Abstract 二,ADVA ...

  10. 《Deep Learning for Computer Vision with Python》StarterBundle-总结概述

    <Deep Learning for Computer Vision withPython> StarterBundle总结概述 //2022.2.4日下午16:18开始总结 第2章-什么 ...

最新文章

  1. 「图文直播」CSDN 二十年,AI 赋能全新出发
  2. 一分钟读懂互联网广告竞价策略GFP+GSP+VCG
  3. java jar 源码乱码,java使用jar包时出现乱码的解决方法
  4. java 调用r语言包传参数_Java与R语言的配置,调用
  5. 【Maven】import maven依赖安装失败——暂时玄学解决
  6. 启动mongodb服务时报错100
  7. spring3.1.1与commons-dbcp1.2的冲突?
  8. 计算机系统文字图片以啥子存在,电脑如何识别图片中文字的字体|电脑通过图片识别字体的方法...
  9. 在windows 2008 R2上无法运行vc 2015的程序,显示缺少api-ms-win-crt-string-|1-1-0.dll的解决
  10. Java lambda表达式实现List转Map
  11. excel固定一行不滚动怎么取消
  12. 简单易懂的现代魔法——Play Framework攻略3
  13. 浅析重复线性渐变repeating-linear-gradient如何使用
  14. 仿网易云音乐的YY音乐微信小程序源码
  15. TOGAF(企业架构)
  16. 督办管理系统项目总结
  17. 苹果账号 协议、税务和银行业务填写教程
  18. React写响应式官方网站-媒体查询
  19. android手机图标 足球球星,盘点六大世界足坛球星logo,贝尔艺术感十足
  20. 如何解决Vmware虚拟机出现There is no more space for virtual disk… 虚拟机消息的问题

热门文章

  1. 买手机是不是主要看处理器?
  2. python 实现微信自动回复(自动聊天)
  3. 打砖块c语言算法,C语言打砖块游戏的原理!哪位高手指点一下,程序有!
  4. 【苹果家庭群发推】Metal performance shader软件安装框架
  5. 51单片机码表c语言编程,用AT89S51单片机制作的多功能自行车速度里程表
  6. VulnHub渗透测试实战靶场 - SICKOS: 1.1
  7. KTL 一个支持C++14编辑公式的K线技术工具平台 - 第五版,支持sqlite3,全新sqlite3zz语法超简单使用sqlite3; 添加方差等统计函数。
  8. 解决NIVIDIA控制面板开启不了的问题
  9. 游戏排行榜实现mysql_游戏中百万用户排行设计与实现
  10. 管理计算机(域)的内置账户名称,管理active directory中用户和计算机账户