针对时间序列的预测,常用方法包括灰色预测,指数平滑或ARIMA模型。灰色预测和指数平滑常用于数据序列较少时使用,且一般只适用于中短期预测。指数平滑可继续拆分为一次平滑,二次平滑和三次平滑,一次平滑法为历史数据的加权预测,二次平滑法适用于具有一定线性趋势的数据,三次平滑法在二次平滑法基础上再平滑一次,其适用于具有一定曲线趋势关系时使用,通常情况下使用三次平滑法较多。
无论是那种平滑法,其均涉及初始值S0和平滑系数alpha共两个参数值,初始值是平滑的最初起点值,一般取数据前1期,2期,3期,4期或5期的平均值作为初始值,如果数据序列越少则初始值S0应该取更多前几期的平均值,因为数据序列较少时前期的重要性相对较高。针对alpha值参数,其意义在于数据的权重,平滑值计算公式为:平滑值=alpha*当期值+(1-alpha)*上期平滑值。alpha值越大意味着当期数据所占的权重越高而上期平滑值所占权重越低,alpha=0意味着平滑值就完全等于上期平滑值;alpha=1意味着平滑值等于当期值。如果说数据波动不大,一般alpha值取的较小些比如0.1~0.5之间,如果数据波动较大且alpha值取值相对较大些,比如0.6~0.8之间。
关于三种平滑法,初始值S0和alpha值的说明如下表:
项 | 说明 |
---|---|
平滑方法 | 一次平滑法使用频率最低,仅为历史数据加权计算进行预测 |
二次平滑法适用于具有一定线性趋势数据 | |
三次平滑法适用于具有一定曲线趋势数据 | |
如果不设置,SPSSAU自动运行三种平滑方法,选择最优效果时对应的平滑方法 | |
初始值S0 | 样本<10,则取前3期平均值 |
10<=样本<=20,取前2期平均值 | |
样本>20,取前1期(第1期)平均值 | |
如果不设置,SPSSAU自动按上述标准进行 | |
平滑系数alpha | 数据波动大则alpha取0.1~0.5之间 |
数据波动小则alpha取0.6~0.8之间 | |
如果不设置alpha,SPSAU默认会遍历各种alpha取值时数据效果,选择最优效果时对应的alpha值 |
如果不设置平滑方法,SPSSAU会自动遍历不同组合的平滑方法,找出最优效果时对应的平滑方法;
如果不设置初始值S0,SPSSAU自动按照样本量情况设置初始值S0;
如果不设置平滑系数alpha,SPSSAU自动遍历各种alpha取值情况,并且选择最优效果时对应的alpha值。
当前有某省1978~1988年全民所有制固定资产投资额数据,共计11年数据,数据如下表,现希望预测出1989和1990年的固定资产投资总额数据:
年份 | 固定资产投资(亿) |
1978 | 20.04 |
1979 | 20.06 |
1980 | 25.72 |
1981 | 34.61 |
1982 | 51.77 |
1983 | 55.92 |
1984 | 80.65 |
1985 | 131.11 |
1986 | 148.58 |
1987 | 162.67 |
1988 | 232.260 |
指数平滑法时,共分为三种类型,分别是一次,二次和三次指数平滑预测。一般情况下使用三次指数平滑法较多。同时需要设置初始值S0和平滑系数alpha值。
关于三种平滑法,初始值S0和alpha值的说明如下表:
项 | 说明 |
---|---|
平滑方法 | 一次平滑法使用频率最低,仅为历史数据加权计算进行预测 |
二次平滑法适用于具有一定线性趋势数据 | |
三次平滑法适用于具有一定曲线趋势数据 | |
如果不设置,SPSSAU自动运行三种平滑方法,选择最优效果时对应的平滑方法 | |
初始值S0 | 样本<10,则取前3期平均值 |
10<=样本<=20,取前2期平均值 | |
样本>20,取前1期(第1期)平均值 | |
如果不设置,SPSSAU自动按上述标准进行 | |
平滑系数alpha | 数据波动大则alpha取0.1~0.5之间 |
数据波动小则alpha取0.6~0.8之间 | |
如果不设置alpha,SPSAU默认会遍历各种alpha取值时数据效果,选择最优效果时对应的alpha值 |
默认情况下,3个参数均不设置时,SPSSAU会自动按照标准设置初始值S0,并且遍历3种方法和11种平滑系数,得到3*11=33种组合时的RMSE(均方根误差值),并且标识出哪种情况下RMSE最低,并且输出该最优效果时的拟合数据等。通常建议非专业人员不用设置该3项参数,如果是专业人员可自行修改参数设置并且得到对应的预测数据等。
关于自动化选择时的组合情况如下表:
组合 | 初始值S0 | alpha值 | 平滑类型 | 输出RMSE个数 |
1 | 手 | 手 | 手 | 1 |
2 | 手 | 手 | 自动 | 3 |
3 | 手 | 自动 | 手 | 11 |
4 | 手 | 自动 | 自动 | 33 |
5 | 自动 | 手 | 手 | 1 |
6 | 自动 | 手 | 自动 | 3 |
7 | 自动 | 自动 | 手 | 11 |
8 | 自动 | 自动 | 自动 | 33 |
本例子默认不进行参数设置,让SPSSAU自动输出结果,操作如下:
SPSSAU共输出3个表格和1个模型拟合预测图。分别为:
参数设置情况
均方根误差值RMSE
模型预测值表格
模型拟合和预测(图)
参数设置情况 | ||
项 | 类型 | 模型具体值 |
初始值S0 | 自动 | 20.050 |
alpha值 | 自动 | 0.400 |
平滑类型 | 自动 | 三次平滑 |
上表格展示出默认的设置情况,3个参数值均让SPSSAU自动进行。最终SPSSAU自动选择出三次平滑法为最优模型,并且初值自动设置为20.05,alpha值自动选定为0.4,基于此种自动选择,最终模型的均方根误差值RMSE为18.8,如下表格。
由于本案例3个参数值包括平滑类型,初始值S0和alpha值,均让SPSSAU自动选择,SPSSAU自动设置初值为20.05,并在此基础上遍历3种情况及11种alpha值共计33种组合时,输出33种组合时对应的RMSE值,找出当初始值为20.05,且alpha值为0.4且进行三次平滑时得到的模型结果最优。上表格中用蓝色标识出最优时的组合。并且进行模型预测结果如下表:
从上表格可以看出:向后1期即1989年的固定资产投资预测为270.8亿,且1990年的固定资产投资预测为321.526。并且得到预测效果拟合图如下。
涉及以下几个关键点,分别如下:
一次平滑法为历史数据的加权预测,二次平滑法适用于具有一定线性趋势的数据,三次平滑法在二次平滑法基础上再平滑一次,其适用于具有一定曲线趋势关系时使用,通常情况下使用三次平滑法较多。建议全部自动,让SPSSAU自动找出最优的平滑类型即可。
针对初始值S0的设置标准建议参照如下:
样本<10,则取前3期平均值
10<=样本<=20,取前2期平均值
样本>20,取前1期(第1期)平均值
如果不设置初始值S0,SPSSAU自动按上述标准进行
针对平滑系数alpha的设置建议上,
数据波动大则alpha取0.1~0.5之间
数据波动小则alpha取0.6~0.8之间
如果不设置alpha,SPSAU默认会遍历各种alpha取值时数据效果,选择最优效果时对应的alpha值
SPSSAU自动进行遍历各种组进行模型预测,并且计算RMSE值,该值越小越好,越小意味着真实数据和拟合数据的gap越小。SPSSAU找出最小的RMSE值对应的参数组合,即为最优模型。
如果是自动找出最优模型,SPSSAU是结合RMSE值进行选择判断,其计算上为Sqrt(平方残差平方和),残差指真实值和预测值的差值。
如果是指数平滑法为一次平滑时,算法上只支持输出1个预测值。建议可更换成比如二次或三次平滑法等。
RMSE(均方根误差),其表示模型拟合后的平均残差情况如何,即模型拟合后真实值与预测值之间的偏差有多大,该值越小越好;
MSE(均方误差),其表示模型拟合后的平均残差平方值如何,MSE开根号即为RMSE值,该值越小越好;
MAE(平均绝对误差),其为残差的绝对值之和,然后求平均值,其表示平均偏差是多大,与RMSE的意义基本一致,该值越小越好;
MAPE(平均绝对百分比误差),其为残差除以真实值的绝对值之和,然后求其平均。该值为相对指标值,其表示预测值与真实值之间gap平均偏离真实值的比例情况,比如为0.2,其表示平均偏离真实值20%左右,该值越小越好,并且该指标值具有比较意义,不同模型之间均可对比该值的相对大小,进而衡量模型优劣情况。