Publicado: 24 de mayo de 2024
Colaboradores: Joshua Noble, Eda Kavlakoglu
La autocorrelación proporciona análisis de datos para datos de series temporales y modelado. Se utiliza mucho en econometría, procesamiento de señales y predicción de la demanda.
La autocorrelación, o correlación serial, analiza los datos de series temporales para buscar correlaciones en valores en diferentes puntos de una serie temporal. Este método clave de análisis mide cómo un valor se correlaciona consigo mismo. En lugar de calcular el coeficiente de correlación entre diferentes variables, como X1 y X2, calculamos el grado de correlación de una variable en sí misma en pasos de tiempo a lo largo del conjunto de datos. Al construir un modelo de regresión lineal, una de las principales suposiciones es que los errores al predecir la variable independiente en ese modelo son independientes. Muchas veces, al trabajar con datos de series temporales, encontrará errores que dependen del tiempo. Es decir, la dependencia en los errores aparece debido a un componente temporal. Los términos de error correlacionados a lo largo del tiempo se denominan errores autocorrelacionados. Estos errores causan problemas con algunas de las formas más comunes de crear una regresión lineal, como los mínimos cuadrados ordinarios. La forma de abordarlos es hacer retroceder la variable dependiente sobre sí misma utilizando los rezagos identificados por una prueba de autocorrelación. El 'rezago' es simplemente un valor anterior de la variable dependiente. Si tiene datos mensuales y desea predecir el próximo mes, puede utilizar los valores de los dos meses anteriores como entrada. Esto significa que está retrocediendo los dos rezagos anteriores en el valor actual.
De la misma manera que la correlación mide una relación lineal entre dos variables, la autocorrelación mide la relación entre valores rezagados de una serie de tiempo a través de un modelo lineal. Cuando los datos tienen una tendencia, las autocorrelaciones para pequeños rezagos tienden a ser grandes y positivas porque las observaciones cercanas en el tiempo también están cercanas en valor. Por lo tanto, la función de autocorrelación, a menudo llamada ACF, de una serie temporal con tendencia tiende a tener valores positivos que disminuyen lentamente a medida que aumentan los rezagos.
Cuando los datos presentan fluctuaciones o patrones estacionales, las autocorrelaciones serán mayores para los retardos estacionales (en múltiplos del periodo estacional) que para otros retardos. Cuando los datos son tanto de tendencia como estacionales, ve una combinación de estos efectos. Las series temporales que no muestran autocorrelación son procesos verdaderamente aleatorios y se denominan ruido blanco. La ACF es un coeficiente de correlación entre dos valores de una serie temporal.
Hay algunas formas clave de probar la autocorrelación:
Puede calcular los residuos y trazar esos errores estándar en el tiempo t, normalmente escritos como et, contra t. Cualquier agrupación de residuos que se encuentre a un lado de la línea cero puede indicar que existen autocorrelaciones y que éstas son significativas.
Ejecutar una prueba de Durbin-Watson puede ayudar a identificar si una serie temporal contiene autocorrelación. Para hacer esto en R, cree una regresión lineal que regrese la variable dependiente en el tiempo y luego pase ese modelo para calcular el estadístico Durbin-Watson. Para hacer esto en Python, puede pasar los residuos de un modelo de regresión lineal ajustado a la prueba.
Otra opción es utilizar una prueba de caja de Ljung y pasar los valores de la serie temporal directamente a la prueba. La prueba de Ljung-Box tiene la hipótesis nula de que los residuos se distribuyen de forma independiente y la hipótesis alternativa de que los residuos no se distribuyen de forma independiente y presentan autocorrelación. En la práctica, esto significa que los resultados inferiores a 0,05 indican que existe autocorrelación en la serie temporal. Tanto las bibliotecas de Python como las de R proporcionan métodos para ejecutar esta prueba.
La opción más común es utilizar una visualización de correlograma generada a partir de correlaciones entre rezagos específicos en la serie temporal. Un patrón en los resultados es una indicación de autocorrelación. Esto se representa mostrando el grado de correlación de los diferentes rezagos a lo largo de la serie temporal. A continuación se muestra un gráfico de ejemplo:
Los datos no aleatorios tienen al menos un rezago significativo. Cuando los datos no son aleatorios, es una buena indicación de que necesita usar un análisis de series temporales o incorporar rezagos en un análisis de regresión para modelar los datos de manera adecuada.
Hay características fundamentales de una serie temporal que pueden identificarse mediante la autocorrelación.
Una serie de tiempo estacionaria tiene propiedades estadísticas que son constantes a lo largo del tiempo. Esto significa que las estadísticas como la media, la varianza y la autocorrelación no cambian a lo largo de los datos. La mayoría de los métodos estadísticos de previsión, incluidos ARMA y ARIMA, se basan en el supuesto de que las series temporales pueden hacerse aproximadamente estacionarias mediante una o varias transformaciones. Una serie estacionaria es comparativamente fácil de predecir porque se puede predecir simplemente que las propiedades estadísticas serán aproximadamente las mismas en el futuro que en el pasado. Estacionariedad significa que la serie temporal no tiene tendencia, tiene una varianza constante, un patrón de autocorrelación constante y ningún patrón estacional. La ACF disminuye rápidamente hasta casi cero para una serie temporal estacionaria. Por el contrario, la ACF disminuye lentamente para una serie temporal no estacionaria.
Una característica clave de los datos de series temporales es si se presenta una tendencia en los datos. Por ejemplo, los precios de los productos básicos en una tienda de comestibles de los últimos 50 años mostrarían una tendencia porque la inflación haría subir esos precios. Predecir datos que contienen tendencias puede ser difícil porque la tendencia oscurece los otros patrones en los datos. Si los datos tienen una línea de tendencia estable a la que vuelven constantemente, es posible que sean estacionarios, en cuyo caso la tendencia puede eliminarse simplemente ajustando una línea de tendencia y restando la tendencia de los datos antes de ajustarlos a un modelo. Si los datos no son estacionarios en tendencia, entonces podrían ser estacionarios en diferencia, en cuyo caso la tendencia puede eliminarse mediante la diferenciación. La forma más sencilla de diferenciar es restar el valor anterior de cada valor para obtener una medida de cuánto cambio está presente en los datos de la serie temporal. Así, por ejemplo, si Yt es el valor de la serie temporal Y en el periodo t, entonces la primera diferencia de Y en el periodo t es igual a Yt - Yt-1. Cuando las tendencias están presentes en una serie temporal, los rezagos más cortos suelen tener valores de correlación positiva fuerte o correlación negativa fuerte en la ACF porque las observaciones más cercanas en el tiempo tienden a tener valores similares. Las correlaciones en la ACF disminuirán lentamente a medida que aumenten los retrasos.
La estacionalidad es cuando una serie temporal contiene fluctuaciones o cambios estacionales. Probablemente deberíamos esperar que las ventas de helados fueran más altas en los meses de verano y más bajas en los de invierno, y que las ventas de esquí aumentaran a finales de otoño y disminuyeran a principios de verano. La estacionalidad puede venir en diferentes intervalos de tiempo, como días, semanas o meses. La clave del análisis de series temporales es entender cómo afecta la estacionalidad a nuestras series y, por lo tanto, hacer mejores previsiones para el futuro. Cuando existen patrones estacionales, los valores ACF mostrarán una autocorrelación más positiva para los retardos en múltiplos de la frecuencia estacional que para otros retardos.
Conozca los obstáculos para la adopción de la IA, en particular la falta de soluciones de gestión de riesgos y gobierno de la IA.
Regístrese para recibir la guía sobre modelos fundacionales
La función de autocorrelación parcial, a menudo llamada PACF, es similar a la ACF excepto que muestra solo la correlación entre dos observaciones que los rezagos más cortos entre esas observaciones no explican. Un gráfico ACF muestra la relación entre yt y yt−k para diferentes valores de k. Si yt e yt−1 están correlacionados entre sí, podríamos suponer que yt−1 e yt−2 también lo estarán porque ambos están conectados por un desfase de 1. Sin embargo, también es posible que yt e yt−2 estén correlacionados simplemente porque ambos están conectados a yt−1, en lugar de porque haya nueva información contenida en yt−2 que podría utilizarse para previsionesyt. Para solucionar este problema, utilizamos autocorrelaciones parciales para eliminar una serie de observaciones rezagadas. La PACF mide solo la relación entre yt e yt−k eliminando los efectos de los rezagos 1 a k. La primera autocorrelación parcial siempre es idéntica a la primera autocorrelación porque no hay datos nuevos entre ellas para eliminar. Todos los rezagos posteriores mostrarán solo la relación entre los retrasos después de eliminar todos los retrasos intermedios. A menudo, esto puede proporcionar una estimación más precisa de qué rezagos podrían contener indicaciones de estacionalidad al observar dónde hay valores mayores de autocorrelación positiva o negativa.
En la práctica, la ACF ayuda a evaluar las propiedades de una serie temporal. La PACF, por otro lado, es más útil durante el proceso de especificación de un modelo autorregresivo. Los científicos o analistas de datos utilizarán gráficos de autocorrelación parcial para especificar modelos de regresión con datos de series temporales, modelos de media móvil autoregresiva (ARMA) o media móvil autoregresiva integrada (ARIMA).
Creación y evaluación de modelos de autorregresión con R en watsonx.ai.
Creación y evaluación de modelos ARIMA utilizando Python en watsonx.ai.
Obtenga más información sobre los modelos de promedio móvil integrado autorregresivo (ARIMA) para el análisis y la previsión de series de tiempo.