算法笔记:ARIMA

1 平稳性

平稳性要求经由样本时间序列所得到的拟合曲线,在未来的一段时间内,仍然能按照现在的特征,顺着现在的 惯性继续延续下去

平稳性要求时间序列的均值和方差不能发生明显的变化(可以变化,不能明显的变化)

1.1 严平衡与弱平衡

严平衡:

时间序列的分布不随时间的改变而改变

也就是均值和方差严格相同

这种要求太过绝对,在实际的数据中不太常见

弱平衡:

时间序列的期望与相关系数不变

(期望:对于所有的时刻t,有E[vt]=μ,其中μ是一个常数。)

(相关系数:对于所有的时刻t和任意的间隔k,值之间的协方差

算法笔记:ARIMA,其中γk与时间t无关。他仅仅依赖于时间间隔k)

相关系数即依赖性,未来某一时刻t的值要依赖于它过去的一些信息,这个依赖关系就是一种相关系数

弱平衡在实际的数据中反而会更常见一点

1.2 差分法

数据可能本身的浮动很大,但是经过差分(一阶、二阶、。。。多阶)之后,可能会呈现一定的平稳性。

算法笔记:ARIMA

在pandas中,比如pd[‘idx’].diff(x),就会计算pd表格’idx’条目中的x阶差分

2 ARIMA 模型

2.1 自回归模型(AR)

回归模型我们都知道,用一组值来预测一个

但是对于时间序列问题来说,我们没有变量-变量对,所以用不了回归模型。

但是我们有当前值和历史值,所以我们可以通过描述当前值和历史值之间的关系,用变量自身的历史时间序列数据对自己预测,形成自回归。

自回归模型必须满足平稳性的要求。

p阶自回归过程的公式为:

算法笔记:ARIMA

其中:

  • yt是当前值
  • μ是常数项
  • p是阶数,表示今天的数据可能会收到过去p天内时间序列数据的影响(所以这里是一个Σ求和的操作,表示综合考虑了过去p天的信息)。这个p的值需要自己指定
  • γi表示过去第i天的自相关系数,也是ARIMA需要学习的系数
  • εt表示当前时刻的误差

2.1.2 自回归模型的限制

  • 自回归模型使用自身的数据来进行预测
  • 自回归模型研究的时间序列数据必须具有平稳性
  • 自回归模型研究的数据必须有自相关性,如果自相关系数小于0.5,那么不宜使用自回归模型
  • 如果两个时间序列完全一样,那么他们的自相关系数就是自相关系数的最大值1
  • 如果两个时间序列完全相反,那么他们的自相关系数就是自相关系数的最小值-1
  • 综合来说,自相关系数的取值范围为[-1,1]
  • 自回归模型只能预测与自身历史时间序列特征相似的内容

2.1.3 自回归模型最优解

首先,我们对自回归模型的线性表达式进行改写:

原来是:

算法笔记:ARIMA
现在改写为:
算法笔记:ARIMA
算法笔记:ARIMA

将y合并,有:

算法笔记:ARIMA
其中
算法笔记:ARIMA
算法笔记:ARIMA

使用最小二乘法,求解回归系数α的最优解:

算法笔记:ARIMA

2.2 移动平均模型

移动平均模型关注的是自回归模型中误差项的累加

算法笔记:ARIMA

相当于对之前q天的误差进行一个加权求和

移动平均法可以减少预测数值的突变,有效消除时间序列预测问题中的随机波动

2.3 ARMA

自回归移动平均模型

算法笔记:ARIMA

自回归与移动平均的结合

我们这里p和q是需要事先指定的,γ和θ是需要学习的

2.4 ARIMA

autoregressive integrated moving average model

全称为差分自回归移动平均模型,写作ARIMA(p,d,q)

AR是自回归,p是自回归项数(需要加权计算多少天之前的时间序列数据)

MA是移动平均,q是移动平均项数(需要加权计算多少天之前的误差数据)

I表示差分,d为时间序列变得平稳的时候,所需要做的差分次数

原理:

1,将非平稳时间序列转化成平稳的时间序列

2,当前数值只受一定范围内的历史数据和一定范围内的误差值的影响

3 ARIMA的评估方法

3.1 自相关函数ACF(autocorrelation fuction)

自相关函数反映了同一序列在不同时序之前的相关性

算法笔记:ARIMA

这里表示k时刻之前的时间序列数据和当前时间序列数据之间的相关性

ACF的取值范围是[-1,1]

算法笔记:ARIMA

如上图,就是一时间序列数据的ACF图。两条紫色序列表示它的置信区间(百分之多少的点落在这个区间之内)

3.2 偏自相关函数(PACF partial autocorrelation function)

对于一个平稳的自回归模型AR(p),求出k之后自相关系数ACF(k)的时候,实际上得到的并不是x(t)和x(t-k)之间单单纯纯的相关关系。

x(t)同时还会受到t-k~t之间k-1个随机变量x(t-1)….x(t-k+1)的影响。这些变量都和x(t-k)有一定程度的相关关系

所以自相关系数ACF中其实还糅杂了其他变量对x(t),以及x(t-k)对这几个变量的影响。

PACF则是严格表示了两个变量之间的相关性

4 ARIMA的p,d,q的确定

算法笔记:ARIMA

其中截尾表示落在置信区间内的意思。

AR(p)看PACF,MA(q)看ACF

算法笔记:ARIMA

4.1 ARIMA 建模流程

1,将时间序列平稳化:通过差分法确定d的大小

2,通过ACF或者PACF确定p和q的阶数

3,计算ARIMA(p,d,q)

4.2 模型选择

4.2.1 AIC 赤化信息准则(Akaike information criterion)

算法笔记:ARIMA

其中 k为模型参数的个数,L为模型的似然函数

我们的目标是让AIC越小越好,也就是模型的参数越少越好(模型越简单越好),同时模型的似然函数越大越好(最大似然估计)

4.2.2 BIC 贝叶斯信息准则(Bayesian information criterion)

算法笔记:ARIMA

其中k为模型参数的个数,n为样本数量,L为模型的似然函数

在相同输入样本的时候,BIC所表达的意义和AIC是一样的

Original: https://blog.csdn.net/qq_40206371/article/details/119738329
Author: UQI-LIUWJ
Title: 算法笔记:ARIMA

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/628698/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球