美文网首页
指数平滑法的思考

指数平滑法的思考

作者: 巴拉巴拉_9515 | 来源:发表于2019-08-02 13:43 被阅读0次

指数平滑法本质究竟是什么?
是一种数据转换方式?还是一种拟合预测算法?

从原理来讲,指数平滑法给每个历史数据赋权

指数平滑法核心原理是认为过去的状态在某种程度上会持续到未来。因此指数平滑法就是对历史数据的权重分配,使得新数据有较大权重,旧数据给与较小权重,预测值根据历史数据和权重获得。

从应用上讲,指数平滑法可用于修匀序列,也可用于预测。

指数平滑法中平滑系数的选择研究一文中指出[1]:
指数平滑法的作用主要体现在两个方面:一是用于预测,二是用于修匀历史数据,以测定时间序列的长期趋势。

一、作用

(1)修匀历史数据

有些场景只是想要获得整体趋势,忽略不规则和随机扰动的影响。例如经济总体趋势、消费发展趋势等。
通过对非正常波动的统计数据进行修匀,能使序列反映其基本的发展趋势,从而得出正确的判断,这有助于我们准确把握经济形势[2]。

下图为不同平滑系数的情况下,趋势数列和原数列的关系。参数\alpha
值越小,序列趋势越明显,随着\alpha值的增大,修匀数据的能力有降低的趋势。

从修匀数据的角度而言,目标是获得整体平稳趋势,参数\alpha应该取小一些。

(2)预测

从预测角度,预测值和观察值越接近,预测效果越好。

二、相关公式

指数平滑法就是对历史数据的权重分配,使得新数据有较大权重,旧数据给与较小权重,根据平滑次数的不同,分为一指数平滑、二指数平滑、三指数平滑等。

设时间序列为x_1,x_2,...,x_nt为第t个时刻。

(1)一指数平滑法[4]

平滑公式:S_t^{(1)} = \alpha x_t+(1-\alpha)S_{t-1}^{(1)}
预测公式:x’_{t+1} = S_t^{(1)}= \alpha x_t + (1-\alpha) x'_{t}

平滑公式:

初始值S_1^{(1)}根据序列的长度,可以直接取S_1^{(1)}=x_1,也可以取前几个X的均值。
S_1^{(1)}=x_1
S_2^{(1)} = \alpha x_2+(1-\alpha)S_1^{(1)}
S_3^{(1)} = \alpha x_3+(1-\alpha)S_2^{(1)} = \alpha x_3+ \alpha(1-\alpha) x_2 + (1-\alpha) ^2 S_1^{(1)}
S_4^{(1)} = \alpha x_4+(1-\alpha)S_3^{(1)} = \alpha x_4+ \alpha(1-\alpha) x_3+ \alpha (1-\alpha) ^2 x_2 + (1-\alpha) ^3 S_1^{(1)}
···
S_n^{(1)} = \alpha x_n+ \alpha(1-\alpha) x_{n-1}+...+ \alpha (1-\alpha) ^{n-2} x_2 + (1-\alpha) ^{n-1} S_1^{(1)}
拆解平滑公式后发现,指数平滑值S_t为前t个历史值x_1,...,x_t的权重组合。(1-\alpha)为小数,指数次幂越大,值越小,从而使得新数据有较大权重,旧数据给与较小权重。

(2)二指数平滑法

二次指数平滑是在一次指数平滑的基础上再做一次平滑。
原始数据[x_1,x_2,...,x_n]进行一次平滑操作后为[S_1^{(1)},S_2^{(1)},...,S_n^{(1)}]
[S_1^{(1)},S_2^{(1)},...,S_n^{(1)}]再进行一次平滑操作为[S_1^{(2)},S_2^{(2)},...,S_n^{(2)}]

平滑公式:S_t^{(2)} = \alpha S_t^{(1)}+(1-\alpha)S_{t-1}^{(2)}
参考以上推理展开后应该为:
S_1^{(2)} = S_t^{(1)}
S_2^{(2)} = \alpha S_2^{(1)} + (1-\alpha) S_1^{(2)}
S_3^{(2)} = \alpha S_3^{(1)} + (1-\alpha) S_2^{(2)} = \alpha S_3^{(1)} + \alpha (1-\alpha) S_2^{(1)} + (1-\alpha)^2 S_1^{(2)}
···
S_n^{(2)} = \alpha S_n^{(1)} + \alpha (1-\alpha) S_{t-1}^{(1)} +...+ \alpha (1-\alpha) ^{n-2}S_{t-1}^{(1)} + (1-\alpha)^{n-1} S_1^{(2)}
二次指数平滑在一次指数平滑的基础上再做一次平滑。

(3)三指数平滑法

原始数据[x_1,x_2,...,x_n]进行一次平滑操作后为[S_1^{(1)},S_2^{(1)},...,S_n^{(1)}]
[S_1^{(1)},S_2^{(1)},...,S_n^{(1)}]再进行一次平滑操作为[S_1^{(2)},S_2^{(2)},...,S_n^{(2)}]
[S_1^{(2)},S_2^{(2)},...,S_n^{(2)}]再进行一次平滑操作为[S_1^{(3)},S_2^{(3)},...,S_n^{(3)}]

三、和拟合算法的比较

f(x)=a_1x_1+a_2x_2+...+a_nx_n,求的最优的[a_1,a_2,...,a_n]组合,此时的f(x)就是拟合的曲线。这条曲线要尽可能的还原实际数据的游走模式。

而在指数平滑中,每个x_1的权重根据新数据有较大权重,旧数据给与较小权重快速分配,获得的曲线是实际数据修匀后的结果。

四、最优参数alpha

五、小结

  • 指数平滑法“修匀"历史数据,获得基本数据模式,从而预测走向。
  • 指数平滑法并不单纯是一种数据转换方式
  • 指数平滑法不是拟合算法,拟合算法是让曲线尽可能的与历史数据相近、指数平滑是忽略随机扰动,获得历史数据的基础走势。
  • 拟合算法的预测是在获得最优拟合函数的基础上预测下一刻数值,而指数平滑法是在“修匀"数据的基础上预测下一步。

参考资料

[1] 指数平滑法中平滑系数的选择研究_王长江:https://wenku.baidu.com/view/1eca108590c69ec3d5bb75fd.html
[2] 非正常波动统计数据修匀方法研究以福建省消费数据为例:https://www.doc88.com/p-899246394173.html
[3] 指数平滑法在小浪底大坝变形预测中的应用:https://www.jinchutou.com/p-31051887.html
[4] 公式参考:https://wenku.baidu.com/view/8389e62a4b73f242336c5ff2.html

相关文章

  • 指数平滑法的思考

    指数平滑法本质究竟是什么?是一种数据转换方式?还是一种拟合预测算法? 从原理来讲,指数平滑法给每个历史数据赋权 指...

  • 指数平滑法

    求平滑值的方法实现起来非常简单⬇️ 调用一次就是一阶,一阶结果当输入出来就是二阶。定义一个关联类型吧。省的哪天输入...

  • 值得推广的指数平滑法

    为了进行库存预测,我又看了一下关于库存预测方法的书,其中大家都比较推荐时间序列的预测,尤其是指数平滑法。 我仔细看...

  • 时间序列趋势指数平滑法

    1、单指数平滑(一个参数:加权因子) 实质上就是自适应预期模型,适用于序列值在一个常数均值上下随机波动的情况,无趋...

  • 时间序列分析-指数平滑法

    一次指数平滑 若序列波动较大,取值为0.6~0.8,提高预测的灵敏度;若数据较平稳,取值为0.1~0.5,减少修正...

  • 时序检测算法--指数平滑法

    http://www.dataguru.cn/article-3235-1.html所有移动平均法都存在很多问题。...

  • 马尔科夫预测说明

    SPSSAU-在线SPSS分析软件 根据已经有数据进行预测的研究方法有很多,包括arima模型、指数平滑法、灰色预...

  • 一文读懂“指数平滑模型”

    针对时间序列的预测,常用方法包括灰色预测,指数平滑或ARIMA模型。灰色预测和指数平滑常用于数据序列较少时使用,且...

  • 指数平滑方法深度解析(一次二次三次)

    CSDN同步参考链接 指数平滑方法说起来感觉挺简单的,不就是几期求均值吗,但是你知道在Eviews里做指数平滑模型...

  • 预测算法 ---------- 指数平滑

    基本思路:最近的过去态势,在某种程度上会持续的未来。指数平滑法是移动平均法中的一种,其特点在于给过去的观测值不一样...

网友评论

      本文标题:指数平滑法的思考

      本文链接:https://www.haomeiwen.com/subject/swykdctx.html