12.6 小结¶
时间序列分析的第一条规矩,是先承认“时间顺序本身有信息”。只要今天和昨天、上周、去年同月可能相关,我们就不能把数据随便打散。
12.6.1 一条工作流¶
| 步骤 | 你在问什么 | 常用工具 |
|---|---|---|
| 观察 | 折线有没有趋势、周期、异常 | 折线图、滚动均值 |
| 分解 | 原序列里哪些是长期和周期结构 | STL、季节调整 |
| 平稳 | 规律是否随时间稳定 | ADF、KPSS、差分 |
| 建模 | 过去怎样影响现在 | ARIMA、SARIMA、ETS |
| 预测 | 未来最可能是多少,范围多宽 | 点预测、预测区间 |
| 回测 | 模型有没有真的赢过基线 | 滚动验证、MAE、RMSE |
12.6.2 常见选择¶
| 数据现象 | 优先考虑 |
|---|---|
| 趋势明显 | 趋势项、差分、ETS |
| 季节明显 | STL、季节差分、SARIMA |
| 方差随水平变大 | 取对数或 Box-Cox 变换 |
| 残差仍有自相关 | 增加 AR/MA 或季节项 |
| 只需要稳定基线 | 朴素预测、季节朴素预测 |
| 需要解释节假日或外部因素 | 加入外生变量的回归或 SARIMAX |
12.6.3 速查公式¶
| 概念 | 公式 |
|---|---|
| 加法分解 | \(y_t = T_t + S_t + R_t\) |
| 一阶差分 | \(\Delta y_t = y_t - y_{t-1}\) |
| 季节差分 | \(\Delta_s y_t = y_t - y_{t-s}\) |
| 自相关 | \(\rho_k = \operatorname{Corr}(y_t, y_{t-k})\) |
| ARIMA | \(\operatorname{ARIMA}(p,d,q)\) |
| SARIMA | \(\operatorname{SARIMA}(p,d,q)(P,D,Q)_s\) |
小率的笔记本
时间序列不是普通表格多了一列日期。
先画图,再分解;先检查平稳,再建模型;先做回测,再谈预测。
预测未来时,最重要的不是给一个看起来精确的数,而是诚实表达不确定性。
12.6.4 练习¶
- 记录自己 30 天的步数,画折线图并判断是否有周周期。
- 用一组模拟月销量做 STL 分解,解释趋势、季节和残差各代表什么。
- 比较朴素预测和季节朴素预测在同一组数据上的 MAE。
- 找一条明显上升的序列,做一阶差分后再画图,观察均值是否更稳定。
