Publicación: 12 de junio de 2024
Colaboradores: Joshua Noble
El modelado autorregresivo es una técnica de machine learning más comúnmente utilizada para el análisis y la previsión que utiliza uno o más valores de pasos de tiempo anteriores en una serie de tiempo para crear una regresión.
Es una técnica simple pero poderosa para el análisis de seriales temporales que proporciona predicciones altamente interpretables y efectivas si sus datos contienen correlaciones entre los pasos de tiempo. La correlación entre pasos de tiempo se denomina autocorrelación porque es una medida de cuánto se correlaciona un valor consigo mismo. Un proceso puramente lineal se autocorrelacionará perfectamente consigo mismo a lo largo del serial temporal, lo que permitirá predecir el siguiente valor exactamente a partir de valores anteriores mediante un proceso autorregresivo. Un proceso completamente estocástico, como el ruido blanco, no tendrá autocorrelación, ya que no podemos predecir los valores actuales o futuros empleando los valores pasados.
Un serial temporal es una secuencia de mediciones de la misma variable o grupo de variables realizadas a lo largo del tiempo. Las mediciones suelen realizar a intervalos regulares, por ejemplo, cada hora, mes o año. Por ejemplo, podríamos tener valores que midan el número de pasajeros de aerolíneas en un país, con mediciones observadas cada mes. En este caso, y representa los recuentos de pasajeros medidos y enfatiza la existencia de valores medidos a lo largo del tiempo. El valor de t se aplica como un subíndice en lugar de la i habitual para indicar que yt representa el valor de y en cualquier momento.
Un modelo autorregresivo es cuando hacemos una regresión de un valor de un serial de tiempo sobre valores anteriores de ese mismo serial de tiempo. Por ejemplo, yt regresionado en yt-1 emplea el valor anterior de y, llamado valor rezagado, para predecir el valor actual de y. En este modelo de regression simple, la variable dependiente en el periodo de tiempo anterior se convirtió en el predictor. Los errores representan todas las suposiciones habituales sobre los errores en un modelo de regression lineal simple. A menudo consideramos el orden de una autorregresión como el número de valores anteriores en el serial empleado para predecir el valor actual. Por lo tanto, yt regresionado en yt-1 es una autorregresión de primer orden, que se escribe como AR(1).
En una regresión lineal múltiple, el resultado de la regresión es una combinación lineal de múltiples variables de entrada. En los modelos de autorregresión, el resultado es el punto de datos futuro expresado como una combinación lineal de los puntos de datos p anteriores. p es el número de rezagos incluidos en la ecuación. Un modelo AR(1) se define matemáticamente como:
xt-1 es el valor del serial pasado de un retraso
ϕ es el coeficiente calculado para ese retraso
Alphat es ruido blanco (como aleatoriedad)
Delta se define como
para un modelo autorregresivo de orden p, donde p es el número total de covariables calculadas para los retrasos y μ es la media del proceso.
Cuando se agregan más retrasos al modelo, agregamos más coeficientes y variables de retraso a la ecuación:
El modelo anterior es una autoregresión de segundo orden, ya que contiene dos retardos.
La forma general de una ecuación autorregresiva para un orden p es
Para utilizar modelos autorregresivos para el forecasting de series de tiempo utilizamos el valor de tiempo actual y cualquier dato histórico para predecir el siguiente paso de tiempo. Por ejemplo, un modelo AR con 2 rezagos podría predecir un solo paso adelante de la siguiente manera:
Los métodos más habituales para calcular los coeficientes de cada retardo son la estimación de máxima verosimilitud (MLE) o la estimación por mínimos cuadrados (OLS). Las mismas limitaciones que tienen estos enfoques cuando se ajusta una regression de un modelo lineal están presentes también cuando se ajustan modelos autorregresivos. Dependiendo de si está empleando Python o R y la biblioteca, es posible que pueda emplear los métodos de Yule-Walker o Burg, además de MLE u OLS.
Muchas bibliotecas permiten a los usuarios seleccionar qué criterios emplear al seleccionar modelos de todos los modelos candidatos. Por ejemplo, es posible que desee emplear los coeficientes del modelo para minimizar el criterio de información de Aikike o los criterios de información bayesianos, según su caso de uso y sus datos.
La autocorrelación calcula la correlación entre un serial temporal y una versión rezagada de sí misma. El rezago es el número de unidades de tiempo para desplazar el serial temporal. Un retraso de 1 compara el serial con un paso de tiempo anterior. Un retraso de 2 lo compara con el paso de tiempo anterior a ese. El grado de autocorrelación en un rezago particular muestra la dependencia temporal de los datos. Cuando la autocorrelación es alta, existe una fuerte relación entre el valor actual y el valor en ese rezago. Cuando la autocorrelación es baja o cercana a cero, sugiere una relación débil o ninguna relación en absoluto.
Un enfoque común para visualizar la autocorrelación es calcular la función de autocorrelación (ACF) o el gráfico ACF que muestra los coeficientes de autocorrelación en diferentes retrasos.
El eje horizontal representa el retraso y el eje vertical representa los valores de autocorrelación. Los picos o patrones significativos en el gráfico ACF pueden revelar la estructura temporal subyacente de los datos. La selección del orden de retardo (p) en el modelo AR a menudo se basa en el análisis de la gráfica ACF. En un modelo AR(p), el valor actual del serial temporal se expresa como una combinación lineal de sus valores p pasados, con coeficientes determinados a través de OLS o MLE. La autocorrelación también se emplea para evaluar si un serial temporal es estacionaria. Para un serial temporal estacionario, la autocorrelación debería disminuir gradualmente a medida que aumenta el retraso, pero si el gráfico ACF no indica una disminución, los datos pueden contener no estacionariedad. Puede obtener más información sobre la autocorrelación aquí.
Conozca las barreras para la adopción de IA, en particular la falta de soluciones de gobernanza y gestión de riesgos de IA.
Regístrese para obtener la guía sobre modelos fundacionales
Existen muchas variaciones diferentes del modelo estándar de series temporales autorregresivas que abordan sus desafíos y deficiencias.
Un modelo estadístico autorregresivo simple funciona con conjuntos de datos univariados, lo que significa que un conjunto de datos debe contener un valor para cada periodo. Se desarrollaron modelos vectoriales autorregresivos (VAR) para permitir autorregresiones de seriales temporales multivariantes. Están estructurados de manera que cada variable es una función lineal de los rezagos pasados de sí misma y de los rezagos pasados de las otras variables. Imagine que tiene un serial temporal que consta de dos mediciones diferentes, el número mensual de vuelos en avión y el número mensual de viajes interurbanos en tren. En un modelo VAR, puede predecir el valor de usar ambos con una regression para cada uno que incluya el otro valor. Codificando los viajes en tren como Xr y los viajes en avión como Xa tendríamos:
Los modelos autorregresivos simples pueden tener dificultades con seriales de tiempo que tienen una tendencia fuerte. Dos variaciones populares del modelo autorregresivo son el modelo de promedio móvil autorregresivo (ARMA) y el modelo de promedio móvil autorregresivo integrado (ARIMA). Estas variaciones son especialmente útiles cuando los datos tienen una tendencia fuerte. El modelado de promedio móvil es otro enfoque para forecasting datos de seriales de tiempo y ARIMA integra estos dos enfoques, de ahí el nombre. También existen variaciones de los modelos ARIMA. Una de las extensiones más comunes es el vector ARIMA (VARIMA), empleado cuando los datos son multivariados. Otra extensión común es ARIMA estacional (SARIMA) cuando los datos contienen una fuerte estacionalidad. Puede leer más sobre los modelos ARIMA aquí.
Los modelos autorregresivos funcionan de manera mucho más confiable cuando los datos del serial temporal son estacionarios y la varianza a lo largo del serial temporal no varía. A menudo, los datos no estacionarios se diferencian en el tiempo para eliminar los cambios en la varianza y luego ajustar un modelo AR. A veces, esa variación es significativa y un científico de datos quiere dejarla. El método de heteroscedasticidad condicional autorregresiva (ARCH) proporciona una manera de modelar un cambio en la varianza en una serie temporal que es dependiente del tiempo, como aumentar o disminuir la volatilidad. Una extensión de este enfoque, conocido como heteroscedasticidad condicional autorregresiva generalizada (GARCH), permite que el método soporte cambios en la volatilidad dependiente del tiempo. Por ejemplo, aumentar y disminuir la volatilidad en el mismo serial.
Cuando existe un proceso no estocástico a los cambios en las varianzas de series de tiempo, la heteroscedasticidad condicional autorregresiva o el algoritmo ARCH pueden utilizar técnicas autorregresivas para modelar y predecir cambios en la volatilidad de los conjuntos de datos. Los modelos autorregresivos regulares no modelan un cambio en la varianza a lo largo de un conjunto de datos. Debido a esto, un científico de datos podría usar una transformación de box-cox para reducir la varianza en el conjunto de datos. Sin embargo, si el cambio en la varianza está autocorrelacionado, entonces un enfoque ARCH para el modelado puede proporcionar predicciones sobre cuándo podría comenzar a cambiar un proceso. Este enfoque se conoce como forecasting de volatilidad y se utiliza comúnmente en econometría y análisis financiero. Por ejemplo, cuando se trabaja con datos de precios de acciones, el interés podría expandirse más allá de modelar los precios potenciales hasta forecasting cuándo comienza a cambiar drásticamente.
Las técnicas de modelado autorregresivo generan la probabilidad de secuencias de tokens, por ejemplo, para sugerir una posible siguiente letra o palabra en un texto predictivo. Los modelos de lenguaje autorregresivos calculan la probabilidad de cada token posible dados los tokens anteriores en la cadena. Dada la cadena "el mouse se comió el", un modelo que vio un número razonable de oraciones en inglés probablemente asignaría una mayor probabilidad a "cheese" que a "homework". Esta probabilidad se asigna a través de un proceso autorregresivo que emplea todos los tokens anteriores de la cadena para asignar probabilidades a cada token en el modelo de lenguaje.
Una aplicación diferente de los principios autorregresivos es emplear las ubicaciones de los valores como una secuencia y hacer una regresión de todas las ubicaciones relevantes en la ubicación de interés. Por ejemplo, podríamos sospechar que la distancia de una fábrica afecta las lecturas de calidad del aire. Un modelo autorregresivo emplearía las lecturas de otros sitios como valores retrasados y la distancia desde la fábrica como retrasos.
ARIMA significa media móvil integrada autorregresiva y es una técnica para el análisis de seriales temporales y para forecasting posibles valores futuros de un serial temporal.
La autocorrelación es una técnica de análisis de datos para datos de series de tiempo y modelado. Es ampliamente utilizado en econometría, procesamiento de señales y predicción de demanda.
Aprenda a crear modelos autorregresivos y empléelos para Forecasting predicciones mediante Python en este tutorial.
Aprende a crear modelos autorregresivos y utilizarlos para Forecasting predicciones usando el lenguaje de programación R en este tutorial.
Emplee Python para crear modelos ARIMA, analizar y comparar diferentes modelos y pronosticar valores futuros.