指数平滑算法算法
❶ 指数平滑法的具体应用
指数平滑法一般有一次指数平滑法、二次指数平滑法和三次指数平滑法。指数平滑法的预测模型为:
初始值的确定,即第一期的预测值。一般原数列的项数较多时(大于15项),可以选用第一期的观察值或选用比第一期前一期的观察值作为初始值。如果原数列的项数较少时(小于15项),可以选取最初几期(一般为前三期)的平均数作为初始值。指数平滑方法的选用,一般可根据原数列散点图呈现的趋势来确定。如呈现直线趋势,选用二次指数平滑法;如呈现抛物线趋势,选用三次指数平滑法。或者,当时间序列的数据经二次指数平滑处理后,仍有曲率时,应用三次指数平滑法。 指数平滑法的计算中,关键是α的取值大小,但α的取值又容易受主观影响,因此合理确定α的取值方法十分重要,一般来说,如果数据波动较大,α值应取大一些,可以增加近期数据对预测结果的影响。如果数据波动平稳,α值应取小一些。理论界一般认为有以下方法可供选择:
经验判断法。这种方法主要依赖于时间序列的发展趋势和预测者的经验做出判断。
1、当时间序列呈现较稳定的水平趋势时,应选较小的α值,一般可在0.05~0.20之间取值;
2、当时间序列有波动,但长期趋势变化不大时,可选稍大的α值,常在0.1~0.4之间取值;
3、当时间序列波动很大,长期趋势变化幅度较大,呈现明显且迅速的上升或下降趋势时,宜选择较大的α值,如可在0.6~0.8间选值,以使预测模型灵敏度高些,能迅速跟上数据的变化;
4、当时间序列数据是上升(或下降)的发展趋势类型,α应取较大的值,在0.6~1之间。
试算法。根据具体时间序列情况,参照经验判断法,来大致确定额定的取值范围,然后取几个α值进行试算,比较不同α值下的预测标准误差,选取预测标准误差最小的α。
在实际应用中预测者应结合对预测对象的变化规律做出定性判断且计算预测误差,并要考虑到预测灵敏度和预测精度是相互矛盾的,必须给予二者一定的考虑,采用折中的α值。 以某软件公司A为例,给出2000-2005年的历史销售资料,将数据代入指数平滑模型,预测2006年的销售额,作为销售预算编制的基础。
根据经验判断法,A公司2000-2005年销售额时间序列波动很大,长期趋势变化幅度较大,呈现明显且迅速的上升趋势,宜选择较大的α值,可在0.5~0.8间选值,以使预测模型灵敏度高些,结合试算法取0.5,0.6,0.8分别测试。经过第一次指数平滑后,数列散点图呈现直线趋势,故选用二次指数平滑法即可。
根据偏差平方的均值(MSE)最小,即各期实际值与预测值差的平方和除以总期数,以最小值来确定α的取值的标准,经测算当α=0.6时,MSE1=1445.4;当α=0.8时,MSE2=10783.7;当α=0.5时,MSE3=1906.1。因此选择α=0.6来预测2006年4个季度的销售额。
❷ 指数平均数基础算法
要计算变量X的N日指数平滑移动平均,可以使用EMA函数,其公式表述为:EMA(X, N) = [2*X + (N-1)*Y']/(N+1),其中Y'代表上一周期的EMA值。
直观地理解,想象X是一个连续变化的序列,每天的值不同,用X1, X2, X3, ... Xn表示。例如:
- 当N=1时,EMA(X, 1)简化为X1,即简单算术平均。
- 当N=2时,EMA(X, 2)计算为(2/3)X2 + (1/3)X1,表示近两天的平均值,近值权重更大。
- 对于N=3,EMA(X, 3)计算为(1/2)X3 + (1/3)X2 + (1/6)X1,权重逐渐向后递减。
- 类似地,N=4时,为2/5*X4 + 3/10*X3 + 1/5*X2 + 1/10*X1,权重分配更偏向于近期值。
随着N值增加,近期内的X值权重逐渐增大,这反映了EMA函数对近期数据的重视,使得它能更及时地反映X值的波动趋势。
(2)指数平滑算法算法扩展阅读
指数平均数(EXPMA),其构造原理是对股票收盘价进行算术平均,并根据计算结果来进行分析,用于判断价格未来走势的变动趋势。