SPSS 命令: SPSS TSMODEL

用专家建模器做时间序列预测

TSMODEL 为一个序列拟合预测模型,并给出带预测区间的未来值。

免费 · 无需注册 · 文件留在本机 · 更新于 2026年10月18日

能告诉你什么

在 Crosstabs 中,你可以让专家建模器按标准化 BIC 比较指数平滑和 ARIMA 候选模型,也可以直接指定七种指数平滑模型之一;模型统计量采用 SPSS TSMODEL 的定义。

  • 在所尝试的候选模型中哪一种最能描述该序列——“候选模型”表按标准化 BIC 排序。
  • 所选模型的拟合程度:平稳 R 方、R 方、RMSE、MAPE、MaxAPE、MAE、MaxAE 和标准化 BIC。
  • 残差中是否仍有未解释的结构:Ljung-Box Q(18) 检验。
  • 平滑权重或 ARIMA 系数,以及它们的标准误和显著性。
  • 未来若干期的点预测,以及 95% 的上下置信界限。

适用场景

适合使用

  • 你按波次或月份追踪某个指标(知名度、NPS、购买意向比例),需要对下一季度或下一年给出有依据的预测。
  • 不确定数据适合趋势模型还是季节模型,希望用同一准则比较多个候选模型。
  • 文件为每位受访者一行并带有访问日期:时间轴步骤会先把各行汇总为每期的平均值、总和或百分比,再进行建模。

改用其他方法

  • 需要加入预测变量、干预或传递函数:这里的 TSMODEL 只处理单变量序列,专家建模器也不检测离群值(指定阶数的 ARIMA 可以检测)。
  • 已经确定所需的 ARIMA 阶数:使用 ARIMA 过程直接设置 p、d、q 及季节阶数。
  • 只想描述季节模式而不做预测:季节分解可直接给出季节因子。
  • 只有寥寥几期数据:少于六个值时专家建模器无法运行,而且序列过短时任何预测都很脆弱。

在 Crosstabs 中如何操作

  1. 01

    在“统计”模式中打开数据

    在工作区打开 .sav、CSV 或 Excel 文件,切换到“统计”模式,在“预测”组中选择“创建预测模型”(TSMODEL)。

  2. 02

    定义时间轴

    可以按日期或波次列把受访者行分组为各期(检测到日期时可设置“期间长度”),也可以把每行视为一个时间点、按文件顺序排列。设置“周期性”,例如“每月(12)”或“季度(4)”。

  3. 03

    选择因变量序列

    选择要预测的变量。若行为受访者,再选择“每期的值”:平均值、总和或某类别的百分比。

  4. 04

    选择方法

    选择“专家建模器:所有模型”“仅指数平滑”或“仅 ARIMA”,或者七种指数平滑模型之一(简单、Brown、Holt、阻尼趋势、简单季节性、Winters 加法、Winters 乘法)。

  5. 05

    设置预测期数并运行

    输入预测期数(0–120)并点击“运行”。候选模型的搜索在后台线程中进行,页面保持可操作。

计算示例

以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。

数据

48 个模拟月度数据(2022 年 1 月至 2025 年 12 月),为某品牌追踪指标的百分比:起点 40,每月上升 0.25 个百分点,叠加 12 月最高、7 月最低的固定季节模式,以及由固定随机种子生成的正态噪声(标准差 1.1),每次构建得到相同序列。

模型描述
序列模型类型
awarenessWinters 加法

根据候选模型中最小的标准化 BIC 选出;专家建模器:仅指数平滑,周期性 12。

模型拟合
拟合统计值
平稳 R 方0.760
R 方0.941
RMSE1.061
MAPE1.860
MAE0.847
标准化 BIC0.360
候选模型
模型类型标准化 BIC
Winters 加法0.360
Winters 乘法0.684
简单季节性0.821
简单1.517
Holt1.591
阻尼趋势1.713

对于取值为正的季节性序列,指数平滑专家会比较六个模型。

预测
时间点预测LCL(95%)UCL(95%)
2026-0153.0050.9355.08
2026-0252.4850.3854.57
2026-0352.6550.5354.77
2026-0452.7450.6054.89
2026-0550.4948.3252.66
2026-0650.0647.8652.26

结果解读

专家建模器在 6 个指数平滑候选模型中选择了 Winters 加法,标准化 BIC 为 0.360。该模型的 R 方为 0.941,一步预测的典型误差(RMSE)为 1.06 个百分点;Ljung-Box Q(18) = 18.21(p = .252),残差中没有剩余的自相关。2026-01 的预测值为 53.00,95% 预测区间为 50.93 至 55.08。

输出表格说明

模型描述
序列名称和所选模型类型;脚注说明它是按标准化 BIC 胜出,还是因序列较短只搜索了指数平滑模型。
模型拟合
原始尺度上的平稳 R 方、R 方、RMSE、MAPE、MaxAPE、MAE、MaxAE 和标准化 BIC。RMSE 的分母为 n − k,即拟合点数减去估计参数个数。
模型统计
残差的 Ljung-Box Q(18)、自由度和显著性。p 值小说明仍有自相关未被解释。由于尚不支持离群值检测,“离群值数”始终为 0。
指数平滑模型参数
模型实际使用的 Alpha(水平)、Gamma(趋势)、Delta(季节)和 Phi(阻尼),以及标准误、t 值和显著性;若 ARIMA 胜出,则改为显示“参数估算值”。
预测
每个未来期一行,含预测值及 95% 的 LCL 和 UCL。Winters 乘法模型没有等价的 ARIMA 形式,因此不给出区间。
候选模型
专家建模器估计过的所有模型,按标准化 BIC 从小到大排列(最多 25 行),可以看出其他候选模型与最优模型相差多少。

前提假设与注意事项

  • 每期的值被视为一个观测;各期调查估计值本身的抽样误差不计入预测区间。
  • 已观察到的规律会延续:预测假定预测期内没有结构突变、离群值或外部冲击。
  • 季节模型需要第 1 步设置的周期性,且至少有两个完整周期;Winters 乘法模型要求所有值为正。
  • 序列必须以观测值结尾,预测才能从最近一期开始。

结果如何验证

简单、Holt、阻尼、Winters 加法和 Winters 乘法模型的平滑递推,在相同初始状态下与 statsmodels ExponentialSmoothing 对照验证,误差在 1e-9 以内;ARIMA 候选模型使用经 statsmodels 验证的 ARIMA 引擎。测试还确认 Winters 加法模型优化所得的权重位于 SSE 的局部最小点,且短序列只使用指数平滑。SPSS 未公开其 ARIMA 识别规则,因此专家建模器的 ARIMA 搜索(由 KPSS 检验和季节强度决定差分,再按标准化 BIC 逐步搜索)是有文档说明的替代方案,所选模型可能与 SPSS 不同。 验证证据(英文)

常见问题

专家建模器如何选择模型?

它先拟合一组指数平滑模型(非季节 4 个,季节 5 或 6 个)和逐步搜索得到的一组 ARIMA 模型,然后保留标准化 BIC 最小的那个。长度小于 max(20, 3 × 周期性) 的序列只考虑指数平滑,与 SPSS 的规定一致。

会和 SPSS 选出同一个模型吗?

指数平滑通常一致,ARIMA 则不保证。SPSS 的 ARIMA 识别规则没有公开,这里由季节强度和 KPSS 检验决定差分,再用逐步 BIC 搜索确定阶数;“候选模型”表的脚注对此有说明。

标准化 BIC 是什么意思?

它等于 ln(MSE) + k·ln(n)/n,即均方误差的对数加上参数个数的惩罚项。数值越小越好,只能在同一序列上拟合的模型之间比较。

能直接用受访者层面的调查数据做预测吗?

可以。在第 1 步选择日期或波次列,面板会为每期生成一个值(平均值、总和或某类别百分比),并应用个案权重。之后模型把每期的值视为一个观测。

为什么 Winters 乘法模型没有预测区间?

预测区间由各模型等价的 ARIMA 形式推导,而 Winters 乘法模型没有这种形式,因此只给出点预测。

用你自己的数据运行时间序列预测(专家建模器)

打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。

打开分析工作区

SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。