当前位置: 首页 > news >正文

深度学习基础—RMSprop算法与Adam 优化算法

1.RMSprop算法

1.1.算法流程

        除了动量梯度下降法,RMSprop算法也可以加快梯度下降,这个算法的算法流程如下:深度学习基础—动量梯度下降法icon-default.png?t=N7T8http://t.csdnimg.cn/zeGRo

1.2.算法原理

        和动量梯度下降不同的是,对dW和db的变成了平方项,同时权重更新变为了(dW/sqrt(SdW))和(db/sqrt(Sdb)),这样做的原因如下:

        如上图,损失函数是关于参数W和b的函数,因此简化为x轴表示W的优化方向,y轴表示b的优化方向。同动量梯度下降,我们希望减少y轴方向的摆动,加快x轴方向的优化,因此有SdW和Sdb。观察微分的方向,可以发现:摆动幅度过大,因此损失函数的斜率在b方向上的分量更多,也就是db更大,相反dW更小。于是SdW更小,Sdb更大。为了让W的变化幅度更大(加速x轴),b的变化幅度更小(减小y轴摆动),因此为W更新公式的dW除以一个较小的数,即sqrt(SdW),b更新公式的db除以更大的数,即sqrt(Sdb),达到削减大梯度的方向的梯度,增加小梯度方向的梯度,从而减小摆动,进而可以选择较大的学习率,加快模型的收敛。

        注意:为了防止分母为0的风险,可以给分母+ℇ,即sqrt(SdW)+ℇ,ℇ通常取10^(-8),同理sqrt(Sdb)也是。

2.Adam 优化算法

        Adam 优化算法是RMSprop算法和动量梯度下降法的结合版,该算法性能优秀,已被证明能适用多种不同结构的神经网络。该算法的算法流程如下:

        本算法有很多超参数:学习率a,动量梯度下降法参数b1,RMSprop算法参数b2,ℇ。对于这些参数,默认b1=0.9,b2=0.999,ℇ=10^(-8)。一般不需要变动,但是学习率需要多次调试找到合适值。

http://www.lryc.cn/news/427893.html

相关文章:

  • 单片机原理及技术(六)—— 中断系统的工作原理
  • Angular路由使用
  • 【JVM】深入理解类加载机制(一)
  • 区块链浏览器需求整理
  • Laravel 表单验证功能重定向判断
  • MATLAB口罩检测系统
  • LeetCode 第三十一天 2024.8.18
  • Linux驱动学习之点灯(一)
  • 从HTTP到HTTPS:SSL加密如何重塑互联网安全格局
  • QT网络编程: 实现UDP通讯设置
  • 机器学习第十一章--特征选择与稀疏学习
  • dm 到 dm 的 HS 同步部署
  • ShardingSphere、雪花算法、分布式id生成器CosID概述
  • hive学习(四)
  • UniAD_面向规划的自动驾驶
  • 《现代情报》
  • 2024年最新上榜的文件加密管理软件
  • Matplotlib库学习之scatter(模块)
  • 脑网络相似性:方法与应用
  • 【JavaEE】深入MyBatis:动态SQL操作与实战项目实现指南
  • Linux 实操-权限管理:深入了解rwx的作用
  • Linux 系统编程 --- day3
  • centos从home分区分配空间到根分区
  • 设计模式实战:即时通讯应用的设计与实现
  • 白骑士的C#教学实战项目篇 4.3 Web开发
  • 【数据分析】(交互) 延迟互信息(熵、概率密度、高斯核、带宽估计)
  • html转vue项目
  • .NET系列 定时器
  • 【Golang】火焰图空白部分是什么?
  • Web框架 --- 解析Web请求 [FromBody] [FromQuery] [FromRoute] [FromHeader]