栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

通俗解释EMA

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

通俗解释EMA

一、概念

    EMA,全称是指数移动平均,是一种给予近期数据更高权重的平均方法,详细的介绍可以参考:深度学习: 指数加权平均。

二、在哪见过

    深度学习中常见的Adam、RMSProp和Momentum等优化算法内部都使用了EMA,由于使用了EMA这些算法常被称为自适应优化算法,可以随着训练过程的推移,自适应的调整参数的优化方向和步长,可以参考:深度学习中的Momentum算法原理。

三、提高训练稳定性

    假设有一个模型参数  ,EMA在优化器层面是一种局部时间窗口的加权平均,它只能通过对过去一个小的时间窗口内的梯度做加权并更新模型参数 ,如下图所示的三个矩形框所示,每次反向传播之后,参数  的增量是一个加权平均后的梯度,模型参数每次都会更新(设g1,g2,g3是三次迭代通过EMA计算得到的梯度,每个箭头表示进行一次梯度更新)。

    如果进一步对g1,g2和g3进行一次EMA,并将EMA后的结果对参数  进行更新,那么参数将会综合多个时间步的梯度信息,相当于进行了细粒度的平均,多个时间步的梯度综合了更加可靠的信息,模型训练的相应也会更加稳定。

四、参考
  1. 【炼丹技巧】指数移动平均(EMA)的原理及PyTorch实现
  2.   EMA(指数移动平均)及其深度学习应用
  3.   深度学习中的Momentum算法原理
  4.   深度学习: 指数加权平均

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/982449.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号