本节摘要:一条观测序列通常是几种形状叠在一起:缓慢漂移的趋势、固定周期的季节、长度不固定的周期、以及无法用前三者说完的随机项。ARIMA 并不逐项「扣帽子」再相加那么简单,但你必须先能喊出名字,才知道该差分、该季节差分,还是该承认随机项里还有结构。
阅读完本节,你应当能够:
经典分解常写成加法:y_t ≈ 趋势 + 季节 + 周期 + 随机。乘法:y_t ≈ 趋势 × 季节 × 随机,适合「水平越高、季节鼓包越大」的发货量。电表负荷在盛夏的日振幅往往随基线升高,乘法或先对数再加法更自然。潮位在固定地形约束下振幅未必随均值线性放大,加法有时够用。选错叠合方式,后面的差分只是在错误尺度上铲地。
趋势是窗口均值的长途旅行:仓库扩容后日发货缓慢抬高,不是一周内的锯齿。季节是日历能编码的重复:周七天、年十二个月、日二十四小时。周期是鼓包,但长度会漂:宏观景气可能三年也可能七年,你无法事先把 m 写死。随机项是减去你愿意建模的形状之后仍在晃的部分——它仍可能有短记忆,那正是 ARMA 的工作;若连短记忆都没有,就是白噪声。
示意周发货(教学):
周一到周日:40, 52, 48, 47, 50, 30, 28 下一周: 42, 55, 50, 49, 53, 31, 29
周末低、周中高,长度固定为 7,这是季节。若一年里这形状逐渐整体抬高,那是趋势叠季节。不要把「这周比上周高 2」叫周期——那只是趋势或随机游走的一小步。
| 成分 | 识别线索 | 主要旋钮 | 误用 |
|---|---|---|---|
| 趋势 | 折线斜坡、ACF 慢衰减 | d,或确定性时间趋势 | 用很大的 p 去拟合斜坡 |
| 季节 | 固定 m 的鼓包、ACF 在 m 处峰 | 季节差分 D、季节 P/Q | 普通 MA(12) 硬扛 |
| 周期 | 鼓包长度漂移 | 通常不进经典 ARIMA | 强行设一个 m |
| 短记忆随机 | 平稳后的 ACF/PACF 形态 | p、q | 在未差分序列上定阶 |
| 白噪声 | 滞后大于 0 的 ACF 进带 | 模型终点 | 把白噪声再拟合一层 |
周期成分让人沮丧:样本里可能只重复两三次,估出来的「周期长度」极不稳。经济序列上有人用滤波单独抽循环,那已超出本教程的 ARIMA 主线。动手原则是:不能用固定 m 编码的,就不要塞进 SARIMA 的季节槽。宁可让它留在随机项里,用诊断承认模型解释不了长循环。
💡 关键直觉:季节是「日历能点名的重复」,周期是「看起来像重复但点不了名」。点得了名才配得上一个整数 m。
业务同事常把「随机」理解成「没规律、可以忽略」。在 ARIMA 里,随机项是尚未被趋势/季节说完的动力学。AR 说「它还记得自己的过去值」,MA 说「它还记得过去的意外」。只有当记得的部分都被参数吸收,剩下的意外彼此无关、方差稳定,随机项才降格为白噪声。白噪声仍然有波动——潮位仪的读数噪声、点货时的随机零星单——只是这些波动帮不了你预测下一步。
因此第 2 章把残差当白噪声检验,不是审美。残差若仍有季节鼓包,说明组成要素里的季节没进模型,被错当成「短记忆随机」用 p、q 去啃,啃不动。残差若仍有斜坡,趋势没差分够。诊断在理论语言里就是:检查你把成分塞进了正确的槽。
⚠️ 常见坑:用移动平均把图「刮」得很光滑,再对光滑序列做 ARIMA。你刮掉的可能是 MA 要吃的短冲击,也可能是季节。分解平滑是探索图,不是估计前必须的滤镜。
确定性季节(一组月份哑变量)与随机季节(季节 ARMA)也要分清。前者假设每年夏天形状几乎同一套系数;后者允许季节形状有记忆、慢慢变。零售日历稳定时哑变量很干净;气候与活动在变时,季节 ARMA 更弹性,也更吃样本。第 4 章 SARIMA 走后者。不必在本章选边,但要知道「季节」这个词下面至少两套装置。
加法分解的教学写法:先估一条缓慢趋势(甚至只是线性时间),再按 m 把同期平均当季节指数,剩下当随机。这能帮你看见 m,不能替代单位根检验——确定性去趋势之后仍可能有单位根。探索分解与推断用的差分,是两套工具,不要因为分解图好看就宣布 d=0。
经典加法分解把序列拆成趋势线、季节指数、剩余项,乘法分解则让季节指数随水平缩放。分解图极利于给调度台讲「旺季长什么样」,也利于发现 m。它不能代替单位根检验:你从剩余项里看到「还在晃」,那晃仍可能带单位根。有人先分解再对剩余项做 ARIMA,等于把确定性季节抽走后再建模短记忆,这是合法路径,但要保证季节指数只用训练段估计,否则持出泄漏。分解用的移动平均窗口还会刮掉 MA 要吃的短冲击,剩余项的 ACF 会被人为改写。探索用分解,估计用原序列加 SARIMA 或哑变量,不要把探索滤镜当成数据本身。
日历效应不止季节:调休、春节错位、学校假期,长度不固定,m 编码不了。它们更像干预或外生日历变量。硬塞进季节槽,会把「有的年份春节在 1 月、有的在 2 月」平均成一套错误的月指数。周期成分(景气循环)同样点不了名,样本里重复两三次就估长度,结果会跟着窗走。本课的诚实说法是:点得了名的进季节槽,点不了名的要么当干预,要么留在随机项并承认模型解释不了长循环。
随机项里的短记忆才是 ARMA 的食物。把随机项理解成「可以忽略的垃圾」,会催人把图刮得过光滑。光滑后残差很白,是因为你把可预报的短记忆提前刮掉了,持出时真实冲击的余波还在,模型却已经无参可调。这是「探索平滑」最贵的副作用。
周发货示意周末低、周中高,长度 7,那是季节。整体逐年抬高是趋势。长度漂的鼓包不要叫季节。随机项里若还有短记忆,才是 ARMA 的食物;没有了才是白噪声。分解图可以给人看旺季,不能代替单位根检验,也不要把平滑当估计输入。
振幅随水平变宽用乘法或先对数;潮位在固定量程内加法往往够。选错尺度,后面差分是在错误地形上铲地。
不是。它是尚未被趋势季节说完的动力学。刮得过光滑会把可预报的短记忆提前刮掉。
周发货示意周末低、次年整体抬高:季节加趋势,不是「波动很大」。长度漂的宏观鼓包点不了 m,不要塞季节槽,宁可留在随机项并承认解释不了长循环。春节错位用干预或日历变量,硬塞月季节会平均成错误指数。探索分解给人看旺季,季节指数只用训练段;估计输入用原序列加 SARIMA 或哑变量,不要把移动平均刮过的剩余项当真数据,MA 要吃的短冲击可能已被刮走。加法对振幅稳定,乘法对水平越高鼓包越大。随机项不是垃圾,白噪声才是终点。残差若仍有周鼓包,是季节进错槽,用 p、q 啃不动。
口令:先命名再动刀。趋势用 d,季节用 m 与季节槽,周期点不了名就不要塞,短记忆用 p、q,白噪声是终点。加法对振幅稳定,乘法或对数对鼓包随水平变大。分解图给人看,估计用原序列,季节指数只用训练段。日历错位用干预。刮得过光滑会刮走 MA 食物。残差仍有周鼓包说明季节进错槽。探索平滑不是估计前必做滤镜。把成分表当成诊断时「回哪一槽」的索引,第 2 章的残差峰位置就能对上本章名字。
原文 2.1 把组成写成趋势、季节性、周期性、随机性。趋势是长期向上或向下;季节性是固定周期重复,如冬季取暖能耗高于某些季节;周期性是不固定长度的较长波动,如经济周期;噪声是无法用前三者解释的随机波动。加法 Y=T+S+R 适合季节幅度不随水平变;乘法 Y=T×S×R 适合幅度随水平增长。分解提供结构理解,预测效果依赖成分估计准确性。把周期与季节的可操作区别(能不能用整数 m 编码)写进槽位表,避免经济循环被硬塞进 SARIMA。随机项的终点是白噪声,不是「可以忽略」。探索分解的移动平均窗口可能刮掉短冲击,估计输入应回到原序列或可逆变换。
| 成分 | 原文描述 | 进哪一槽 |
|---|---|---|
| 趋势 | 长期向上或向下 | 差分 d 或确定性斜坡 |
| 季节 | 固定周期重复,如取暖能耗 | m 与季节 AR/MA/差分 |
| 周期 | 长度不固定的较长波动 | 不要硬套 m |
| 随机短记忆 | 还记得过去的 y 或冲击 | p 与 q |
| 白噪声 | 不可再线性预测 | 残差终点 |
| 加法分解 | 幅度不随水平变 | 潮位一类 |
| 乘法分解 | 幅度随水平涨 | 发货量一类 |
| 日历错位 | 春节不在固定月 | 干预或外生日历 |
| 探索平滑 | 刮图给人看 | 不是估计输入 |
| 目的是异常检测 | 尖点是目标 | 不能先削平 |
周发货示意工作日高、周末低,长度 7,进季节槽。次年整体抬高进趋势槽。景气鼓包三年一次又七年一次,点不了 m,不要塞 SARIMA。春节有时在一月有时在二月,用干预。加法适合振幅稳定的潮位,乘法适合件数随旺季放大。分解图给调度台看旺季,季节指数只用训练段估计;估计输入回到原序列加季节装置。刮得过光滑会刮走 MA 要吃的短冲击。把命名表当成残差峰的索引:短阶柱对 p、q,7/12 柱对季节,斜坡对 d,喇叭对变换。
下一节把「地板平不平」说严:弱平稳三条、单位根、趋势平稳,以及伪回归从哪来。