SPSS 命令: SPSS EXSMOOTH
带参数网格搜索的指数平滑
指数平滑用过去值的加权平均来预测序列,水平、趋势和季节各有自己的权重。
免费 · 无需注册 · 文件留在本机 · 更新于 2026年10月18日
能告诉你什么
Crosstabs 运行与 SPSS EXSMOOTH 对应的过程:选择趋势(无、线性、指数、阻尼)和季节(无、加法、乘法),然后在 SPSS 默认网格上尝试所有组合,找出误差平方和最小的权重。
- 哪组平滑权重(alpha、gamma、delta、phi)使一步预测误差平方和最小。
- 拟合结果对权重有多敏感:网格上误差平方和最小的十个组合。
- 递推起点的初始水平和初始趋势。
- 一步预测有多准确:平均误差、MAE、MAPE、误差平方和、均方根误差和 Durbin-Watson。
- 未来若干期的预测值;加法和线性趋势模型还附有预测区间。
适用场景
适合使用
- 希望预测方法透明、易于解释:越近的期权重越大,越远的期权重越小。
- 已经了解序列形态(例如线性趋势加稳定的月度模式),想按 EXSMOOTH 的设定重现模型。
- 想手动固定权重,与之前的 SPSS 结果对比:取消网格搜索并直接输入权重。
改用其他方法
- 不确定该选哪种趋势和季节:让 TSMODEL 的专家建模器按标准化 BIC 比较模型。
- 序列中有缺失:EXSMOOTH 需要完整序列,可在第 1 步用插值填补缺失时间点,或改用 ARIMA。
- 平滑后仍有自相关,或需要对系数做检验:ARIMA 模型更合适。
在 Crosstabs 中如何操作
- 01
打开指数平滑
在“统计”模式下,从“预测”组中选择“指数平滑”(EXSMOOTH)。
- 02
定义时间轴
按日期或波次列把行分组为各期,或把每行作为一个时间点。季节模型要求“周期性”不小于 2,且至少有两个完整周期。
- 03
选择序列、趋势和季节性
选择“序列”,然后将“趋势”设为无、线性、指数或阻尼,将“季节性”设为无、加法或乘法,共十二种模型。
- 04
搜索或固定权重
保持勾选“对参数进行网格搜索(SPSS 默认网格)”,或取消勾选后输入 Alpha(水平)、Gamma(趋势)、Delta(季节)和 Phi(阻尼)。
- 05
设置预测期数并运行
输入未来期数(默认 6)并点击“运行”。图表叠加显示观测值、一步拟合值和预测值。
计算示例
以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。
数据
48 个模拟月度数据(2022 年 1 月至 2025 年 12 月),为某品牌追踪指标的百分比:起点 40,每月上升 0.25 个百分点,叠加 12 月最高、7 月最低的固定季节模式,以及由固定随机种子生成的正态噪声(标准差 1.1),每次构建得到相同序列。
| 参数 | 值 |
|---|---|
| Alpha(水平) | 0.10 |
| Gamma(趋势) | 0.00 |
| Delta(季节) | 0.00 |
| 初始水平(S0) | 40.324 |
| 初始趋势(T0) | 0.246 |
| 误差平方和 | 56.767 |
趋势:线性;季节性:加法。在 396 个组合上进行网格搜索(SPSS 默认网格)。
| 统计 | 值 |
|---|---|
| 平均误差 | −0.095 |
| 平均绝对误差 | 0.821 |
| 平均绝对百分比误差 | 1.806 |
| 均方根误差 | 1.087 |
| Durbin-Watson | 2.121 |
| 时间点 | 预测 | LCL(95%) | UCL(95%) |
|---|---|---|---|
| 2026-01 | 52.91 | 50.70 | 55.11 |
| 2026-02 | 52.92 | 50.71 | 55.13 |
| 2026-03 | 53.06 | 50.84 | 55.28 |
| 2026-04 | 52.72 | 50.48 | 54.95 |
| 2026-05 | 50.53 | 48.29 | 52.78 |
| 2026-06 | 50.64 | 48.39 | 52.90 |
结果解读
线性趋势加加法季节的 Holt-Winters 平滑通过尝试全部 396 个权重组合来拟合;一步预测误差平方和最小(56.77)的组合为 alpha = 0.1、gamma = 0.0、delta = 0.0。趋势与季节权重为 0,表示二者都保持初始估计不变,适合斜率稳定、季节模式不变的序列。一步预测平均偏差 0.82 个百分点(MAPE 1.81%),2026-01 的预测值为 52.91。
输出表格说明
- 模型参数
- 选定的权重、初始水平 S0 和初始趋势 T0,以及误差平方和。脚注说明网格大小,或注明权重由用户固定。
- 最小误差平方和
- 网格中最优的十个权重组合。如果多行的误差平方和几乎相同,说明权重难以精确确定。
- 误差统计
- 一步预测拟合的平均误差、平均绝对误差、平均绝对百分比误差、误差平方和、均方根误差和 Durbin-Watson。Durbin-Watson 明显偏离 2 表示误差存在自相关。
- 预测
- 各未来期的预测值。预测区间是 SPSS EXSMOOTH 不输出的附加内容,由模型的误差修正形式推导;指数趋势或乘法季节模型不提供区间。
前提假设与注意事项
- 序列在观测区间内没有缺失值。
- 指数趋势和乘法季节要求所有值为正。
- 初始季节因子来自对序列的 SEASON 分解,因此季节模型至少需要两个完整周期。
- 网格搜索找到的是网格上的最优点,而非连续最优解;TSMODEL 则对权重做连续优化。
结果如何验证
对全部十二种趋势 × 季节组合,初始水平与初始趋势(精确到小数点后 10 位)、固定权重下的拟合值(误差 1e-10 以内)以及网格搜索的最优误差平方和与 alpha,均与按 SPSS 手册递推公式独立编写的 Python 实现对照验证。对加法季节和非季节趋势模型,这些递推结果又与相同初始状态下的 statsmodels ExponentialSmoothing 对照,误差在 1e-10 以内。 验证证据(英文)
常见问题
alpha、gamma、delta 和 phi 分别起什么作用?
alpha 更新水平,gamma 更新趋势,delta 更新季节因子,phi 让趋势逐渐衰减。接近 1 时对最新数据反应迅速;接近 0 时该成分几乎保持不变。
网格搜索使用什么网格?
SPSS 默认网格:alpha 从 0 到 1、步长 0.1;gamma 和 delta 从 0 到 1、步长 0.2;phi 从 0.1 到 0.9、步长 0.2。只搜索所选模型实际用到的权重。
季节性选加法还是乘法?
水平变化时季节波动幅度大致不变,选加法;季节波动随水平按比例变大,选乘法。乘法要求数值为正。
为什么我的预测没有区间?
SPSS EXSMOOTH 本身不输出区间。Crosstabs 在模型具有加法误差修正形式时补充区间;指数趋势或乘法季节模型只给出点预测。
它与 TSMODEL 中的指数平滑有何不同?
EXSMOOTH 在固定网格上搜索,并从基于 SEASON 的初始值开始,与 SPSS EXSMOOTH 命令一致。TSMODEL 对权重做连续优化、反向推算初始状态,并报告标准误和标准化 BIC。
相关过程
用你自己的数据运行指数平滑
打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。
SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。