Arima 模型在 SPSS 中的操作
ARIMA 是自动回归积分滑动平均模型,它主要使用与有
长期趋势与季节性波动的时间序列的分析预测中。
ARIMA 有 6 个参数,ARIMA (p,d,q)(sp,sd,sq),后三个
是主要用来描述季节性的变化,前三个针对去除了季节性变
化后序列。为了避免过度训练拟合,这些参数的取值都很小。
p 与 sp 的含义是一个数与前面几个数线性相关,这两参数大
多数情况下都取 0, 取 1 的情况很少,大于 1 的就几乎绝种
了。d 与 sd 是差分,difference,d 是描述长期趋势,sd 是
季节性变化,这两个参数的取值几乎也都是 0,1,2,要做
几次差分就取几作值。q 与 sq 是平滑计算次数,如果序列变
化特别剧烈,就要进行平滑计算,计算几次就取几做值,这
两个值大多数情况下总有一个为 0,也很少超过 2 的。
ARIMA 的思路很简单,首先用差分去掉季节性波动,然
后去掉长期趋势,然后平滑序列,然后用一个线性函数+白
噪声的形式来拟合序列,就是不断的用前 p 个值来计算下一
个值。
用 SPSS 来做 ARIMA 大概有这些步骤:
1 定义日期,确定季节性的周期,菜单为 Data-Define dates
2 画序列图来观察数值变化,菜单为 Graph-sequence / Time
Series - autoregressive
3 若存在季节性波动,则做季节性差分,Graph- Time Series
- autoregressive,先做一次,返回 2 观察,如果数列还存
在季节性波动,就再做一次,需要做几次,sd 就取几
4 若观察到差分后的数列中有某些值远远大于平均值,则需
要做平滑,做几次 sq 就取几
5 然后看是否需要做去除长期趋势的差分,确定 p 与 sp
6 然后在 ARIMA 模型中测试是否存在其他属性影响预测属性,
如果 Approx sig 接近 0,则说明该属性可以加入模型,作为
独立变量,值得注意的是,如果存在突变,可以根据情况自
定义变量,这个在判断突变的原因比重时特别有用。
7 然后用以确定的参数与独立变量进行拟合预测。
8 最后,用 Graph- Time Series - autoregressive 来判断
一下拟合产生的误差 ERR,如果不存在明显特征,可以看作
是无规律的随机白噪声,就可以认为建模成功。
9 最后使用 ARIMA 模型进行预测即可
感觉在电信行业的 KPI 预测中,最有应用前景的是第六步,
除了可以找到那些变量对目标值有影响外,还能确定在目标
属性的变化中,不同原因的影响比例,如多少程度是由于竞
争对手的失误,多少程度是因为自己表现好,多少程度是因
为市场大环境变化了。此外,通过预测值,可以指导计划的
编制和指标的制定,还能起到一点业务预警的作用。