1 指数平滑法
移动平均模型在解决时间序列问题上简单有效,但它们的计算比较难,因为不能通过之前的计算结果推算出加权移动平均值。此外,移动平均法不能很好的处理数据集边缘的数据变化,也不能应用于现有数据集的范围之外。因此,移动平均法的预测效果相对较差。
指数平滑法(exponential smoothing)是一种简单的计算方案,可以有效的避免上述问题。按照模型参数的不同,指数平滑的形式可以分为一次指数平滑法、二次指数平滑法、三次指数平滑法。其中一次指数平滑法针对没有趋势和季节性的序列,二次指数平滑法针对有趋势但是没有季节特性的时间序列,三次指数平滑法则可以预测具有趋势和季节性的时间序列。术语“Holt-Winter”指的是三次指数平滑。
2 Holt-Winter分类
Holt-Winter指数平滑法按照季节性分量的计算方式不同,可以分为累加式季节性分量和累乘式季节性分量。两种不同的分量对应的时间序列计算等式和预测公式均不同,稍后我们会详细介绍。
3 一次指数平滑法
指数平滑法是一种结合当前信息和过去信息的方法,新旧信息的权重由一个可调整的参数控制,各种变形的区别之处在于其“混合”的过去信息量的多少和参数的个数。
常见的有单指数平滑、双指数平滑。它们都只有一个加权因子,但是双指数平滑使用相同的参数将但指数平滑进行两次,适用于有线性趋势的序列。单指数平滑实质上就是自适应预期模型,适用于序列值在一个常数均值上下随机波动的情况,无趋势及季节要素的情况,单指数平滑的预测对所有未来的观测值都是常数。
一次指数平滑的递推关系公式:
其中,s_i是第i步经过平滑的值,x_i是这个时间的实际数据。alpha是加权因子,取值范围为[0,1],它控制着新旧信息之间的权重平衡。当alpha接近1时,我们就只保留当前数据点(即完全没有对序列做平滑操作),当alpha接近0时,我们只保留前面的平滑值,整个曲线是一条水平的直线。在该方法中,越早的平滑值作用越小,从这个角度看,指数平滑法像拥有无限记忆且权值呈指数级递减的移动平均法。
一次指数平滑法的预测公式为:
因此,一次指数平滑法得到的预测结果在任何时候都是一条直线。并不适合于具有总体趋势的时间序列,如果用来处理有总体趋势的序列,平滑值将滞后于原始数据,除非alpha的值非常接近1,但这样使得序列不够平滑。
4 二次指数平滑法
二次指数平滑法保留了平滑信息和趋势信息,使得模型可以预测具有趋势的时间序列。二次指数平滑法有两个等式和两个参数:
t_i代表平滑后的趋势,当前趋势的未平滑值是当前平滑值s_i和上一个平滑值s_{i-1}的差。s_i为当前平滑值,是在一次指数平滑基础上加入了上一步的趋势信息t_{i-1}。利用这种方法做预测,就取最后的平滑值,然后每增加一个时间步长,就在该平滑值上增加一个t_{i}:
在计算的形式上这种方法与三次指数平滑法类似,因此,二次指数平滑法也被称为无季节性的Holt-Winter平滑法。
5 Holt-Winter指数平滑法
三次指数平滑法相比二次指数平滑,增加了第三个量来描述季节性。累加式季节性对应的等式为:
累乘式季节性对应的等式为:
其中p_i为周期性的分量,代表周期的长度。x_{i+h}为模型预测的等式。
参考文献:
[1] 时间序列挖掘-预测算法-三次指数平滑法(Holt-Winters). http://www.dataguru.cn/article-3235-1.html.
[2] R语言与数据分析之九:时间内序列--HoltWinters指数平滑法. http://blog.csdn.net/howardge/article/details/42076781.
[3] Holt-Winters原理和初始值的确定. http://www.cnblogs.com/xuanlvshu/p/5451974.html.
网友评论