(1)自适应过滤法是一种时间序列预测技术,是移动平均法、指数平滑法的通项公式。
(2)与移动平均法和指数平滑法不同的是,自适应过滤法中的权数 ϕ i \phi_i ϕi是根据预测误差 e t e_t et的大小不断调整修改而获得的最佳权数,而移动平均和指数平滑的权数是固定不变的。
设 x 1 , x 2 , x 3 , . . . , x t x_1,x_2,x_3,...,x_t x1,x2,x3,...,xt为某一时间序列,则一般预测模型通项为:
x ^ t + 1 = ϕ 1 x t + ϕ 2 x t − 1 + . . . + ϕ p x t − p + 1 \hat x_{t+1}=\phi_1x_t+\phi_2x_{t-1}+...+\phi_px_{t-p+1} x^t+1=ϕ1xt+ϕ2xt−1+...+ϕpxt−p+1
其中, x ^ t + 1 \hat x_{t+1} x^t+1是 t + 1 t+1 t+1的预测值, p p p是权数的个数。
计算方法
ϕ i ′ = ϕ i + 2 k e t + 1 x t − i + 1 \phi_i^{'}=\phi_i+2ke_{t+1}x_{t-i+1} ϕi′=ϕi+2ket+1xt−i+1
其中, ϕ i ′ \phi_i^{'} ϕi′是调整后第 i i i期的权数, ϕ i \phi_i ϕi是调整前第 i i i期的权数, k k k是调整系数,即学习常数, e t + 1 = x t + 1 − x ^ t + 1 e_{t+1}=x_{t+1}-\hat x_{t+1} et+1=xt+1−x^t+1是 t + 1 t+1 t+1期的预测误差, x t − i + 1 x_{t-i+1} xt−i+1是 t − i + 1 t-i+1 t−i+1的观测值。
学习常数 k k k的取值影响权数调整效果、最终预测效果。
为了使权数迅速逼近最佳值, k k k取值应该尽量接近于 1 1 1。但是, k k k值过大会使误差序列发散,从而使最终的均方误差有所增大,影响预测效果。
按照上述权数调整策略的自适应过滤法收敛的的充分条件是:
k < 1 [ ∑ i = 1 p x i 2 ] m a x k<\frac{1}{[\sum_{i=1}^{p}x_i^2]_ {max} } k<[∑i=1pxi2]max1
期数 | t=1 | t=2 | t=3 | t=4 | t=5 |
---|---|---|---|---|---|
年份 | 2015 | 2016 | 2017 | 2018 | 2019 |
销售额 | 43 | 45 | 48 | 50 | 53 |
自适应过滤法预测2020年、2021年的销售额。
观察到该数据波动不大,基本呈现趋势,所以不需要进行标准化
实际应用中, p p p的取值有严格的规范, p p p越大,达到最佳权数迭代次数越多,这里为了叙述过程较为清晰, p p p取 2 2 2。
因为 p p p取值为 2 2 2,所以 ϕ 1 = ϕ 2 = 1 p = 1 2 \phi_1=\phi_2=\frac{1}{p}=\frac{1}{2} ϕ1=ϕ2=p1=21
k < 1 [ ∑ i = 1 p x i 2 ] m a x = 1 5 0 2 + 5 3 2 = 0.0002 k<\frac{1}{[\sum_{i=1}^{p}x_i^2]_ {max} }=\frac{1}{50^2+53^2}=0.0002 k<[∑i=1pxi2]max1=502+5321=0.0002
根据表中数据,计算 t = 2 t=2 t=2时, t + 1 t+1 t+1的预测值:
x ^ t + 1 = x ^ 3 = ϕ 1 x 2 + ϕ 2 x 1 = 0.5 ∗ 45 + 0.5 ∗ 43 = 44 \hat x_{t+1}=\hat x_3=\phi_1x_2+\phi_2x_1=0.5*45+0.5*43=44 x^t+1=x^3=ϕ1x2+ϕ2x1=0.5∗45+0.5∗43=44
e t + 1 = e 3 = x 3 − x ^ 3 = 48 − 44 = 4 e_{t+1}=e_3=x_3-\hat x_3=48-44=4 et+1=e3=x3−x^3=48−44=4
根据权数调整策略 ϕ i ′ = ϕ i + 2 k e t + 1 x t − i + 1 \phi_i^{'}=\phi_i+2ke_{t+1}x_{t-i+1} ϕi′=ϕi+2ket+1xt−i+1调整权数:
ϕ 1 ′ = 0.5 + 2 ∗ 0.0002 ∗ 4 ∗ 45 = 0.572 \phi_1^{'}=0.5+2*0.0002*4*45=0.572 ϕ1′=0.5+2∗0.0002∗4∗45=0.572
ϕ 2 ′ = 0.5 + 2 ∗ 0.0002 ∗ 4 ∗ 43 = 0.569 \phi_2^{'}=0.5+2*0.0002*4*43=0.569 ϕ2′=0.5+2∗0.0002∗4∗43=0.569
(1)不断用新的权重迭代计算,直到预测误差降为0,系数调整结束。
(2)一般数据不是随机的,所以预测误差无法降至0,此时使用衡量标准均方误差 M S E MSE MSE
M S E = ∑ t = p n ( x t + 1 − x ^ t + 1 ) 2 n − p MSE=\frac{\sum_{t=p}^{n}({x_{t+1}-\hat x_{t+1}})^2}{n-p} MSE=n−p∑t=pn(xt+1−x^t+1)2
即随着迭代的继续, M S E MSE MSE没有进一步的改善,认为此时 M S E MSE MSE达到最小,系数调整结束。
(3)当权数调整进行到第 n n n期时,迭代调整计算已使用全部数据,而 M S E MSE MSE还未达到最小,此时可以将最后一组权数作为新的初始值,重新进行新一轮的调整过程,直至 M S E MSE MSE收敛于最小值时,系数调整结束。
本例在经过 5 5 5轮迭代,误差降至接近 0 0 0,并且权重达到稳定不变,最佳权数为 ϕ 1 = 0.54 , ϕ 2 = 0.541 \phi_1=0.54,\phi_2=0.541 ϕ1=0.54,ϕ2=0.541
即预测模型为
x ^ t + 1 = ϕ 1 x t + ϕ 2 x t − 1 = 0.54 x t + 0.541 x t − 1 \hat x_{t+1}=\phi_1x_t+\phi_2x_{t-1}=0.54x_t+0.541x_{t-1} x^t+1=ϕ1xt+ϕ2xt−1=0.54xt+0.541xt−1
2020年的销售额:
x ^ 6 = 0.54 x 5 + 0.541 x 4 = 56 \hat x_{6}=0.54x_5+0.541x_{4}=56 x^6=0.54x5+0.541x4=56
2021年的销售额:
x ^ 7 = 0.54 x 6 + 0.541 x 5 = 59 \hat x_{7}=0.54x_6+0.541x_{5}=59 x^7=0.54x6+0.541x5=59
当数据的波动较大时,比如数据递增,递减,递增,递减这种情况,需要对原始数据值作标准化处理,消除数据和残差的量纲问题,可以加快调整速度,使权数更快收敛,并且使自适应过滤法更为有效。标准化公式为:
x t − i ∗ = x t − i ( ∑ i = 1 p x t − i 2 ) 1 2 x_{t-i}^{* }=\frac{x_{t-i}}{(\sum_{i=1}^{p}x_{t-i}^{2})^{\frac{1}{2}}} xt−i∗=(∑i=1pxt−i2)21xt−i
e t − i ∗ = e t − i ( ∑ i = 1 p x t − i 2 ) 1 2 e_{t-i}^{* }=\frac{e_{t-i}}{(\sum_{i=1}^{p}x_{t-i}^{2})^{\frac{1}{2}}} et−i∗=(∑i=1pxt−i2)21et−i
其中,分母 ω = ( ∑ i = 1 p x t − i 2 ) 1 2 \omega=(\sum_{i=1}^{p}x_{t-i}^{2})^{\frac{1}{2}} ω=(∑i=1pxt−i2)21称为标准化常数,更新后的权数调整策略为:
ϕ i ′ = ϕ i + 2 k e t + 1 ∗ x t − i + 1 ∗ \phi_i^{'}=\phi_i+2ke_{t+1}^{* }x_{t-i+1}^{* } ϕi′=ϕi+2ket+1∗xt−i+1∗