时间序列分析:AIC

  使用 ACF 和 PACF 图像可以在一定程度上帮助我们确定数据所符合的模型及其阶数,但面对实际的数据时,往往会发现多个模型都能较好地拟合数据。

  假设有一个时间序列 ts.data 如图 1 所示,计算其 ACF 和 PACF 图像如图 2、图 3 所示。

图 1

图 2

图 3

可见 ACF 图像呈现连续衰减,PACF 图像在滞后为 $2$ 处截断,这看上去像是一个 $\mathrm{AR}(2)$ 过程,但比较特殊的是, 在滞后为 $6$ 处有一个显著的偏自相关值。

  使用如下代码拟合 $p = 1 \; 到 \; 6$ 的 $6$ 个模型,输出其 $SSE$:

输出为

可见,$p=6$ 的模型具有最小的 $SSE$,这是否意味着就应该选择 $\mathrm{AR}(6)$ 模型呢?

  值得注意的是,模型的阶数越高,具有的参数就越多,模型就越容易过拟合。一个更好的评价标准,应该能够结合模型的拟合质量和复杂度,使得模型即能很好地拟合数据,又不至于过度复杂,导致过拟合的风险。

  AIC(Akaike Information Criterion)就是这样的一个评价标准,它的一般定义为

\begin{equation}
AIC = -2 \log(最大似然) + 2 \times 模型参数 \tag{1}
\end{equation}

一个简化的版本可以写成

\begin{equation}
AIC = \log(\hat \sigma^2) + \frac{n + 2p}{n} \tag{1}
\end{equation}

其中 $\hat \sigma^2 = SSE / n$,$n$ 为样本长度,$p$ 为参数个数。可见 AIC 结合各模型误差和参数个数,误差越小、参数越少,则 AIC 越小,应该尽量选择 AIC 小的模型。

  计算前面 $6$ 个模型的 AIC 如下:

输出为

可见 $p=2$ 的模型具有最小的 AIC,应该选择 $\mathrm{AR}(2)$ 模型。

  其实前面用到的 ts.data 是使用如下代码生成的:

增大样本数量到 1000,并绘制 PACF 如图 4:

图 4

可见此时在滞后为 $6$ 处就不存在显著偏自相关了。