当前位置:网站首页>paddlepaddle 20 指数移动平均(ExponentialMovingAverage,EMA)的实现与使用(支持静态图与动态图)
paddlepaddle 20 指数移动平均(ExponentialMovingAverage,EMA)的实现与使用(支持静态图与动态图)
2022-06-27 01:59:00 【万里鹏程转瞬至】
指数移动平均(ExponentialMovingAverage,EMA)是以指数式递减加权的移动平均,每一次更新都对上一次保留的权重按照decay进行衰减。其计算方式为pram_n'=(pram_n'-1)*decay+(1-decay)*pram_n,其中pram_n'为EMA保存的在n步时的权重,pram_n为算法正常计算得出的权重。
EMA是一个不断迭代的运算方式,在第n步时,第k次更新参数被衰减了decay^(n-k)倍。EMA本质就是一种学习率衰减的策略,具体可见博客(https://www.cnblogs.com/sddai/p/14646581.html)中的推导,此外,该作者还实现了pytorch版的EMA。
在paddle2中EMA可分为静态图版和动态图版,静态图版官方已经在paddle2.0中进行实现,下面会进行简单介绍。动态图版需要自行实现,将在本文的第二节实现。在训练模型一开始ema就生效,会使ema_model在测试集的表现极差,因为这个阶段的模型更新较少,其权重的大部分都是刚刚初始化的。建议在训练一定阶段后启用ema。
1、静态图版EMA
官网的介绍 https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/static/ExponentialMovingAverage_cn.html#exponentialmovingaverage
导入 只能用于静态图
from paddle.static import ExponentialMovingAverage初始化 </
边栏推荐
- Svg drag dress Kitty Cat
- [the path of system analyst] Chapter 6: duplicate demand engineering (case paper)
- Oracle/PLSQL: Length Function
- SQLite Reader 插件测试SQLite语法
- Oracle/PLSQL: Ltrim Function
- Oracle/PLSQL: Replace Function
- I encountered some problems when connecting to the database. How can I solve them?
- 别被洗脑了,这才是90%中国人的工资真相
- Shell script series (1) getting started
- 我靠副业一个月挣了3W块:你看不起的行业,真的很挣钱!
猜你喜欢

STM32入门介绍

lottie. JS creative switch button animal head

H5 liquid animation JS special effect code

Pointer compression for JVM

Look! In June, 2022, the programming language ranking list was released! The first place is awesome

Detailed explanation of ThreadLocal

C语言--职工信息管理系统设计

WiFi-IoT 鸿蒙开发套件样例开发

Flink學習2:應用場景

What if asreml-r does not converge in operation?
随机推荐
Oracle/PLSQL: Ltrim Function
svg拖拽装扮Kitty猫
Flink学习5:工作原理
memcached基础13
D's appendto packaging
Hot discussion: what are you doing for a meaningless job with a monthly salary of 18000?
Memcached basics 14
What if asreml-r does not converge in operation?
Oracle/PLSQL: Translate Function
1.44 inch TFT-LCD display screen mold taking tutorial
Reading a book in idea is too much!
Addition, deletion, modification and query of ymal file
Oracle/PLSQL: From_Tz function
Precautions for using sneakemake
Nokov motion capture system makes it possible for multi field cooperative UAV to build independently
Uninstallation of Dameng database
Why divide the training set and the test set before normalization?
jwt的认证流程和使用案例
Oracle/PLSQL: Cast Function
Oracle/PLSQL: HexToRaw Function