指数平滑法分析

针对时间序列的预测,常用方法包括灰色预测,指数平滑或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值。

指数平滑法案例

  • 1、背景

    当前有某省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
  • 2、理论

    指数平滑法时,共分为三种类型,分别是一次,二次和三次指数平滑预测。一般情况下使用三次指数平滑法较多。同时需要设置初始值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
  • 3、操作

    本例子默认不进行参数设置,让SPSSAU自动输出结果,操作如下:

  • 4、SPSSAU输出结果

    SPSSAU共输出3个表格和1个模型拟合预测图。分别为:

    • 参数设置情况

    • 均方根误差值RMSE

    • 模型预测值表格

    • 模型拟合和预测(图)

  • 5、文字分析

    参数设置情况
    类型 模型具体值
    初始值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。并且得到预测效果拟合图如下。

  • 6、剖析

    涉及以下几个关键点,分别如下:

    • 一次,二次和三次平滑法如何选择?
    • 一次平滑法为历史数据的加权预测,二次平滑法适用于具有一定线性趋势的数据,三次平滑法在二次平滑法基础上再平滑一次,其适用于具有一定曲线趋势关系时使用,通常情况下使用三次平滑法较多。建议全部自动,让SPSSAU自动找出最优的平滑类型即可。

    • 初始值S0如何设置?
    • 针对初始值S0的设置标准建议参照如下:

    • 样本<10,则取前3期平均值

    • 10<=样本<=20,取前2期平均值

    • 样本>20,取前1期(第1期)平均值

    • 如果不设置初始值S0,SPSSAU自动按上述标准进行

    • 平滑系数alpha值如何设置?
    • 针对平滑系数alpha的设置建议上,

    • 数据波动大则alpha取0.1~0.5之间

    • 数据波动小则alpha取0.6~0.8之间

    • 如果不设置alpha,SPSAU默认会遍历各种alpha取值时数据效果,选择最优效果时对应的alpha值

    • SPSSAU自动找出最优结果的原理是什么?
    • SPSSAU自动进行遍历各种组进行模型预测,并且计算RMSE值,该值越小越好,越小意味着真实数据和拟合数据的gap越小。SPSSAU找出最小的RMSE值对应的参数组合,即为最优模型。

    • 指数平滑法时如何计算RMSE值?
    • 如果是自动找出最优模型,SPSSAU是结合RMSE值进行选择判断,其计算上为Sqrt(平方残差平方和),残差指真实值和预测值的差值。

    • 指数平滑法为什么只有1个预测值?
    • 如果是指数平滑法为一次平滑时,算法上只支持输出1个预测值。建议可更换成比如二次或三次平滑法等。

疑难解惑

  • RMSE、MSE、MAE和MAPE这4个指标分别什么意义?
  • RMSE(均方根误差),其表示模型拟合后的平均残差情况如何,即模型拟合后真实值与预测值之间的偏差有多大,该值越小越好;

  • MSE(均方误差),其表示模型拟合后的平均残差平方值如何,MSE开根号即为RMSE值,该值越小越好;

  • MAE(平均绝对误差),其为残差的绝对值之和,然后求平均值,其表示平均偏差是多大,与RMSE的意义基本一致,该值越小越好;

  • MAPE(平均绝对百分比误差),其为残差除以真实值的绝对值之和,然后求其平均。该值为相对指标值,其表示预测值与真实值之间gap平均偏离真实值的比例情况,比如为0.2,其表示平均偏离真实值20%左右,该值越小越好,并且该指标值具有比较意义,不同模型之间均可对比该值的相对大小,进而衡量模型优劣情况。