ARIMA 中的 p、d、q 值是多少?

机器算法验证 r 时间序列 有马
2022-02-04 09:00:14

arimaR中的函数中,是什么order(1, 0, 12)意思?可以分配给pdq的值是什么?找到这些值的过程是什么?

3个回答
  1. ARIMA(1, 0, 12) 是什么意思?

特别是对于您的模型,ARIMA(1, 0, 12) 意味着您通过组合一阶自回归模型和十二阶移动平均模型来描述一些响应变量 (Y)。考虑它的一个好方法是(AR,I,MA)。简单来说,这使您的模型如下所示:

Y =(自回归参数)+(移动平均参数)

1 和 12 之间的 0 代表模型的“I”部分(积分部分),它表示您正在获取响应变量数据之间差异的模型 - 这可以通过非平稳数据来完成你似乎没有处理这个问题,所以你可以忽略它。

DanTheMan 发布的链接显示了一个很好的模型组合,可以通过将其与那些模型进行比较来帮助您了解您的模型。

  1. 可以为 p、d、q 分配什么值?

很多不同的整数。您可以进行一些诊断测试来尝试找到 p、d、q 的最佳值(参见第 3 部分)。

  1. 求 p、d、q 的值的过程是什么?

有很多方法,我不打算详尽无遗:

  • 查看数据的自相关图(如果移动平均 (MA) 模型合适,将有所帮助)
  • 查看数据的部分自相关图(如果自回归 (AR) 模型合适,将有所帮助)
  • 查看数据的扩展自相关图(如果需要 AR 和 MA 的组合将有所帮助)
  • 在一组模型上尝试 Akaike 的信息准则 (AIC) 并调查具有最低 AIC 值的模型
  • 尝试施瓦茨贝叶斯信息准则 (BIC) 并调查具有最低 BIC 值的模型

在不知道您还需要了解多少的情况下,我不能走得太远,但是如果您有更多问题,请随时提问,也许我或其他人可以提供帮助。

*编辑:如果您熟悉 R,我在此处列出的所有查找 p、d、q 的方法都可以在 R 包 TSA 中找到。

order(p,d,q)意味着,你有一个 ARIMA(p, d, q) 模型:,其中是滞后算子,ϕ(B)(1B)dXt=θ(B)ZtBϕ(B)=1ϕ1BϕpBpθ(B)=1+θ1B++θqBq

在 R 中查找p, d, q值的最佳方法是使用auto.arima函数 from library(forecast)例如,auto.arima(x, ic = "aic")更多信息请查阅?auto.arima

简单地说,自回归综合移动平均 (ARIMA) 尝试对时间序列进行建模,其中您的时间序列 y 可以通过其自身的滞后值(自回归部分)和误差项(移动平均部分)来解释。模型的“Integrated”部分(“ARIMA”中的“I”)是指为达到平稳性而对序列进行了多少次差分。

在您对数据进行建模之前,平稳性是必须的:平稳性指的是恒定的均值和方差。认为这两个时刻不依赖于时间。原因很简单,很难对随时间变化的东西建模。

因此,您的 ARMA 模型或订单 (1,12) 是 AR(1)+MA(12) 模型:它由 1 个滞后值和 12 个误差项建模。我不能谈论您的数据,但我认为这听起来像很多参数(可能过度拟合)。

希望这可以帮助。