时间序列的观测顺序携带信息。先画时间图,检查趋势、季节性、周期、突变、异常和频率是否稳定。
时间戳应连续且间隔一致;缺期与 0 值含义不同。
序列可粗略分为趋势 T、季节 S、周期 C、随机 I。加法结构 y=T+S+I,乘法结构 y=T×S×I。
建模前做时间轴质量表:起止、频率、缺期、重复时点、异常事件。按时间划分训练与验证。
先识别趋势与周期,再理解 GM(1,1)、移动平均和指数平滑的假设;用滚动验证与误差比较决定谁真正可用。
先画时间图,识别结构
同一组数值换一个时间顺序,预测结论为什么会完全不同?
时间序列的观测顺序携带信息。先画时间图,检查趋势、季节性、周期、突变、异常和频率是否稳定。
时间戳应连续且间隔一致;缺期与 0 值含义不同。
序列可粗略分为趋势 T、季节 S、周期 C、随机 I。加法结构 y=T+S+I,乘法结构 y=T×S×I。
建模前做时间轴质量表:起止、频率、缺期、重复时点、异常事件。按时间划分训练与验证。
比较无序统计与结构识别。
趋势和季节被压缩掉。
连续 36 月,每年 7–8 月明显高峰。
时间图显示向上趋势和 12 月季节周期。
不能只用简单直线忽略暑期高峰。
验证时用前 30 月训练、后 6 月测试。
若测试期包含季节高峰,模型必须同时处理趋势与季节。
答案默认隐藏。聚焦题卡后按 ↓ 或 Space,一次只揭晓一道。
时间箭头不可逆。
通常错误。预测未来时应保持时间顺序,避免未来信息泄漏到训练。
关键词是固定时间周期。
季节性。它在固定周期内重复出现。
先确保时间索引可靠。
起止时间、观测频率、缺失时点、重复时点;还应看异常事件和单位。
缺失不等于零。
无记录表示未知,0 表示该月确实没有销量。
少样本、单变量、近指数趋势
为什么 GM(1,1) 先把原序列累加,而不是直接拟合原值?
GM(1,1) 中第一个 1 表示一阶微分方程,第二个 1 表示一个变量。它适合样本较少、趋势较平滑、近似指数变化的序列。
一次累加生成 AGO 把原序列变成更平滑的累计序列,突出整体趋势。
x(1)(k)=Σi=1..k x(0)(i)。背景值 z(1)(k)=0.5[x(1)(k)+x(1)(k−1)]。模型:x(0)(k)+a z(1)(k)=b。
先检查级比或趋势与光滑性。强季节、剧烈振荡、结构突变时不要机械使用 GM(1,1)。
比较三类序列。
单一 GM(1,1) 难以表示周期重复。
原序列 x(0)=[3,5,7,9]。
第一项仍为 3。
第二项 3+5=8,第三项 15。
第四项 24。
AGO 序列 x(1)=[3,8,15,24],比原序列更平滑地展示增长。
答案默认隐藏。聚焦题卡后按 ↓ 或 Space,一次只揭晓一道。
每项是从第一项累计到当前位置。
x(1)=[2,6,12,20]。
记住阶数与变量数。
一个变量,即单变量灰色模型。
累加主要提取单调趋势。
错误。基础 GM(1,1) 更适合平滑、近指数趋势;强季节性需其他处理或模型。
累积会平滑。
通过累加弱化原序列随机波动,增强整体趋势,使一阶灰色方程更容易拟合。
从灰色方程回到原序列
模型拟合的是累计序列,为什么最终预测不能直接报告累计值?
通过最小二乘估计发展系数 a 与灰色作用量 b,求出累计序列的时间响应。
最终对累计预测做一次累减 IAGO,得到原序列预测。
常见响应:x̂(1)(k+1)=[x(0)(1)−b/a]e^(−ak)+b/a;还原 x̂(0)(k+1)=x̂(1)(k+1)−x̂(1)(k)。
保存 AGO、背景值矩阵、参数、累计预测、还原预测五张中间表;手算前两期核对索引。
比较黑箱输出与逐层还原。
索引或还原错误难以发现。
累计预测 x̂(1)=[4,10,19,31]。
第一期原值保留 4。
第二期 10−4=6。
第三期 19−10=9,第四期 31−19=12。
还原预测为 [4,6,9,12]。
答案默认隐藏。聚焦题卡后按 ↓ 或 Space,一次只揭晓一道。
相邻累计值做差。
第 2 期 12−5=7,第 3 期 22−12=10。
模型工作在 AGO 序列上。
错误。通常先得到累计序列预测,再通过累减还原原序列。
索引错一位会整列错。
可快速发现 k 的起点、指数符号、背景值和累减索引错误。
I 是 inverse。
把累计预测相邻做差,还原为原始尺度预测。
调整移动平均窗口和指数平滑 α,观察下一期预测如何响应最近变化。
调整左侧参数,观察模型输出怎样变化。
当数据突然上升时,大窗口与小 α 会怎样反应?平滑和跟随最新变化之间有什么取舍?
拟合误差、后验差与小误差概率
只有 5 个样本,拟合误差很小,就可以预测很远吗?
小样本拟合容易看起来很好,仍要检查相对误差、残差趋势和外推距离。
灰色模型常用后验差比 C 与小误差概率 P 评价拟合,但最好再做滚动留一验证。
C=残差标准差/原序列标准差,越小越好;P 为小残差比例,越大越好。常见一级参考 C≤0.35、P≥0.95。
报告拟合误差与模拟预测误差,限制预测步数,并用区间或情景说明远期不确定性扩大。
比较拟合、后验检验与滚动预测。
同一数据建模又检验,容易乐观。
有 8 期数据。
用前 5 期预测第 6 期。
用前 6 期预测第 7 期。
用前 7 期预测第 8 期,汇总误差。
得到三个真正的模拟未来误差,比全样本拟合误差更诚实。
答案默认隐藏。聚焦题卡后按 ↓ 或 Space,一次只揭晓一道。
分子是残差标准差。
越小越好,说明残差波动相对原序列小。
拟合不是未来。
错误。需要留出/滚动验证,且预测越远不确定性通常越大。
每次训练窗口向前扩展。
前 5 期预测第 6;前 6 期预测第 7;前 7 期预测第 8,并统一计算误差。
P 是小残差所占比例。
P≥0.95,且后验差比 C≤0.35。
平滑与响应速度的取舍
窗口越大,预测就一定越好吗?
移动平均用最近 k 期平均预测下一期;k 大更平滑但反应慢。
一次指数平滑让最近观测权重最大,α 大更追随最新变化,α 小更平滑。
移动平均 ŷt+1=(yt+…+yt−k+1)/k;指数平滑 St=αyt+(1−α)St−1。参数应由滚动验证选择。
把朴素上期值、不同窗口移动平均和多组 α 放在同一验证表,按同一误差指标比较。
比较平滑与响应。
曲线平稳,但转折响应慢。
最近三期 20、24、28。
相加 20+24+28=72。
除以窗口 3。
下一期预测为 24。
若序列持续上升,移动平均会滞后;需要趋势模型或二次指数平滑。
答案默认隐藏。聚焦题卡后按 ↓ 或 Space,一次只揭晓一道。
只取最近窗口。
(12+15+18)/3=15。
平滑与响应相反。
错误。窗口越大越平滑,旧数据权重更多,反应通常更慢。
按指数平滑公式。
0.4×30+0.6×20=12+12=24。
用未见数据而不是训练图形。
在按时间滚动的验证集上比较相同误差指标,兼顾稳定性与业务响应需求。
没有永远最好的预测法
GM(1,1) 的 MAPE 8%,指数平滑 10%,能直接断言灰色模型更好吗?
只有使用相同训练窗口、预测步长、测试时点和误差定义,模型误差才可比较。
MAPE 在真实值接近 0 时会爆炸;MAE 有原单位、RMSE 更惩罚大误差,应结合业务代价选择。
MAE=mean|y−ŷ|;RMSE=√mean(y−ŷ)²;MAPE=mean|e/y|×100%。零值多时考虑 MAE、RMSE 或 sMAPE。
建立模型赛马表:基准、参数、训练期、验证期、一步/多步误差、运行成本、可解释性。
比较随意报分与统一赛马。
训练期和指标不同,无法公平比较。
比较上期值、移动平均、指数平滑、GM(1,1)。
固定后 6 期为滚动验证时点。
每个模型每次只用当时可见数据。
统一汇总 MAE 与 RMSE,并看每个时点误差。
选择稳定超过基准且解释合理的模型;若不同阶段各有优势,可分情景或组合。
答案默认隐藏。聚焦题卡后按 ↓ 或 Space,一次只揭晓一道。
平方—平均—开根。
平方误差 4、9,均值 6.5,RMSE=√6.5≈2.55。
检查分母。
错误。分母接近 0 会使 MAPE 无定义或极大,应换用其他指标。
比赛规则必须一致。
相同验证时点、预测步长和误差定义。
最好不只看小数点。
误差差异是否稳定和有实际价值,以及复杂度、解释性、维护成本与过拟合风险。
选择至少 12 期时间数据,对朴素、移动平均、指数平滑和 GM(1,1) 做滚动验证。
讲义、练习、实验与挑战清单均在本地页面内。