Articulo de referencia

Media móvil integrada autorregresiva

En el análisis de series temporales utilizado en estadística y econometría , los modelos autorregresivos integrados de media móvil ( ARIMA ) y ARIMA estacional ( SARIMA ) son ge...

En el análisis de series temporales utilizado en estadística y econometría , los modelos autorregresivos integrados de media móvil ( ARIMA ) y ARIMA estacional ( SARIMA ) son generalizaciones del modelo autorregresivo de media móvil (ARMA) para series no estacionarias y variación periódica, respectivamente. Todos estos modelos se ajustan a series temporales para comprenderlas mejor y predecir valores futuros. El propósito de estas generalizaciones es ajustar los datos lo mejor posible. Específicamente, ARMA supone que la serie es estacionaria , es decir, que su valor esperado es constante en el tiempo. Si, en cambio, la serie tiene una tendencia (pero una varianza/ autocovarianza constante ), la tendencia se elimina mediante la "diferenciación" [ 1 ] , lo que da como resultado una serie estacionaria. Esta operación generaliza ARMA y corresponde a la parte " integrada " de ARIMA. Análogamente, la variación periódica se elimina mediante la "diferenciación estacional" [ 2 ] .

Componentes

Al igual que en ARMA, la parte "autorregresiva" ( AR ) de ARIMA indica que la variable de interés en evolución se regresa sobre sus valores previos. La parte "media móvil" ( MA ) indica que el error de regresión es una combinación lineal de términos de error cuyos valores ocurrieron de forma contemporánea y en diferentes momentos del pasado. [ 3 ] La parte "integrada" ( I ) indica que los valores de los datos se han reemplazado por la diferencia entre cada valor y el valor anterior.

Según el teorema de descomposición de Wold [ 4 ] [ 5 ] [ 6 ], el modelo ARMA es suficiente para describir una serie temporal estacionaria en sentido amplio, regular (también conocida como puramente no determinista [ 6 ] ) . Esto motiva a convertir dicha serie temporal no estacionaria en estacionaria, por ejemplo, mediante el uso de diferencias, antes de utilizar ARMA. [ 7 ]

Si la serie temporal contiene un subproceso predecible (también conocido como proceso exponencial de seno puro o de valor complejo [ 5 ] ), el componente predecible se trata como un componente de media distinta de cero pero periódico (es decir, estacional) en el marco ARIMA que se elimina mediante la diferenciación estacional.

Formulación matemática

Los modelos ARIMA no estacionales se suelen denotar por ARIMA( p , d , q ), donde los parámetros p , d , q son enteros no negativos: p es el orden (número de retardos temporales) del modelo autorregresivo , d es el grado de diferenciación (el número de veces que se han restado valores pasados ​​a los datos) y q es el orden del modelo de media móvil . Los modelos ARIMA estacionales se suelen denotar por ARIMA( p , d , q )( P , D , Q ) m , donde las letras mayúsculas P , D , Q son los términos autorregresivos, de diferenciación y de media móvil para la parte estacional del modelo ARIMA, y m es el número de períodos en cada estación. [ 8 ] [ 2 ] Cuando dos de los parámetros son 0, el modelo puede denominarse en función del parámetro distinto de cero, omitiendo " AR ", " I " o " MA " del acrónimo. Por ejemplo ,ARIMA(1,0,0){\displaystyle {\text{ARIMA}}(1,0,0)}es AR ( 1) ,ARIMA(0,1,0){\displaystyle {\text{ARIMA}}(0,1,0)} es I(1) , yARIMA(0,0,1){\displaystyle {\text{ARIMA}}(0,0,1)}es MA(1 ).

Dados los datos de series temporales X t, donde t es un índice entero y los X t son números reales, se puede determinar si existe una serie temporal X t.ARMA(pag,q){\displaystyle {\text{ARMA}}(p',q)}El modelo viene dado por

incógnitatα1incógnitat1αpagincógnitatpag=εt+θ1εt1++θqεtq,{\displaystyle X_{t}-\alpha _{1}X_{t-1}-\dots -\alpha _{p'}X_{tp'}=\varepsilon _{t}+\theta _{1}\varepsilon _{t-1}+\cdots +\theta _{q}\varepsilon _{tq},}

o equivalentemente por

(1i=1pagαiLi)incógnitat=(1+i=1qθiLi)εt{\displaystyle \left(1-\sum _{i=1}^{p'}\alpha _{i}L^{i}\right)X_{t}=\left(1+\sum _{i=1}^{q}\theta _{i}L^{i}\right)\varepsilon _{t}\,}

dóndeL{\displaystyle L}es el operador de retardo , elαi{\displaystyle \alpha _{i}}son los parámetros de la parte autorregresiva del modelo, elθi{\displaystyle \theta _{i}}son los parámetros de la parte de la media móvil y elεt{\displaystyle \varepsilon _ {t}}son términos erróneos. Los términos erróneosεt{\displaystyle \varepsilon _ {t}}Generalmente se asume que son variables independientes e idénticamente distribuidas, muestreadas de una distribución normal con media cero.

Si el polinomio(1i=1pagαiLi){\displaystyle \textstyle \left(1-\sum _{i=1}^{p'}\alpha _{i}L^{i}\right)}tiene una raíz unitaria (un factor(1L){\displaystyle (1-L)}) de multiplicidad d , entonces se puede reescribir como:

(1i=1pagαiLi)=(1i=1pagdφiLi)(1L)d.{\displaystyle \left(1-\sum _{i=1}^{p'}\alpha _{i}L^{i}\right)=\left(1-\sum _{i=1}^{p'-d}\varphi _{i}L^{i}\right)\left(1-L\right)^{d}.}

Un proceso ARIMA( p , d , q ) expresa esta propiedad de factorización polinómica con p = p'−d , y viene dado por:

(1i=1pagφiLi)(1L)dincógnitat=(1+i=1qθiLi)εt{\displaystyle \left(1-\sum _{i=1}^{p}\varphi _{i}L^{i}\right)(1-L)^{d}X_{t}=\left(1+\sum _{i=1}^{q}\theta _{i}L^{i}\right)\varepsilon _{t}\,}

Y así, caso especial de un proceso ARMA( p+d , q ) que tiene un polinomio autorregresivo con d raíces unitarias. (Por eso, ningún proceso descrito con precisión por un modelo ARIMA con d  >  0 es estacionario en sentido amplio ).

Lo anterior se puede generalizar de la siguiente manera.

(1i=1pagφiLi)(1L)dincógnitat=δ+(1+i=1qθiLi)εt.{\displaystyle \left(1-\sum _{i=1}^{p}\varphi _{i}L^{i}\right)(1-L)^{d}X_{t}=\delta +\left(1+\sum _{i=1}^{q}\theta _{i}L^{i}\right)\varepsilon _{t}.\,}

Esto define un proceso ARIMA( p , d , q ) con deriva.δ1φi{\displaystyle {\frac {\delta }{1-\sum \varphi _{i}}}}.

Otras formas especiales

La identificación explícita de la factorización del polinomio de autorregresión en factores como se indicó anteriormente puede extenderse a otros casos, primero para aplicarla al polinomio de media móvil y segundo para incluir otros factores especiales. Por ejemplo, teniendo un factor(1Ls){\displaystyle (1-L^{s})}en un modelo es una forma de incluir una estacionalidad no estacionaria del período s en el modelo; este factor tiene el efecto de reexpresar los datos como cambios de s períodos atrás. Otro ejemplo es el factor (13L+L2){\displaystyle \left(1-{\sqrt {3}}L+L^{2}\right)}, que incluye una estacionalidad (no estacionaria) de período 2. El efecto del primer tipo de factor es permitir que el valor de cada estación varíe por separado a lo largo del tiempo, mientras que con el segundo tipo los valores de las estaciones adyacentes se mueven juntos.

La identificación y especificación de los factores apropiados en un modelo ARIMA puede ser un paso importante en el modelado, ya que permite reducir el número total de parámetros a estimar, al tiempo que permite imponer al modelo tipos de comportamiento que la lógica y la experiencia sugieren que deberían existir.

Diferenciación

Las propiedades de una serie temporal estacionaria no cambian. Específicamente, para una serie temporal estacionaria en sentido amplio , la media y la varianza/ autocovarianza son constantes en el tiempo. La diferenciación en estadística es una transformación que se aplica a una serie temporal no estacionaria para hacerla estacionaria en tendencia (es decir, estacionaria en el sentido de la media ), eliminando o restando la tendencia o la media no constante. Sin embargo, no afecta la no estacionariedad de la varianza o la autocovarianza . De igual manera, la diferenciación estacional o desestacionalización se aplica a una serie temporal para eliminar el componente estacional.

Desde la perspectiva del procesamiento de señales, especialmente la teoría del análisis espectral de Fourier , la tendencia es una parte de baja frecuencia en el espectro de una serie, mientras que la estacionalidad es una parte de frecuencia periódica. Por lo tanto, la diferenciación es un filtro de paso alto (es decir, de rechazo de graves) y la diferenciación estacional es un filtro de peine para suprimir respectivamente la tendencia de baja frecuencia y la estacionalidad de frecuencia periódica en el dominio del espectro (en lugar de directamente en el dominio del tiempo). [ 7 ]

Para diferenciar los datos, calculamos la diferencia entre observaciones consecutivas. Matemáticamente, esto se muestra como

yt=ytyt1{\displaystyle y_{t}'=y_{t}-y_{t-1}\,}

Puede ser necesario diferenciar los datos una segunda vez para obtener una serie temporal estacionaria, lo que se conoce como diferenciación de segundo orden :

yt=ytyt1=(ytyt1)(yt1yt2)=yt2yt1+yt2{\displaystyle {\begin{aligned}y_{t}^{*}&=y_{t}'-y_{t-1}'\\&=(y_{t}-y_{t-1})-(y_{t-1}-y_{t-2})\\&=y_{t}-2y_{t-1}+y_{t-2}\end{aligned}}}

La diferenciación estacional consiste en calcular la diferencia entre una observación y la observación correspondiente de la temporada anterior, por ejemplo, un año. Esto se muestra de la siguiente manera:

yt=ytytmetrodónde metro=duración de la temporada.{\displaystyle y_{t}'=y_{t}-y_{tm}\quad {\text{donde }}m={\text{duración de la temporada}}.}

Los datos diferenciados se utilizan posteriormente para la estimación de un modelo ARMA .

Ejemplos

Algunos casos especiales bien conocidos surgen de forma natural o son matemáticamente equivalentes a otros modelos de pronóstico populares. Por ejemplo:

  • Los modelos ARIMA(0, 0, 0) modelan el ruido blanco .
  • Un modelo ARIMA(0, 1, 0) es un paseo aleatorio .
  • Un modelo ARIMA(0, 1, 2) es un modelo de Holt amortiguado.
  • Un modelo ARIMA(0, 1, 1) sin constante es un modelo básico de suavizado exponencial . [ 9 ]
  • Un modelo ARIMA(0, 2, 2) viene dado porincógnitat=2incógnitat1incógnitat2+(α+β2)εt1+(1α)εt2+εt{\displaystyle X_{t}=2X_{t-1}-X_{t-2}+(\alpha +\beta -2)\varepsilon _{t-1}+(1-\alpha )\varepsilon _{t-2}+\varepsilon _{t}}— lo cual es equivalente al método lineal de Holt con errores aditivos, o suavizado exponencial doble . [ 9 ]

Elegir el orden

El orden p y q se puede determinar utilizando la función de autocorrelación de la muestra (ACF), la función de autocorrelación parcial (PACF) y/o el método de la función de autocorrelación extendida (EACF). [ 10 ]

Otros métodos alternativos incluyen AIC, BIC, etc. [ 10 ] Para determinar el orden de un modelo ARIMA no estacional, un criterio útil es el criterio de información de Akaike (AIC) . Se escribe como

AIC=2registro(L)+2(pag+q+k),{\displaystyle {\text{AIC}}=-2\log(L)+2(p+q+k),}

donde L es la verosimilitud de los datos, p es el orden de la parte autorregresiva y q es el orden de la parte de la media móvil. k representa la intersección del modelo ARIMA. Para AIC, si k = 1, entonces hay una intersección en el modelo ARIMA ( c ≠ 0) y si k = 0, entonces no hay intersección en el modelo ARIMA ( c = 0).

El AIC corregido para los modelos ARIMA se puede escribir como

AICc=AIC+2(pag+q+k)(pag+q+k+1)Tpagqk1.{\displaystyle {\text{AICc}}={\text{AIC}}+{\frac {2(p+q+k)(p+q+k+1)}{Tpqk-1}}.}

El criterio de información bayesiano (BIC) se puede escribir como

BIC=AIC+((registroT)2)(pag+q+k).{\displaystyle {\text{BIC}}={\text{AIC}}+((\log T)-2)(p+q+k).}

El objetivo es minimizar los valores de AIC, AICc o BIC para un buen modelo. Cuanto menor sea el valor de uno de estos criterios para un conjunto de modelos que se estén investigando, mejor se ajustará el modelo a los datos. El AIC y el BIC se utilizan con fines completamente diferentes. Mientras que el AIC intenta aproximar los modelos a la realidad de la situación, el BIC busca el ajuste perfecto. El enfoque del BIC suele ser criticado, ya que nunca existe un ajuste perfecto a datos complejos de la vida real; sin embargo, sigue siendo un método útil para la selección, puesto que penaliza más severamente a los modelos con más parámetros que el AIC.

El criterio AICc solo puede utilizarse para comparar modelos ARIMA con el mismo orden de diferenciación. Para modelos ARIMA con diferentes órdenes de diferenciación, se puede utilizar el RMSE para la comparación de modelos.

Pronósticos utilizando modelos ARIMA

El modelo ARIMA puede considerarse como una "cascada" de dos modelos. El primero no es estacionario:

Yt=(1L)dincógnitat{\displaystyle Y_{t}=(1-L)^{d}X_{t}}

mientras que el segundo es estacionario en sentido amplio :

(1i=1pagφiLi)Yt=(1+i=1qθiLi)εt.{\displaystyle \left(1-\sum _{i=1}^{p}\varphi _{i}L^{i}\right)Y_{t}=\left(1+\sum _{i=1}^{q}\theta _{i}L^{i}\right)\varepsilon _{t}\,.}

Ahora se pueden hacer pronósticos para el proceso.Yt{\displaystyle Y_{t}}, utilizando una generalización del método de pronóstico autorregresivo .

Intervalos de pronóstico

Los intervalos de predicción ( intervalos de confianza para las predicciones) de los modelos ARIMA se basan en la suposición de que los residuos no están correlacionados y siguen una distribución normal. Si alguna de estas suposiciones no se cumple, los intervalos de predicción pueden ser incorrectos. Por este motivo, los investigadores representan gráficamente la función de autocorrelación (FAC) y el histograma de los residuos para verificar las suposiciones antes de generar los intervalos de predicción.

Intervalo de pronóstico del 95%: y^T+hT±1,96vT+hT{\displaystyle {\hat {y}}_{T+h\,\mid \,T}\pm 1.96{\sqrt {v_{T+h\,\mid \,T}}}}, dóndevT+hT{\displaystyle v_{T+h\mid T}}es la varianza deyT+hy1,,yT{\displaystyle y_{T+h}\mid y_{1},\dots ,y_{T}}.

Parah=1{\displaystyle h=1},vT+hT=σ^2{\displaystyle v_{T+h\,\mid \,T}={\hat {\sigma }}^{2}}para todos los modelos ARIMA, independientemente de los parámetros y órdenes.

Para ARIMA(0,0,q),yt=mit+i=1qθimiti.{\displaystyle y_{t}=e_{t}+\sum _{i=1}^{q}\theta _{i}e_{ti}.}

vT+hT=σ^2[1+i=1h1θimiti], para h=2,3,{\displaystyle v_{T+h\,\mid \,T}={\hat {\sigma }}^{2}\left[1+\sum _{i=1}^{h-1}\theta _{i}e_{t-i}\right],{\text{ for }}h=2,3,\ldots }

En general, los intervalos de pronóstico de los modelos ARIMA aumentarán a medida que aumente el horizonte de pronóstico.

Variaciones y extensiones

Se suelen emplear varias variaciones del modelo ARIMA. Si se utilizan varias series temporales, entonces...incógnitat{\displaystyle X_{t}}pueden considerarse como vectores y un modelo VARIMA puede ser apropiado. A veces se sospecha un efecto estacional en el modelo; en ese caso, generalmente se considera mejor usar un modelo SARIMA (ARIMA estacional) que aumentar el orden de las partes AR o MA del modelo. [ 11 ] Si se sospecha que la serie temporal exhibe dependencia de largo alcance , entonces se puede permitir que el parámetro d tenga valores no enteros en un modelo autorregresivo de media móvil integrada fraccionalmente , que también se llama un modelo ARIMA fraccional (FARIMA o ARFIMA).

Implementaciones de software

Existen diversos paquetes de software que aplican metodologías como la optimización de parámetros de Box-Jenkins para encontrar los parámetros adecuados para el modelo ARIMA.

  • EViews : cuenta con amplias capacidades ARIMA y SARIMA.
  • Julia : contiene una implementación ARIMA en el paquete TimeModels [ 12 ]
  • Mathematica : incluye la función ARIMAProcess .
  • MATLAB : la caja de herramientas de econometría incluye modelos ARIMA y regresión con errores ARIMA.
  • NCSS : incluye varios procedimientos para ARIMAajuste y pronóstico. [ 13 ] [ 14 ] [ 15 ]
  • Python : el paquete "statsmodels" incluye modelos para el análisis de series temporales: análisis univariado de series temporales: AR, ARIMA; modelos autorregresivos vectoriales, VAR y VAR estructural; estadísticas descriptivas y modelos de procesos para el análisis de series temporales.
  • R : el paquete estadístico estándar de R incluye una función arima , que está documentada en "ARIMA Modelling of Time Series" . Además de laARIMA(pag,d,q){\displaystyle {\text{ARIMA}}(p,d,q)}En parte, la función también incluye factores estacionales, un término de intersección y variables exógenas ( xreg , llamadas "regresores externos"). El paquete astsa tiene scripts como sarima para estimar modelos estacionales o no estacionales y sarima.sim para simular a partir de estos modelos. La vista de tareas de CRAN sobre series temporales es la referencia con muchos más enlaces. Elpaquete "forecast" en R puede seleccionar automáticamente un modelo ARIMA para una serie temporal dada con laauto.arima()función [que a menudo puede dar resultados cuestionables].y también puede simular modelos ARIMA estacionales y no estacionales con su simulate.Arima()función. [ 16 ]
  • Ruby : la gema "statsample-timeseries" se utiliza para el análisis de series temporales, incluidos los modelos ARIMA y el filtrado de Kalman.
  • JavaScript : el paquete "arima" incluye modelos para el análisis y la previsión de series temporales (ARIMA, SARIMA, SARIMAX, AutoARIMA).
  • C : el paquete "ctsa" incluye ARIMA, SARIMA, SARIMAX, AutoARIMA y múltiples métodos para el análisis de series temporales.
  • CAJAS DE HERRAMIENTAS SEGURAS : incluye modelado ARIMA y regresión con errores ARIMA .
  • SAS : incluye un procesamiento ARIMA extenso en su sistema de análisis econométrico y de series temporales: SAS/ETS.
  • IBM SPSS incluye el modelado ARIMA en las ediciones Professional y Premium de su paquete Statistics, así como en su paquete Modeler. La función Expert Modeler predeterminada evalúa una variedad de configuraciones autorregresivas ( p ), integradas ( d ) y de media móvil ( q ) estacionales y no estacionales, además de siete modelos de suavizado exponencial. Expert Modeler también puede transformar los datos de la serie temporal objetivo en su raíz cuadrada o logaritmo natural. El usuario también tiene la opción de restringir Expert Modeler a modelos ARIMA o de introducir manualmente las configuraciones p , d y q no estacionales y estacionales de ARIMA sin Expert Modeler. La detección automática de valores atípicos está disponible para siete tipos de valores atípicos, y estos se incorporarán al modelo de la serie temporal si se selecciona esta función.
  • SAP : el paquete APO-FCS [ 17 ] en SAP ERP de SAP permite la creación y ajuste de modelos ARIMA utilizando la metodología Box-Jenkins.
  • SQL Server Analysis Services de Microsoft incluye ARIMA como algoritmo de minería de datos.
  • Stata incluye la modelización ARIMA (mediante su comando arima) desde la versión 9.
  • StatSim : incluye modelos ARIMA en la aplicación web Forecast .
  • Teradata Vantage incluye la función ARIMA como parte de su motor de aprendizaje automático.
  • TOL (Time Oriented Language) está diseñado para modelar modelos ARIMA (incluidas las variantes SARIMA, ARIMAX y DSARIMAX)..
  • Scala : la biblioteca spark-timeseries contiene una implementación de ARIMA para Scala, Java y Python. La implementación está diseñada para ejecutarse en Apache Spark .
  • PostgreSQL /MadLib: Análisis de series temporales /ARIMA .
  • X-12-ARIMA : de la Oficina del Censo de los Estados Unidos

Véase también

Referencias

  1. Para obtener más información sobre estacionariedad y diferenciación, consulte https://www.otexts.org/fpp/8/1
  2. 1 2 Hyndman, Rob J; Athanasopoulos, George. "8.9 Modelos ARIMA estacionales" . Pronóstico: principios y práctica . oTexts . Recuperado el 19 de mayo de 2015 .
  3. Box, George EP (2015). Análisis de series temporales: pronóstico y control . WILEY. ISBN 978-1-118-67502-1.
  4. Hamilton, James (1994). Análisis de series temporales . Princeton University Press. ISBN 9780691042893.
  5. 1 2 Papoulis, Athanasios (2002). Probabilidad, variables aleatorias y procesos estocásticos . Tata McGraw-Hill Education.
  6. 1 2 Triacca, Umberto (19 de febrero de 2021). "El teorema de descomposición de Wold" (PDF) . Archivado (PDF) del original el 27 de marzo de 2016.
  7. 1 2 Wang, Shixiong; Li, Chongshou; Lim, Andrew (2019-12-18). "Por qué ARIMA y SARIMA no son suficientes". arXiv : 1904.07632 [ stat.AP ].
  8. "Notación para modelos ARIMA" . Sistema de pronóstico de series temporales . SAS Institute . Consultado el 19 de mayo de 2015 .
  9. 1 2 "Introducción a los modelos ARIMA" . people.duke.edu . Consultado el 5 de junio de 2016 .
  10. 1 2 Universidad Estatal de Missouri. "Especificación del modelo, análisis de series temporales" (PDF) .
  11. Swain, S; et al. (2018). "Desarrollo de un modelo ARIMA para la predicción de precipitaciones mensuales en el distrito de Khordha, Odisha, India". Hallazgos recientes en técnicas de computación inteligente . Avances en sistemas inteligentes y computación. Vol. 708. pp. 325–331 . doi : 10.1007/978-981-10-8636-6_34 . ISBN    978-981-10-8635-9.
  12. ^ TimeModels.jlwww.github.com​
  13. ARIMA en NCSS ,
  14. ARMA automático en NCSS ,
  15. Autocorrelaciones y autocorrelaciones parciales en NCSS
  16. Hyndman, Rob J; Athanasopoulos, George. "8.7 Modelado ARIMA en R" . Pronóstico: principios y práctica . oTexts . Consultado el 19 de mayo de 2015 .
  17. "Modelo Box Jenkins" . SAP . Consultado el 8 de marzo de 2013 .

Lecturas adicionales

  • Asteriou, Dimitros; Hall, Stephen G. (2011). «Modelos ARIMA y la metodología Box-Jenkins». Econometría aplicada (Segunda  edición). Palgrave Macmillan. pp. 265–286 . ISBN  978-0-230-27182-1.
  • Mills, Terence C. (1990). Técnicas de series temporales para economistas . Cambridge University Press. ISBN 978-0-521-34339-8.
  • Percival, Donald B.; Walden, Andrew T. (1993). Análisis espectral para aplicaciones físicas . Cambridge University Press. ISBN 978-0-521-35532-2.
  • Shumway RH y Stoffer, DS (2017). Análisis de series temporales y sus aplicaciones: con ejemplos en R. Springer. DOI: 10.1007/978-3-319-52452-8
  • Modelos ARIMA en R. Conviértete en un experto en el ajuste de modelos ARIMA (media móvil integrada autorregresiva) a datos de series temporales utilizando R.
Obtenido de " https://en.wikipedia.org/w/index.php?title=Autoregressive_integrated_moving_average&oldid=1356861537#Differencing "