指数滑动平均(Exponential Moving Average)
指数滑动平均也叫权重移动平均(Weighted Moving Average),是一种给予近期数据更高权重的平均方法。
假设有 n n n个权重数据: [ θ 1 , θ 2 , ⋯ , θ n ] [\theta_1,\theta_2,\cdots,\theta_n] [θ1,θ2,⋯,θn],EMA的计算公式:
v t = β v t − 1 + ( 1 − β ) θ t (1) v_t=\beta v_{t-1}+(1-\beta)\theta_t\tag{1} vt=βvt−1+(1−β)θt(1)
其中 v t v_t vt称为影子权重, v 0 = 0 v_0=0 v0=0。
当 β \beta β越大时,滑动平均得到的值越和 θ \theta θ的历史值相关。如果 β = 0.9 \beta=0.9 β=0.9,则大致等于过去 10 个 θ θ θ 值的平均;如果 β = 0.99 \beta=0.99 β=0.99,则大致等于过去 100 个 θ \theta θ值的平均。EMA可以近似看作过去 1 / ( 1 − β ) 1/(1-\beta) 1/(1−β)个时刻 v v v值的平均。过去 n n n时刻的平均为:
v t = ( n − 1 ) v t − 1 + θ t n = n − 1 n v t − 1 + 1 n θ t (2) v_t=\frac{(n-1)v_{t-1}+\theta_t}{n}=\frac{n-1}{n}v_{t-1}+\frac{1}{n}\theta_t\tag{2} vt=n(n−1)vt−1+θt=nn−1vt−1+n1θt(2)
类比可得 β = n − 1 n \beta=\cfrac{n-1}{n} β=nn−1
EMA计算,会将过去 1 / ( 1 − β ) 1/(1-\beta) 1/(1−β)个时刻前的数据衰减到 1 e \cfrac{1}{e} e1 的比例:

指数滑动平均(EMA)是一种给予近期数据更高权重的平均方法,常用于模型参数的平滑更新。通过设置合适的衰减因子β,EMA可以在测试时提供更稳定的模型表现,类似于学习率衰减。在深度学习中,特别是在mini-batch训练中,EMA能减少参数更新的噪声,提高模型的鲁棒性。理解并正确应用EMA,能够优化模型的训练效果。
最低0.47元/天 解锁文章
3868

被折叠的 条评论
为什么被折叠?



