时间序列之加权移动平均

Posted 大数据专家傅一航

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了时间序列之加权移动平均相关的知识,希望对你有一定的参考价值。

前面介绍了一次移动平均和二次移动平均,其实,不管是一次还是二次,都是可以算是加权移动平均的特殊情况。

加权移动平均


 

加权移动平均(WeightedMoving Average),取前N期的加权平均值作为预测值,而且前N期的权重不一定相等。


 


计算公式


加权移动平均的计算公式如下:

其中为权重系数,其总和应该为1

由公式可知,一次移动平均其实是加权移动平均的特殊情况。

 

加权移动平均有两个重要的问题考虑:

1)  如何选择合适的期数N。这个选择原则与一次移动平均相同,在此不再赘述。

2)  如何确定各期最合适的权重系数。一般情况下,遵循时间越近权重越大的原则。

 


适用场景


和一次移动平均一样,也只能够预测下一期的序列值,适用于变化不大的序列,实现修匀(或平滑)原有序列,以便找到序列的长期趋势。


 


权重系数的确定


在加权移动平均中,期数N的选择和权重系数的选择都很重要。

在实际应用中,可以采用规划求解来找到最优的权重系数,以使得MAPESSE最小。 


 


操作实战


如下,某公司收集了每年的煤炭产量,现要预测一下2008年的煤炭产量。

操作步骤如下:

1)  假定间隔为N=3,以及各期权重abc的初始值,且权重和为1(即在G2输入“=Sum(D2:F2)”)。

2)  计算加权移动平均。在C7单元格输入公式”=$D$2*B4+$E$2*B5+$F$2*B6”,注意平滑系数要采用绝对引用,然后公式向下拉。

3)  计算误差平方。在D7单元格输入公式“=(C7-B7)^2”,公式向下拉。

4) 计算APEMAPE。在E7单元格输入“=ABS(C7-B7)/B7”,公式向下拉;在G9单元格输入“=AVERAGE(E7:E51)”,得到MAPE

 

时间序列之加权移动平均

8加权移动平均计算

 

5)  下面采用规划求解得到权重系数的最优值(见以下规划求解图)。

 

时间序列之加权移动平均

9规划求解求最佳权重系数

 

得到在N=3时的规划求解得到最优权重系数:

时间序列之加权移动平均

 

仔细观察权重系统,发现系数a=0,说明前第3期的数据对于预测几乎没有价值,因此考虑优化,改取N=2即可。

6) N=2,重新如上计算,规划求解,得到最优的加权移动平均结果。

7) 评估预测值的准确度MAPE3.99%,满足要求。

8) 进行预测。公式向下拉到C52单元格,得到2008年的煤炭产量的预测值。

 

时间序列之加权移动平均

10加权移动平均计算(优化后)

 


 


▽ 戳此看往期文章

时间序列:

01 

02 

03 

04 


  事物发展都是有规律的

 数据解读能力培养

探索事物规律和特征

 

 选择-训练-评估-优化-应用


 系统类+应用类

 大数据职位的发展通道

 探索客观事物的工具

 认知事物的新思维

 尊重事实的数据文化


 

 

●文章作者简介



以上是关于时间序列之加权移动平均的主要内容,如果未能解决你的问题,请参考以下文章

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

计算时间加权移动平均线

使用 pandas Rolling 方法计算加权移动平均值

简单移动平均线加权移动平均线指数平滑移动平均

NumPy 版本的“指数加权移动平均线”,相当于 pandas.ewm().mean()

非正常情况下的移动加权平均算法