本文的内容来自deeplearning.ai

一、什么是指数加权平均

指数加权平均(exponentially weighted averges)也叫指数加权移动平均,通过它可以来计算局部的平均值,来描述数值的变化趋势,下面通过一个温度的例子来详细介绍一下。

优化算法之指数加权平均详解

上面的图,是一个天与温度的变化关系,其中横轴表示的是一年中的第几天,纵轴表示的是该天的温度,1月份和12月份的温度相对于年中(6月、7月)的温度要低一些。

下面我们通过温度的局部平均值(移动平均值)来描述温度的变化趋势,通过下面的公式来计算平均值

优化算法之指数加权平均详解

在计算局部温度平均值的时候我们使用的是β等于0.9,计算出来的温度趋势,如下图的红色曲线。

优化算法之指数加权平均详解

优化算法之指数加权平均详解

β大于0.9(为0.98)的时候,局部温度平均值如下图所示

优化算法之指数加权平均详解

其中红线表示β为0.9时候的温度的加权平均值,绿线表示β为0.98时候的温度加权平均值,绿线相对于红线来说,更加平稳、稳定。相对于红线来说缺点就是,它向右平移了,产生了延迟,因为当β为0.98时,相当于平均了1/(1-0.98)=50天的温度,而β为0.9只是平均了10天的温度。

β小于0.9(为0.5)的时候,局部温度平均值如下图所示

优化算法之指数加权平均详解

其中黄线表示的是,当β为0.5时的加权温度平均,相对于红线来说,它抖动的更加厉害,因为它只平均了2天的温度,所以对于温度的趋势反馈能够更加的及时,更快的适应温度的变化,同时它也会带来更多的噪声(平均的天数太少)。

注意:在上面的不同β所对应的加权温度曲线中,当β为0.9时,表现最好。

二、指数加权平均的作用

在介绍指数加权平均的时候,介绍过了如何通过加权平均来计算局部温度的平均值,下面将式子展开

优化算法之指数加权平均详解

最后可以得到

优化算法之指数加权平均详解

其实上面的式子就是一个指数加权平均。

1、在上面为什么说当β为0.9时,只是平均了10天的温度。

优化算法之指数加权平均详解

如果你想要计算10天局部温度的平均值,你需要保存最近10的温度。而使用指数加权平均来计算局部平均值的时候,可以节省大量的空间,你只需要保存前一个加权平均值。相对于直接计算平均值而言,它的精确度没有那么高。

三、偏差修正

偏差修正的主要目的是为了提高指数加权平均的精确度,主要是针对前期的加权平均值的计算精度。

下面通过一个例子来说明一下

优化算法之指数加权平均详解

通过计算可以发现,前期的指数加权平均存在较大误差,下面通过偏差修正来减少前期指数加权平均的误差。

优化算法之指数加权平均详解

注意:如果你对于前期的局部平均值的精度没有要求,可以不用使用偏差修正,偏差修正主要是针对前期的局部平均值的误差。

相关文章:

  • 2021-04-23
  • 2021-04-25
  • 2021-08-30
  • 2021-11-06
  • 2021-07-04
  • 2021-08-20
猜你喜欢
  • 2021-07-07
  • 2021-06-11
  • 2021-06-30
  • 2021-10-26
相关资源
相似解决方案