时间序列的成分
对于一个时间序列{y(t)},假设它是加性模型(an additive decomposition),则可以写成 y(t)=S(t)+T(t)+R(t),其中S(t)、T(t)、R(t)分别是周期成分(seasonal component)、趋势成分(trend-cycle component)、残差成分(remainder component)。
类似地,一个乘性模型可以写成y(t)=S(t)×T(t)×R(t),对于乘性模型,可以取对数(当然是有意义的前提下),将其转化为加性模型。
基于时间因子
这种模型认为,预测的核心任务就是尽可能准确的提取数据中的周期规律,提取出时间因子。一般步骤如下:
- 除以周均值,得到一个比例。
- 按列取中位数。
这样就可以得到一组鲁棒的周期因子。
做预测时,只要将周期因子,乘以一个base,就可以做下一周的预测
ARIMA模型
自回归模型描述当前值与历史值之间的关系,用变量自身的历史时间数据对自身进行预测。
一般的P阶自回归模型 AR:
如果随机扰动项是一个白噪声(
),则称为一个纯AR(p)过程,记为:
自回归模型首先需要确定一个阶数p,表示用几期的历史值来预测当前值。
自回归模型有很多的限制:
(1)自回归模型是用自身的数据进行预测
(2)时间序列数据必须具有平稳性
(3)自回归只适用于预测与自身前期相关的现象(时间序列的自相关性)
STL分解模型
时序分解中一种常见的算法,基于LOESS将某时刻的数据Yv分解为趋势分量(trend component)、周期分量(seasonal component)和余项(remainder component):
STL分为内循环(inner loop)与外循环(outer loop),其中内循环主要做了趋势拟合与周期分量的计算。假定
、
为内循环中第k-1次pass结束时的趋势分量、周期分量,初始时
=0;并有以下参数: