时间序列分析概述
时间序列分析是统计学与数学建模中的重要分支,通过对按时间顺序排列的观测数据进行分析,揭示数据的内在结构与规律,进而实现对未来趋势的预测。本章将系统介绍时间序列分析的基本概念、分解方法、平稳性检验、差分运算、白噪声检验以及常见模型。
基本概念
理解时间序列分析的基础在于掌握其核心概念,包括时间序列的定义、平稳性条件以及相关函数的性质。
时间序列的定义
时间序列是指将某一统计指标的数值按照时间先后顺序排列而成的数列:
\[ {X_t : t = 1, 2, 3, \ldots, T} \]
其中 \( X_t \) 表示时刻 \( t \) 的观测值,\( T \) 为序列总长度。
平稳性
平稳性是时间序列分析中最核心的概念。
严格平稳
序列的联合分布不随时间平移而改变:
\[ F(X_{t_1}, X_{t_2}, \ldots, X_{t_n}) = F(X_{t_1+\tau}, X_{t_2+\tau}, \ldots, X_{t_n+\tau}) \]
宽平稳(弱平稳)
实际应用中更常使用的定义,需满足以下三个条件:
- 均值恒定:\( E(X_t) = \mu \),对所有 \( t \) 成立
- 方差有限且恒定:\( \text{Var}(X_t) = \sigma^2 < \infty \),对所有 \( t \) 成立
- 自协方差仅依赖于时间间隔:\( \text{Cov}(X_t, X_{t+k}) = \gamma(k) \),仅为滞后阶数 \( k \) 的函数
其中 \( \gamma(k) \) 称为滞后 \( k \) 阶的自协方差函数。
自相关函数(ACF)
自相关函数描述了序列中不同时刻观测值之间的线性相关程度。滞后 \( k \) 阶的自相关系数定义为:
\[ \rho(k) = \frac{\gamma(k)}{\gamma(0)} = \frac{\text{Cov}(X_t, X_{t+k})}{\text{Var}(X_t)} \]
自相关函数的基本性质:
- \( \rho(0) = 1 \)
- \( |\rho(k)| \leq 1 \)
- \( \rho(k) = \rho(-k) \)(对称性)
样本自相关函数的计算公式为:
\[ \hat{\rho}(k) = \frac{\sum_{t=1}^{T-k}(X_t - \bar{X})(X_{t+k} - \bar{X})}{\sum_{t=1}^{T}(X_t - \bar{X})^2} \]
其中 \( \bar{X} = \frac{1}{T}\sum_{t=1}^{T} X_t \) 为样本均值。
偏自相关函数(PACF)
偏自相关函数衡量的是在去除中间变量影响后,\( X_t \) 与 \( X_{t+k} \) 之间的直接线性相关程度:
\[ \phi_{kk} = \text{Corr}(X_t, X_{t+k} \mid X_{t+1}, X_{t+2}, \ldots, X_{t+k-1}) \]
偏自相关系数可通过求解 Yule-Walker 方程组获得:
\[ \begin{pmatrix} 1 & \rho(1) & \cdots & \rho(k-1) \ \rho(1) & 1 & \cdots & \rho(k-2) \ \vdots & \vdots & \ddots & \vdots \ \rho(k-1) & \rho(k-2) & \cdots & 1 \end{pmatrix} \begin{pmatrix} \phi_{k1} \ \phi_{k2} \ \vdots \ \phi_{kk} \end
\begin{pmatrix} \rho(1) \ \rho(2) \ \vdots \ \rho(k) \end{pmatrix} \]
ACF 和 PACF 的截尾与拖尾特征是识别时间序列模型阶数的关键工具。
时间序列分解
时间序列分解是将原始序列拆分为若干具有明确含义的组成部分,从而更好地理解数据的内在结构。
分解模型
时间序列通常可分解为三个成分:
- 趋势成分 \( T_t \):反映数据长期的上升或下降趋势
- 季节成分 \( S_t \):反映数据以固定周期重复出现的变化模式
- 随机成分 \( R_t \):去除趋势和季节后的不规则波动
加法分解模型
\[ X_t = T_t + S_t + R_t \]
适用于季节波动幅度不随趋势水平变化的情况。
乘法分解模型
\[ X_t = T_t \times S_t \times R_t \]
适用于季节波动幅度随趋势水平成比例变化的情况。取对数可转为加法模型:
\[ \ln X_t = \ln T_t + \ln S_t + \ln R_t \]
趋势成分的提取
移动平均法
对于周期为 \( m \) 的序列,中心化移动平均为:
\[ \hat{T}t = \frac{1}{m}\sum{j=-\lfloor m/2 \rfloor}^{\lfloor m/2 \rfloor} X_{t+j} \]
当 \( m \) 为偶数时,需使用二次移动平均:
\[ \hat{T}t = \frac{1}{2m}\left(X{t-m/2} + 2\sum_{j=-(m/2-1)}^{m/2-1} X_{t+j} + X_{t+m/2}\right) \]
回归拟合法
利用多项式回归拟合趋势:
\[ T_t = \beta_0 + \beta_1 t + \beta_2 t^2 + \cdots + \beta_p t^p \]
通过最小二乘法估计参数 \( \beta_0, \beta_1, \ldots, \beta_p \)。
季节成分的提取
- 计算去趋势序列:\( D_t = X_t - \hat{T}_t \)
- 对同一季节位置的值取平均,得到季节指数 \( \bar{S}_j \)(\( j = 1, 2, \ldots, m \))
- 进行中心化调整:\( \hat{S}_j = \bar{S}j - \frac{1}{m}\sum{j=1}^{m}\bar{S}_j \)
随机成分
随机成分为去除趋势和季节后的残差:
\[ R_t = X_t - \hat{T}_t - \hat{S}_t \]
理想情况下,随机成分应为白噪声序列,即不包含可预测的信息。
平稳性检验
建立时间序列模型前必须判断序列是否平稳。非平稳序列需经适当变换后才能建模分析。
图形判断法
最直观的方法是绘制时序图,观察以下特征:
- 序列是否围绕某一常数水平波动
- 波动幅度是否基本恒定
- 是否存在明显的趋势或周期
同时观察 ACF 图:平稳序列的 ACF 快速衰减趋向于零;非平稳序列的 ACF 通常衰减缓慢。
单位根检验:ADF 检验
Augmented Dickey-Fuller(ADF)检验是最常用的平稳性检验方法。
基本思想
考虑 AR(1) 过程 \( X_t = \phi X_{t-1} + \varepsilon_t \),改写为:
\[ \Delta X_t = (\phi - 1)X_{t-1} + \varepsilon_t = \delta X_{t-1} + \varepsilon_t \]
当 \( \delta = 0 \)(即 \( \phi = 1 \))时序列为随机游走,非平稳。
三种形式:
\[ \Delta X_t = \delta X_{t-1} + \sum_{i=1}^{p}\beta_i \Delta X_{t-i} + \varepsilon_t \]
含常数项:
\[ \Delta X_t = \alpha + \delta X_{t-1} + \sum_{i=1}^{p}\beta_i \Delta X_{t-i} + \varepsilon_t \]
含常数项和趋势项:
\[ \Delta X_t = \alpha + \gamma t + \delta X_{t-1} + \sum_{i=1}^{p}\beta_i \Delta X_{t-i} + \varepsilon_t \]
检验假设与统计量:
\[ H_0: \delta = 0 \quad (\text{存在单位根,序列非平稳}) \] \[ H_1: \delta < 0 \quad (\text{不存在单位根,序列平稳}) \]
检验统计量:
\[ \text{ADF} = \frac{\hat{\delta}}{\text{SE}(\hat{\delta})} \]
统计量服从 Dickey-Fuller 分布。滞后阶数 \( p \) 基于 AIC/BIC 选取。
其他平稳性检验
- PP 检验(Phillips-Perron):对残差的异方差和序列相关进行非参数修正
- KPSS 检验:原假设为序列平稳,与 ADF 检验互补使用
差分运算
差分运算是将非平稳序列转化为平稳序列的最常用方法,是 ARIMA 模型的核心步骤。
一阶差分
\[ \Delta X_t = X_t - X_{t-1} = (1 - B)X_t \]
其中 \( B \) 为后移算子,满足 \( BX_t = X_{t-1} \)。
高阶差分
\( d \) 阶差分定义为:
\[ \Delta^d X_t = (1 - B)^d X_t = \sum_{j=0}^{d} \binom{d}{j}(-1)^j X_{t-j} \]
例如二阶差分:
\[ \Delta^2 X_t = \Delta(\Delta X_t) = X_t - 2X_{t-1} + X_{t-2} \]
季节差分
对于具有周期 \( s \) 的季节性序列:
\[ \Delta_s X_t = X_t - X_{t-s} = (1 - B^s)X_t \]
例如月度数据(\( s = 12 \)):\( \Delta_{12} X_t = X_t - X_{t-12} \)
差分阶数的确定
- 观察时序图和 ACF 图判断差分效果
- 通过 ADF 检验确认差分后序列平稳
- 实际应用中差分次数 \( d \) 很少超过 2
注意:过度差分会引入不必要的序列相关性,增加模型复杂度。应以刚好达到平稳为原则。
差分运算的性质
- \( B^k X_t = X_{t-k} \)
- \( (1 - B)^d \) 可展开为 \( d \) 阶多项式
- 差分是线性运算:\( \Delta(aX_t + bY_t) = a\Delta X_t + b\Delta Y_t \)
白噪声检验
白噪声序列是时间序列分析中的基准模型。建模完成后需检验残差是否为白噪声,以判断模型信息提取是否充分。
白噪声的定义
白噪声序列 \( {\varepsilon_t} \) 满足:
- \( E(\varepsilon_t) = 0 \),对所有 \( t \) 成立
- \( \text{Var}(\varepsilon_t) = \sigma^2 \),对所有 \( t \) 成立
- \( \text{Cov}(\varepsilon_t, \varepsilon_s) = 0 \),对所有 \( t \neq s \) 成立
其 ACF 为:
\[ \rho(k) = \begin{cases} 1, & k = 0 \ 0, & k \neq 0 \end{cases} \]
Ljung-Box 检验(Q 检验)
检验假设:
\[ H_0: \rho(1) = \rho(2) = \cdots = \rho(m) = 0 \quad (\text{序列为白噪声}) \] \[ H_1: \exists, k \in {1, \ldots, m},; \rho(k) \neq 0 \quad (\text{序列非白噪声}) \]
检验统计量:
\[ Q_{LB} = T(T+2)\sum_{k=1}^{m}\frac{\hat{\rho}(k)^2}{T-k} \]
在原假设下 \( Q_{LB} \sim \chi^2(m) \)。对模型残差(含 \( p+q \) 个参数):\( Q_{LB} \sim \chi^2(m-p-q) \)。
滞后阶数 \( m \) 一般取 10 或 20。
Box-Pierce 检验
Ljung-Box 的简化版本:
\[ Q_{BP} = T\sum_{k=1}^{m}\hat{\rho}(k)^2 \]
在有限样本下 Ljung-Box 检验表现更优。
常见模型概览
时间序列建模的核心思想是用序列的历史值和历史扰动来线性表示当前值。以下介绍四种最基本的线性时间序列模型。
AR 模型(自回归模型)
\( p \) 阶自回归模型 AR(\( p \)):
\[ X_t = c + \phi_1 X_{t-1} + \phi_2 X_{t-2} + \cdots + \phi_p X_{t-p} + \varepsilon_t \]
算子形式:\( \Phi(B)X_t = c + \varepsilon_t \),其中 \( \Phi(B) = 1 - \phi_1 B - \cdots - \phi_p B^p \)。
平稳性条件:特征方程 \( \Phi(z) = 0 \) 所有根的模大于 1。
ACF/PACF 特征:ACF 拖尾(指数衰减或振荡衰减),PACF \( p \) 阶截尾。
AR(1) 的性质(\( |\phi| < 1 \)):
\[ E(X_t) = 0, \quad \text{Var}(X_t) = \frac{\sigma^2}{1 - \phi^2}, \quad \rho(k) = \phi^k \]
MA 模型(移动平均模型)
\( q \) 阶移动平均模型 MA(\( q \)):
\[ X_t = \mu + \varepsilon_t + \theta_1 \varepsilon_{t-1} + \theta_2 \varepsilon_{t-2} + \cdots + \theta_q \varepsilon_{t-q} \]
算子形式:\( X_t = \mu + \Theta(B)\varepsilon_t \),其中 \( \Theta(B) = 1 + \theta_1 B + \cdots + \theta_q B^q \)。
平稳性:MA 模型总是平稳的(有限个白噪声的线性组合)。
可逆性条件:\( \Theta(z) = 0 \) 所有根的模大于 1。
ACF/PACF 特征:ACF \( q \) 阶截尾,PACF 拖尾。
MA(1) 的自相关函数:\( \rho(1) = \theta/(1+\theta^2) \),\( \rho(k) = 0 \)(\( k > 1 \))。
ARMA 模型(自回归移动平均模型)
ARMA(\( p, q \)) 结合了 AR 和 MA 的特点:
\[ \Phi(B)X_t = c + \Theta(B)\varepsilon_t \]
平稳性条件:\( \Phi(z) = 0 \) 的根在单位圆外。
可逆性条件:\( \Theta(z) = 0 \) 的根在单位圆外。
ACF/PACF 特征:ACF 拖尾,PACF 拖尾。阶数识别需借助 AIC/BIC 准则。
ARIMA 模型(差分自回归移动平均模型)
ARIMA(\( p, d, q \)) 对非平稳序列进行 \( d \) 阶差分后建立 ARMA(\( p, q \)):
\[ \Phi(B)(1-B)^d X_t = c + \Theta(B)\varepsilon_t \]
其中 \( p \) 为自回归阶数,\( d \) 为差分阶数,\( q \) 为移动平均阶数。
Box-Jenkins 建模步骤:
- 模型识别:绘制时序图判断平稳性;差分至平稳;ACF/PACF 确定 \( p \) 和 \( q \)
- 参数估计:极大似然估计法或条件最小二乘法
- 模型诊断:残差白噪声检验、正态性检验、参数显著性检验
- 模型选择:AIC = \( -2\ln L + 2(p+q+1) \),BIC = \( -2\ln L + (p+q+1)\ln T \)
- 预测:点预测与区间预测
模型识别总结
| 模型 | ACF | PACF |
|---|---|---|
| AR(\( p \)) | 拖尾 | \( p \) 阶截尾 |
| MA(\( q \)) | \( q \) 阶截尾 | 拖尾 |
| ARMA(\( p, q \)) | 拖尾 | 拖尾 |
季节 ARIMA 模型(SARIMA)
对于具有季节性的时间序列,使用 SARIMA,记为 ARIMA\((p,d,q)\times(P,D,Q)_s\):
\[ \Phi_P(B^s)\Phi(B)(1-B^s)^D(1-B)^d X_t = \Theta_Q(B^s)\Theta(B)\varepsilon_t \]
其中 \( (p,d,q) \) 为非季节部分阶数,\( (P,D,Q) \) 为季节部分阶数,\( s \) 为季节周期。
应用领域
时间序列分析方法在众多领域都有广泛而重要的应用。
经济与金融
- GDP、通胀率、失业率的趋势预测
- 收益率波动建模(结合 GARCH 模型)
- 汇率与利率走势分析
气象与环境
- 气温与降水量的季节性预测
- PM2.5 等污染物浓度变化规律监测
- 河流流量的洪水预警
工程与工业
- 设备传感器数据的预测性维护
- 电力负荷与交通流量短期预测
- 生产质量参数的异常检测
医学与公共卫生
- 传染病疫情的早期预警
- 生理信号(ECG、EEG)时序特征提取
- 住院人数与急诊量预测
信号处理
- 基于 AR 模型的语音线性预测编码(LPC)
- 机械振动的模态分析与故障诊断
数学建模竞赛
- 数据预处理中的趋势判断与季节性识别
- 构建基准预测模型
- 与机器学习结合提供时序特征
- 残差分析验证模型合理性
小结
时间序列分析提供了从数据探索到模型建立再到预测验证的完整方法论框架。
- 平稳性是建模基本前提,通过 ADF 检验判断
- 时间序列分解揭示趋势、季节和随机成分
- 差分运算是非平稳转平稳的有效手段
- 白噪声检验验证模型信息提取的充分性
- AR/MA/ARMA/ARIMA 构成线性时序分析的核心框架
- ACF/PACF 截尾/拖尾特征是模型识别的关键依据