关于ARIMA的一些学习总结

实际遇到的时间序列往往有三个特性:趋势性,季节性,非平稳性。

时间序列的平稳性:拟合曲线可在未来一段时间内沿着曲线形态‘惯性’延续下去,具体化来说就是均值和方差不发生很明显的变化。平稳性又分为严平稳和弱平稳,严平稳是指分布不随时间改变而改变,弱平稳是指期望和相关系数不变,相关系数主要反映未来某一时刻对于它过去信息的依赖性。平常我们利用的时间序列一般要求具有弱平稳性即可。

对于不平稳的时间序列数据,需要利用的差分法处理,差分即当前时刻与前一时刻的差值,操作函数为pandas中的.diff()函数,将数据与平移后的数据作差得到结果,即视作df - df.shift(1)。

AR(自回归模型)

反映当前与历史信息间的关系,利用历史信息数据预测未来某一时间段。模型必须满足平稳性的要求;其建立关系如下:

p阶自回归模型即代表t时刻与前p个时段有关,公式中Xt代表t时刻数值,c为常数项,p为阶数,\varepsilont为误差项,ψ为自相关系数,如果自相关系数小于0.5,不宜采用。

MA(滑动平均模型)

关注自回归模型中误差项的累加,有效消除预测中的随机波动。q阶滑动平均模型即代表与前q个时段的偏差值有关。

 ARMA(自回归滑动平均模型)即自回归模型和滑动平均模型的结合:

关于ARIMA的一些学习总结_第1张图片

ARIMA(AutoRegressive Integrated Moving Average)自回归滑动平均模型         

        ARIMA即在ARMA的基础上增加了差分的操作,调用函数前需要指定p,q和d这三个参数,p,q分别为自回归和滑动平均阶数,d为差分阶数,即差分次数。原理是:将非平稳时间序列转化为平稳时间时间序列,将因变量对它的滞后值和随机误差项的现值和滞后值进行回归。

        在模型拟合完成后要对残差进行白噪声检测,判断模型是否拟合成功,残差是否还有有价值的信息可以提取。如果残差为白噪声,说明模型拟合情况较好,残差是无法进一步捕捉信息的纯随机数据。如果残差非白噪声,说明模型有问题,比如参数设置需进一步优化;如果如何优化模型也无法使残差为白噪声,则要换模型,或者对残差进行二次预测。

你可能感兴趣的:(回归算法,python)