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

本文的内容来自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的温度。而使用指数加权平均来计算局部平均值的时候,可以节省大量的空间,你只需要保存前一个加权平均值。相对于直接计算平均值而言,它的精确度没有那么高。

三、偏差修正

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

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

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

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

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

修炼之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值