时间序列分析与滤波技术详解
1. 时间序列未来预测
在时间序列分析中,我们可以将时间序列 $d$ 的当前值近似表示为其过去值的线性函数,即:
$d_i = p_2d_{i - 1} + p_3d_{i - 2} + p_4d_{i - 3} + \cdots + p_Md_{i - M - 1}$
这里的 $p$ 是系数。若知道这些系数,就能利用过去值 $d_{i - 1}, d_{i - 2}, d_{i - 3}, \cdots$ 来预测当前值 $d_i$。该方程实际上是卷积方程:
$p_1d_i + p_2d_{i - 1} + p_3d_{i - 2} + p_4d_{i - 3} + \cdots = 0$
其中 $p_1 = -1$,所以可写成 $p * d = 0$。这里的预测误差滤波器 $p$ 是未知的。此卷积方程与之前遇到的热生成方程 $g * h = u$ 形式相同,可使用广义最小二乘法求解。先验信息 $p_1 = -1$ 被认为是非常确定的,其方差远小于 $p * d = 0$。
在大多数实际情况中,可预测的未来主要是近期过去的函数。因此,预测误差滤波器较短,可使用 MatLab 的标准矩阵代数来计算 $p$(双共轭梯度法也是不错的选择)。
以 Neuse 河水位图为例,使用两种方法计算预测误差滤波器,得到了相同的结果。选择 $M = 100$ 作为 $p$ 的长度,滤波器的高幅值主要集中在前 3 到 4 天,这表明较短的滤波器可能也能产生类似的预测效果。42 天处的小特征很令人惊讶,它表明当前值与一个多月前的时间存在一定依赖关系,但在明确其意义之前,需要研究该特征对预测的实际改善程度。
预测误差
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



