指数加权平均

本文探讨了指数加权平均的概念,通过对比不同β值对温度数据的影响,解释了β如何控制平均的天数。β参数越大,平均的天数越多,数据趋势更平缓;反之,β值小则平均天数少,数据抖动更明显。同时,针对V0初始化为0导致的偏差,提出了偏差修正方法,以确保模型的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

指数加权平均

1 加权平均

所谓加权平均就是在平均的基础上给参与平均的各项增加权重,如现有一组数据X[1…n]
普 通 平 均 m = x 1 + x 2 + . . . + x n n 加 权 平 均 m = w 1 x 1 + w 2 x 2 + . . . + w n x n n 其 中 w [ 1.. n ] 为 权 重 , 且 ∑ i = 1 n w i = 1 普通平均 m = \frac{x_1+x_2+...+x_n}{n}\\ 加权平均 m = \frac{w_1x_1+w_2x_2+...+w_nx_n}{n}\\ 其中w_{[1..n]}为权重,且\sum_{i=1}^{n}w_i=1 m=nx1+x2+...+xnm=nw1x1+w2x2+...+wnxnw[1..n]i=1nwi=1
由此引出指数加权平均

2 指数加权平均

2.1 引出问题

假设有一组天气数据是这样分布的

image-20210702211016555

我们需要描述温度的变化,即尽可能拟合这些散列点,这时就要用到指数加权平均

假设θt表示第t天的温度,引入新的变量v
V 0 = 0 V 1 = β V 0 + ( 1 − β ) θ 1 V 2 = β V 1 + ( 1 − β ) θ 2 . . . V t = β V t − 1 + ( 1 − β ) θ t V_0 = 0\\ V_1 = \beta V_0 + (1-\beta )\theta_1\\ V_2 = \beta V_1 + (1-\beta )\theta_2\\ .\\ .\\ .\\ V_t = \beta V_{t-1} + (1-\beta )\theta_t V0=0V1=βV0+(1β)θ1V2=βV1+(1β)θ2...Vt=βVt1+(1β)θt
于是乎,假若给β赋值,则会产生一组新的值V

β = 0.9时

image-20210702212053923

β = 0.98时

image-20210702212249702

β = 0.5时

image-20210702212345378

那么β为什么会产生这种效果呢?β又有什么意义?

2.2 β参数

首先,β的值可以控制近期平均的天数,当β=0.9时
V 0 = 0 V 1 = 0.9 ∗ V 0 + 0.1 ∗ θ 1 = 0.1 ∗ θ 1 V 2 = 0.9 ∗ ( 0.9 ∗ V 0 + 0.1 ∗ θ 1 ) + 0.1 ∗ θ 2 = 0.9 ∗ 0.1 ∗ θ 1 + 0.1 ∗ θ 2 V 3 = ( 0.9 ) 2 ∗ 0.1 ∗ θ 1 + 0.9 ∗ 0.1 ∗ θ 2 + 0.1 ∗ θ 3 . . . V t = ( 0.9 ) t − 1 ∗ 0.1 ∗ θ 1 + ( 0.9 ) t − 2 ∗ 0.1 ∗ θ 2 + . . . + 0.1 ∗ θ t V_0 = 0\\ V_1 = 0.9*V_0 + 0.1* \theta_1=0.1* \theta_1\\ V_2 = 0.9*(0.9*V_0 + 0.1* \theta_1) + 0.1*\theta_2\\=0.9*0.1*\theta_1+0.1*\theta_2\\ V_3 = (0.9)^2*0.1*\theta_1+0.9*0.1*\theta_2 + 0.1*\theta_3 .\\ .\\ .\\ V_t = (0.9)^{t-1}*0.1*\theta_1 + (0.9)^{t-2}*0.1*\theta_2+...+0.1*\theta_t V0=0V1=0.9V0+0.1θ1=0.1θ1V2=0.9(0.9V0+0.1θ1)+0.1θ2=0.90.1θ1+0.1θ2V3=(0.9)20.1θ1+0.90.1θ2+0.1θ3...Vt=(0.9)t10.1θ1+(0.9)t20.1θ2+...+0.1θt
可以看到,随着t的增大,与θt距离越远的θ,对Vt的影响越小,如:θ0在经历若干次运算后,已经无限趋近于0,对θt的影响很小。

于是,我们可以从中看到参数β的含义,当β越大时,附近能对Vt产生影响的θ越多,换到题目中的意思就是能够平均的天数越多

反之,当β值越小,能对Vt产生影响的θ越少,即Vt代表的平均天数越少

有规定:
ϵ = 1 − β 当 ( 1 − ϵ ) 1 ϵ = 1 e 时 , 我 们 称 其 平 均 了 1 ϵ 天 如 β = 0.9 , 则 ( 0.1 ) 10 = 1 e , 所 以 β = 0.9 时 平 均 了 近 期 10 天 的 数 据 所 以 β = 0.98 , 平 均 了 约 50 天 的 数 据 β = 0.5 , 平 均 了 2 天 的 数 据 \epsilon = 1-\beta\\ 当(1-\epsilon)^{\frac{1}{\epsilon}} = \frac{1}{e}时,我们称其平均了\frac{1}{\epsilon}天\\ 如\beta = 0.9,则(0.1)^{10} = \frac{1}{e},所以\beta=0.9时平均了近期10天的数据\\ 所以\beta=0.98,平均了约50天的数据\\ \beta=0.5,平均了2天的数据\\ ϵ=1β(1ϵ)ϵ1=e1ϵ1β=0.9,(0.1)10=e1,β=0.910β=0.98,50β=0.5,2
由此,我们可以明白,为什么β越小,抖动越厉害,是因为平均的数据少

而β越大,越平缓,但是与真实数据的偏离越大,因为平均的数据多。

2.3 偏差修正

还有一个问题,就是V0=0,而V1 = 0.1 * θ1,V2 = 0.1 * θ1 + 0.1 * θ2

这样导致v1和v2的值与实际值偏差很大,要对其进行修正,我们可以利用 β值的特点
V t = V t 1 − β t = β V t − 1 + ( 1 − β ) θ t 1 − β t V_t = \frac{V_t}{1-\beta^t} = \frac{\beta V_{t-1} + (1-\beta )\theta_t}{1-\beta^t} Vt=1βtVt=1βtβVt1+(1β)θt
,这样,当t=1或2或很小的值时,会对整体数据进行放大,使得V1=θ1
随 着 t 的 增 大 1 − β t 趋 向 于 1 公 式 又 近 似 于 β V t − 1 + ( 1 − β ) θ t 随着t的增大\\ 1-\beta^t 趋向于1\\ 公式又近似于\beta V_{t-1} + (1-\beta )\theta_t t1βt1βVt1+(1β)θt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值