首页 > 其他分享 >对于动量法,adagrad,RMSProp,Adam的理解

对于动量法,adagrad,RMSProp,Adam的理解

时间:2023-06-08 21:47:11浏览次数:41  
标签:梯度 RMSProp 更新 st Adam adagrad 动量

对于adagrad的理解

“随机梯度下降、牛顿法、动量法、Nesterov、AdaGrad、RMSprop、Adam”,打包理解对梯度下降法的优化_哔哩哔哩_bilibili

1684506001023

AdaGrad对学习率进行了一个约束,对于经常更新的参数,我们已经积累了大量关于它的知识,不希望被单个样本影响太大,希望学习速率慢一些;对于偶尔更新的参数,我们了解的信息太少,希望能从每个偶然出现的样本身上多学一些,即学习速率大一些。这样大大提高梯度下降的鲁棒性。而该方法中开始使用二阶动量,才意味着“自适应学习率”优化算法时代的到来。

它是在冲量法的基础上优化的。st是样本的某个特征的梯度的内积再平方和再开根(这样的设计是有点像BN,这里也是起到了当上一次梯度变化特别大的时候,能在后面的轮次中对变化率起到约束的作用)在以往更新轮次上的积累。(adagrad最大的特点就是对于每一轮的更新,对不同特征做一个坐标缩放,一个样本不同的特征对应的学习率是不一样的)

下面是李宏毅对于st设计成特征的梯度的内积再平方和再开根的解释

Gradient Descent_1_哔哩哔哩_bilibili

1684506550279

下面就是一个直观的对比,st是一阶导的平方和,其实就是对样本点的一阶导的和体现出二阶导的大小。放在分母,这样近似起到一个“归一”的作用。因为这确实可以约束学习率的变化。

补充:这里可以与动量法作为对比。

1684763339960

上图所示,以2维特征为例(分成w,b只是方便表示)。

动量法影响的是“梯度”这一步,也就是只会影响模型参数更新路径的方向选择;而adagrad影响的是“学习率”这一步,也就是只会影响更新路径的步长。所以结果就是动量法可以使各个特征更新的方向不那么"震荡",adagrad可以使各个特征更新的步长变化得不那么“急剧”。而RMSProp是在adagrad的基础上,为了解决st随着训练轮次的积累,一定是变大的,导致学习率一定是变小的,就显得没有约束的问题。它引入指数加权平均,使得st受约束。而adam就是结合了RMSProp和动量法,使得参数更新不仅方向上变化不震荡,步长上变化也不急剧。所以才会说adam的泛用性强,各个模型都能用(最大的优点也是缺点)(但它不一定是最优解,这个要注意)

标签:梯度,RMSProp,更新,st,Adam,adagrad,动量
From: https://www.cnblogs.com/tourbillon/p/17467735.html

相关文章

  • 深度学习基础入门篇[三]:优化策略梯度下降算法:SGD、MBGD、Momentum、Adam、AdamW
    1.梯度下降算法(优化器)1.1原理解释如果我们定义了一个机器学习模型,比如一个三层的神经网络,那么就需要使得这个模型能够尽可能拟合所提供的训练数据。但是我们如何评价模型对于数据的拟合是否足够呢?那就需要使用相应的指标来评价它的拟合程度,所使用到的函数就称为损失函数(LossFu......
  • SDG,ADAM,LookAhead,Lion等优化器的对比介绍
    本文将介绍了最先进的深度学习优化方法,帮助神经网络训练得更快,表现得更好。有很多个不同形式的优化器,这里我们只找最基础、最常用、最有效和最新的来介绍。优化器首先,让......
  • 借助Radamsa变异数据(初探)
    Radamsa介绍Radamsa是一款测试用例生成器,通常用来测试程序对格式错误和潜在恶意输入的承受能力(对程序进行模糊测试)。它通过你的输入来返回变异后的数据。它的主要卖点是,......
  • 深度学习基础课:使用Adam算法
    大家好~我开设了“深度学习基础班”的线上课程,带领同学从0开始学习全连接和卷积神经网络,进行数学推导,并且实现可以运行的Demo程序线上课程资料:本节课录像回放加QQ群,获得......
  • 基于Julia语言实现了简单的ADAM优化算法
    基于Julia语言实现了简单的ADAM优化算法2023-01-281.首先是待优化的函数,这里使用一个二维的函数:f(x)=5x2+2y2+0.1x-5y+4将其作为函数funcfunctionfunc(x::AbstractV......
  • Adam学习20之在window下idea中使用maven进行clean
    adam-2.10-0.19在开始用idea编译有问题,主要是adam-core和adam-cli中的pom中引进的插件版本有问题:<plugin><groupId>org.scoverage</groupId><artif......
  • Adam学习22之在window下使用idea的maven编译安装记录
    1.mvninstallD:\1win7\java\jdk\bin\java-Dmaven.multiModuleProjectDirectory=D:\all\idea\adam-adam-parent_2.10-0.19.0-Dmaven.home=D:\1win7\java\apache-maven-3.3......
  • convex Adam | 快速3D配准 | Learn2Reg 2021
    微信公众号:机器学习炼丹术笔记:陈亦新参考论文:Fast3Dregistrationwithaccurateoptimisationandlittlelearningforlearn2Reg2021相关代码:​​github.com/multimoda......
  • 借助云的力量,重塑企业的现在和未来|re:Invent 2022 Adam Selipsky 主题演讲精华全收录
    2022亚马逊云科技re:Invent全球大会进入第二天,亚马逊云科技首席执行官AdamSelipsky发表了“如何借助云的力量,在未知领域抓住机遇并茁壮成长”的主题演讲。在两个小时的......
  • Madame Hu
    Mainstitutricedechinoiss'appelaitMmeHu.C'étaitunefemmed'unetrentained'annéesavecunairsérieux.Elleavaitunetaillemoyenne,unvisagerond,......