本篇将介绍在预测领域常用的基于时间序列预测的模型,包括移动平均、指数平滑两类,下一篇将进一步介绍回归应用。
一、移动平均
移动平均(Moving Average)是一种简单且常用的时间序列分析方法,用于平滑短期波动并突出长期趋势。它的原理是将过去一段时间的数据进行平均,以预测未来的值。常见的移动平均类型有简单移动平均(SMA)和加权移动平均(WMA) 。
1.1 简单移动平均(SMA)
假设我们有某产品过去 10 天的销售数据,如下:
| 日期 | 销售量 |
|---|---|
| 1 月 1 日 | 120 |
| 1 月 2 日 | 130 |
| 1 月 3 日 | 115 |
| 1 月 4 日 | 140 |
| 1 月 5 日 | 150 |
| 1 月 6 日 | 160 |
| 1 月 7 日 | 165 |
| 1 月 8 日 | 170 |
| 1 月 9 日 | 155 |
| 1 月 10 日 | 160 |
我们希望通过 3 天的简单移动平均来平滑数据并预测 1 月 11 日的销售量。
计算过程:
1 月 3 日的 SMA = (120 + 130 + 115) / 3 = 121.67
1 月 4 日的 SMA = (130 + 115 + 140) / 3 = 128.33
1 月 5 日的 SMA = (115 + 140 + 150) / 3 = 135.00
1 月 6 日的 SMA = (140 + 150 + 160) / 3 = 150.00
1 月 7 日的 SMA = (150 + 160 + 165) / 3 = 158.33
1 月 8 日的 SMA = (160 + 165 + 170) / 3 = 165.00
1 月 9 日的 SMA = (165 + 170 + 155) / 3 = 163.33
1 月 10 日的 SMA = (170 + 155 + 160) / 3 = 161.67
为了预测 1 月 11 日的销售量,我们可以使用最近的 3 天数据(1 月 8 日、1 月 9 日和 1 月 10 日)来计算:
1 月 11 日的 SMA = (170 + 155 + 160) / 3 = 161.67
通过 3 天的简单移动平均,我们可以预测 1 月 11 日的销售量为 161.67。该方法能够消除单日销量的波动影响,帮助企业平滑数据,从而更好地把握整体销售趋势。
总结
这种方法适合短期预测,但对于数据有明显趋势或季节性变化的场景,可能需要结合其他模型,如指数平滑或ARIMA模型,以提高预测精度。
1.2 加权移动平均(WMA)
加权移动平均法(Weighted Moving Average, WMA) 是一种时间序列预测方法,其核心思想是在计算平均值时,给不同时间点的历史数据赋予不同的权重。相比简单移动平均法对所有历史数据赋予相同权重,加权移动平均法给最近的数据分配更高的权重,而离当前时间较远的数据权重较低。
加权移动平均法的展开
加权移动平均法的公式为:
其中:
加权移动平均法通过分配权重,可以更灵活地控制历史数据在预测中的影响,越接近当前的历史数据,越能反映当前趋势,因此权重更高。
为什么越近的数据权重越高?
给较近的数据更高的权重,主要基于以下几点原因:
数据的时效性
越接近当前的历史数据通常更能反映当前的市场状态、消费趋势或业务环境。例如,在零售场景中,最近几天的销量受促销活动、天气、季节性等短期因素的影响较大,而这些因素可能无法通过较远的历史数据体现。因此,最近的数据更加贴近当前的业务现实,能够提供更准确的预测基础。
示例:在企业XX进行一次限时促销后,最近几天的销量大幅提升。相比于一个月前的数据,这些天的销量更能反映促销效果,帮助企业XX预测促销结束后的库存需求。为了更贴近现实,企业XX在加权移动平均法中给最近的几天更高的权重。
趋势的捕捉
最近的数据往往能够捕捉到最新的趋势或变化。如果销售趋势正在上升或下降,最近的数据会最明显地表现出这种变化。而更早的数据则可能包含旧的趋势,无法反映当前市场状况。因此,分配较高权重给最近的数据,有助于更快地响应趋势变化。
示例:假设企业XX的某款夏季饮品销量在夏季进入高峰期,最近几天销量增长迅速。如果仍然用过去一个月的均匀权重平均,可能无法及时反映这一增长趋势。因此,将最近几天的权重提高,可以让企业XX更快适应这一销售增长趋势,调整库存和营销策略。
减少噪声和波动影响
较远的数据往往包含一些历史波动或噪声(如季节性波动、假期影响),这些因素可能已经失去对当前预测的参考价值。加权移动平均法通过降低远期数据的权重,可以有效减少这些噪声的影响,集中关注更具参考价值的近期数据。
示例:假设企业XX在三个月前因为突发市场活动导致销量激增,而这种现象不会持续发生。如果给较远的历史数据较高权重,预测的结果可能受到不相关的历史异常值影响。通过加权移动平均法减少过去异常数据的影响,企业XX能够避免过度关注历史中的波动,而更关注当前的市场需求。
更灵活的预测调整
加权移动平均法提供了灵活性,能够根据业务需求和市场状况调整权重分配。如果零售商预期近期的市场变化影响较大,可以进一步增加最近数据的权重;如果市场较为稳定,也可以选择较为平滑的权重分布。因此,加权移动平均法能很好地适应不同情境下的预测需求。
示例:企业XX在即将进入一个新的季节时,预期近期市场会有较大波动,因此他们决定增加最近几天数据的权重,确保预测能够更快地捕捉到市场变化。
应用示例
假设企业XX正在预测未来一周某商品的销量,并且他们认为最近三天的数据更具代表性,因此希望使用加权移动平均法:
| 日期 | 销量 ( 件 ) |
|---|---|
| 第1天 | 300 |
| 第2天 | 320 |
| 第3天 | 330 |
| 第4天 | 310 |
| 第5天 | 340 |
企业XX决定给最近三天分配更高的权重
则:
由此,企业XX 可以预测该商品的未来销量为 329 件。通过给最近的几天更高的权重,他们能够更准确地反映当前的市场趋势。
总结
加权移动平均法的关键是通过分配不同的权重来强调最近的数据,因为这些数据能更好地反映当前的市场趋势和变化。权重的分配可以根据企业的需求进行调整,在平滑噪声的同时,确保捕捉到最新的趋势,这对于预测效果非常重要。
二、 指数平滑
**
**
指数平滑(Exponential Smoothing) 是一种常用的时间序列预测方法。与移动平均不同的是,指数平滑为最近的观测值赋予更高的权重,而较早的数据则权重较低。这种加权方式使得指数平滑能够更灵敏地捕捉数据的趋势和变化。
2.1 单指数平滑(Simple Exponential Smoothing)
假设我们有某产品过去 10 天的销售数据,如下:
| 日期 | 销售量 |
|---|---|
| 1 月 1 日 | 120 |
| 1 月 2 日 | 130 |
| 1 月 3 日 | 115 |
| 1 月 4 日 | 140 |
| 1 月 5 日 | 150 |
| 1 月 6 日 | 160 |
| 1 月 7 日 | 165 |
| 1 月 8 日 | 170 |
| 1 月 9 日 | 155 |
| 1 月 10 日 | 160 |
我们希望通过单指数平滑预测未来的销售量,并假设平滑系数(α)为 0.3。
单指数平滑公式:
计算过程:
初始化:
第一个预测值 F1 可以直接取第一个销售量的值(或用其他方法初始化),所以我们设定 F1=Y1=120。
根据公式,我们逐步计算接下来的预测值。
1 月 2 日的预测值:
1 月 3 日的预测值:
1 月 4 日的预测值:
1 月 5 日的预测值:
1 月 6 日的预测值:
1 月 7 日的预测值:
1 月 8 日的预测值:
1 月 9 日的预测值:
1 月 10 日的预测值:
总结:
预测了未来的销售量,并且1 月 10 日的预测值为 156.47。我们可以使用这个预测值作为1 月 11 日的预测基础。
优点:
响应快: 相比简单移动平均,指数平滑对于近期数据的变化更敏感,因此可以更快地适应市场的变化。
简单易用: 只需要一个平滑系数 α,计算相对简单。
适用场景:
单指数平滑适用于销售数据没有明显趋势或季节性的场景。如果数据有明显的趋势或季节性,可以使用双指数平滑或Holt-Winters模型进行更准确的预测。
2.2 双指数平滑(Double Exponential Smoothing)
双指数平滑(Double Exponential Smoothing)又称为 Holt's Method,是一种改进的指数平滑方法,能够处理具有趋势的时间序列数据。它通过引入两个平滑参数,分别用于平滑数据本身和趋势,从而在捕捉数据变化的同时也能适应趋势变化。
双指数平滑使用两个方程:
平滑水平:捕捉数据的总体水平。
平滑趋势:捕捉数据的趋势。
双指数平滑公式:
其中:
示例:双指数平滑
假设我们有某产品过去 10 天的销售数据,如下:
| 日期 | 销售量 |
|---|---|
| 1 月 1 日 | 120 |
| 1 月 2 日 | 130 |
| 1 月 3 日 | 115 |
| 1 月 4 日 | 140 |
| 1 月 5 日 | 150 |
| 1 月 6 日 | 160 |
| 1 月 7 日 | 165 |
| 1 月 8 日 | 170 |
| 1 月 9 日 | 155 |
| 1 月 10 日 | 160 |
我们使用双指数平滑来预测1 月 11 日的销售量,假设平滑系数 α=0.4 和趋势系数 β=0.3。
初始化:
计算过程:
依此类推,我们可以继续计算每一天的水平和趋势值,最后根据公式来预测未来的销售量。
预测 1 月 11 日的销售量:
总结:
通过双指数平滑,我们预测 1 月 11 日的销售量为 165.6。与单指数平滑相比,双指数平滑能够捕捉到数据中的趋势,并更准确地预测未来数据。
优点:
适应趋势: 相比单指数平滑,双指数平滑能够处理具有趋势的数据。
灵活: 可以通过调整 α和 β 参数控制模型对数据和趋势的敏感性。
双指数平滑适用于有明显趋势的销售数据预测。如果数据还存在季节性,进一步可以使用“三指数平滑(Holt-Winters)”来捕捉季节性波动。
2.3 三指数平滑(Holt-Winters)
Holt-Winters三指数平滑法是一种用于带有季节性、趋势和水平变化的时间序列的预测方法。它通过三种平滑系数来处理数据的这三类波动,是一种更复杂但有效的预测技术。
例子:某零售商的季度销售预测
假设一家零售商正在预测某一产品的季度销售额,该产品的销售受季度性因素(如节假日促销等)的影响,存在明确的季节性趋势。过去8个季度的销售数据如下:
| 季度 | 销量 ( 件 ) |
|---|---|
| Q1 | 800 |
| Q2 | 1200 |
| Q3 | 1500 |
| Q4 | 2000 |
| Q1 | 900 |
| Q2 | 1300 |
| Q3 | 1600 |
| Q4 | 2100 |
我们可以使用 Holt-Winters 三指数平滑法来预测接下来几个季度的销售量。
Holt-Winters模型的三个组件:
水平值 (L):表示数据序列的基本水平。
趋势值 (T):表示数据的趋势变化,即增长或减少的速率。
季节性成分 (S):表示季度内的周期性波动。
三指数平滑法包括以下公式:
其中:
步骤示意
初始化:根据前四个季度的数据,计算初始的水平 L0、趋势 T0 和季节性 S1,S2,S3,S4。
水平 L0:初始水平值可以用第一个周期的平均销售额。
趋势 T0:可以通过初始两个季度的平均变化率来估算。
季节性 S1,S2,S3,S4:可以通过初始几个周期的相对销售量进行估计。
更新:使用公式逐个季度更新水平、趋势和季节性,直到最后一个季度。
预测:通过公式预测未来的几个季度,考虑季度性变化和长期趋势。例如,要预测第9个季度的销售量,我们根据最新的水平、趋势和季节性数据预测。
具体预测
假设计算得出的平滑系数如下:
α=0.3
β=0.2
γ=0.4
并且初始的水平、趋势和季节性估算为:
L0=1375
T0=300 (每个季度的销售量增长约300件)
季节性因素为 S1=0.6,S2=1.0,S3=1.2,S4=1.6
要预测第9个季度的销售量,我们使用预测公式:
假设第8个季度的水平值 L8L_8 和趋势 T8T_8 通过公式已经更新,预测第9个季度的销售量:
如此类推,可以预测接下来几个季度的销售情况,依据季度性波动、趋势和水平的调整。
总结
**
**
Holt-Winters 三指数平滑法通过平滑水平、趋势和季节性这三个因素,能够有效地处理带有周期性波动的时间序列问题。这在零售、库存管理、销售预测等场景中十分适用,尤其当销售额受季节性影响显著时,例如假日销售、促销季等场景。