【转+整理】SDG,动量,Adam优化算法

参考博客:深度学习最常用的算法一文看懂各种神经网络优化算法:从梯度下降到Adam方法

 

SDG

1、定义:

        随机梯度下降(Stochastic gradient descent,SGD)对每个训练样本进行参数更新,每次执行都进行一次更新,且执行速度更快。

2、公式:

        θ=θ−η⋅∇(θ) × J(θ;x(i);y(i)),其中 η 是学习率,x(i) 和 y(i) 为训练样本。

3、评价:

        每个训练样本中高方差的参数更新会导致损失函数大幅波动,因此我们可能无法获得给出损失函数的最小值。
        一般使用mini-batch的方法改善:对每个批次中的n个训练样本只执行一次更新。

 

动量 momentum

1、定义:

        通过优化相关方向的训练和弱化无关方向的振荡,来加速SGD训练。这里的动量与经典物理学中的动量是一致的,就像从山上投出一个球,在下落过程中收集动量,小球的速度不断增加。

2、公式:

       V(t)=γV(t−1)+η∇(θ).J(θ),动量项γ通常设定为0.9
       θ=θ−V(t)

3、评价:

        当其梯度指向实际移动方向时,动量项γ增大;当梯度与实际移动方向相反时,γ减小。这种方式意味着动量项只对相关样本进行参数更新,减少了不必要的参数更新,从而得到更快且稳定的收敛,也减少了振荡过程。

 

ADAM:自适应时刻估计方法(Adaptive Moment Estimation)

1、定义

         可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重

         适用于解决大噪声和稀疏梯度的非稳态(non-stationary)问题

2、算法流程

        m(t)为梯度的第一时刻平均值,v(t)为梯度的第二时刻非中心方差值。

      1)确定参数α、β1、β2 和随机目标函数 f(θ) 
      2)初始化参数向量、一阶矩向量m0、二阶矩向量v0和时间步 t :
      3)当参数θ没有收敛时,循环迭代地更新各个部分。即:
         ·时间步 t加1
         ·更新目标函数在该时间步上对参数θ所求的梯度 gt 
         ·更新偏差的一阶矩估计 mt (根据过往已计算的参数梯度来修改学习率) 和二阶原始矩估计 vt 
         ·计算偏差修正的一阶矩估计和偏差修正的二阶矩估计
         ·更新模型的参数θ。

3、评价

        其收敛速度更快,学习效果更为有效,而且可以纠正其他优化技术中存在的问题,如学习率消失、收敛过慢或是高方差的参数更新导致损失函数波动较大等问题。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
sdg优化器(Stochastic Gradient Descent)和Adam优化器是常用的深度学习模型训中的优化算法。它们都有各自的优点和缺点。 SDG优化器的优点包括: 1. 简单易实现:SDG算法是最基础的优化算法之一,实现较为简单。 2. 内存占用较小:SDG算法只需保存当前的模型参数和梯度信息,对内存的需求较低。 3. 可适用于大规模数据集:由于只使用一小部分样本进行参数更新,SDG算法在处理大规模数据集时效率较高。 SDG优化器的缺点包括: 1. 收敛速度慢:SDG算法在训练初期收敛速度较慢,可能需要更多的迭代次数才能达到较好的效果。 2. 容易陷入局部最优点:由于只使用一小部分样本进行参数更新,SDG算法容易陷入局部最优点而无法找到全局最优解。 Adam优化器的优点包括: 1. 自适应学习率:Adam算法可以根据每个参数的历史梯度自适应地调整学习率,从而更好地适应不同参数的更新需求。 2. 快速收敛:Adam算法在训练初期可以快速收敛,尤其对于大规模数据集和复杂模型的训练效果较好。 3. 对稀疏梯度友好:Adam算法对稀疏梯度的处理较好,能够有效地处理包含大量零梯度的情况。 Adam优化器的缺点包括: 1. 内存占用较大:Adam算法需要保存每个参数的历史梯度信息,对内存的需求较高。 2. 对超参数敏感:Adam算法有多个超参数需要调整,不同的超参数设置可能对结果产生较大影响,需要进行调优。 综上所述,SDG优化器适用于大规模数据集和简单模型的训练,而Adam优化器适用于复杂模型和快速收敛的需求。具体选择哪种优化器取决于具体的问题和数据集特点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值