Mi IBM Iniciar sesión Suscríbase

¿Qué es la autocorrelación?

24 de mayo de 2024

Autores

Joshua Noble

Data Scientist

Eda Kavlakoglu

Program Manager

La autocorrelación proporciona análisis de datos para series temporales de datos y modelos. Es ampliamente utilizado en econometría, procesamiento de señales y predicción de demanda.

La autocorrelación, o correlación en serie, analiza los datos de series temporales para buscar correlaciones en los valores de distintos puntos de una serie temporal. Este método clave de análisis mide cómo se correlaciona un valor consigo mismo. En lugar de calcular el coeficiente de correlación entre distintas variables, como una X1 y una X2, calculamos el grado de correlación de una variable por sí misma en pasos temporales a lo largo del conjunto de datos. Cuando se construye un modelo de regresión lineal, uno de los supuestos principales es que los errores de predicción de 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 en el tiempo se denominan errores autocorrelacionados. Estos errores causan problemas con algunas de las formas más comunes de crear una regression lineal, como los mínimos cuadrados ordinarios. La forma de abordarlos consiste en aplicar una regresión a la variable dependiente sobre sí misma empleando los rezagos temporales identificados mediante una prueba de autocorrelación. El "desfase" es simplemente un valor anterior de la variable dependiente. Si dispone de datos mensuales y desea predecir el mes siguiente, puede emplear los valores de los dos meses anteriores como entrada. Esto significa que se hace una regresión de los dos rezagos anteriores sobre 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 tienen fluctuaciones o patrones estacionales, las autocorrelaciones serán mayores para los retrasos estacionales (en múltiplos del periodo estacional) que para otros retrasos. Cuando los datos son tanto de tendencia como estacionales, se ve una combinación de estos efectos. Las series temporales que no muestran autocorrelación son procesos verdaderamente aleatorios y se denominan ruido blanco. El ACF es un coeficiente de correlación entre dos valores en una serie temporal.

Existen varias formas de comprobar la autocorrelación:

Puede calcular los residuos y trazar esos errores estándar en el tiempo t, generalmente escritos como et, contra t. Cualquier grupo de residuos que esté a un lado de la línea cero puede indicar dónde existen autocorrelaciones y son significativas.

La ejecución de 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 retroceda la variable dependiente en el tiempo y luego pase ese modelo para calcular la estadística de Durbin-Watson. Para hacer esto en Python, puede pasar los residuos de un modelo de regresión lineal de ajuste a la prueba.

Otra opción es emplear una prueba de Ljung Box 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 residuales se distribuyen de forma independiente y la hipótesis alternativa de que los residuales no se distribuyen de forma independiente y muestran 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 emplear una visualización de correlograma generada a partir de correlaciones entre retrasos específicos en las series temporales. Un patrón en los resultados es una indicación de autocorrelación. Esto se representa gráficamente mostrando cuánto se correlacionan 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 retraso significativo. Cuando los datos no son aleatorios, es un buen indicio de que necesita emplearse un análisis de series temporales o incorporar retrasos en un análisis de regression para modelar los datos adecuadamente.

Existen características fundamentales de una serie temporal que pueden identificarse a través de la autocorrelación.

  • Estacionariedad
  • Tendencias
  • Estacionalidad

Estacionariedad

Una serie temporal 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 en los datos. La mayoría de los métodos de forecasting estadístico, incluyendo ARMA y ARIMA, se basan en el supuesto de que las series de tiempo pueden hacerse aproximadamente estacionarias a través de una o más transformaciones. Una serie estacionaria es comparativamente fácil de predecir porque simplemente se puede predecir que las propiedades estadísticas serán aproximadamente las mismas en el futuro que en el pasado. La 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. El ACF disminuye rápidamente hasta casi cero para una serie temporal estacionaria. Por el contrario, el ACF cae lentamente para una serie temporal no estacionaria.

Tendencia

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 aumentaría esos precios. Predecir datos que contienen tendencias puede ser difícil porque la tendencia oculta los otros patrones en los datos. Si los datos tienen una línea de tendencia estable a la que se revierten constantemente, es posible que sean estacionarios, en cuyo caso la tendencia se puede eliminar simplemente ajustando una línea de tendencia y restando la tendencia de los datos antes de ajustarle un modelo. Si los datos no son estacionarios en la tendencia, entonces podrían ser estacionarios en la diferencia, en cuyo caso la tendencia se puede eliminar mediante la diferenciación. La forma más sencilla de diferenciar es restar el valor anterior de cada valor para obtener una medida del cambio presente en los datos de la serie temporal. 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 YYt-1. Cuando las tendencias están presentes en una serie temporal, los rezagos más cortos suelen tener una fuerte correlación positiva o fuertes valores de correlación negativa en el ACF porque las observaciones más cercanas en el tiempo tienden a tener valores similares. Las correlaciones en el ACF disminuirán lentamente a medida que aumenten los retrasos.

Estacionalidad

La estacionalidad es cuando una serie temporal contiene fluctuaciones o cambios estacionales. Probablemente deberíamos esperar que las ventas de helados sean más altas en los meses de verano y más bajas en los meses de invierno, las ventas de esquí podrían aumentar de manera confiable a fines del otoño y disminuir a principios del verano. La estacionalidad puede darse en diferentes intervalos de tiempo, como días, semanas o meses. La clave para el análisis de series temporales es comprender cómo afecta la estacionalidad a nuestras series, lo que nos permite producir mejores pronósticos para el futuro. Cuando hay patrones estacionales, los valores de ACF muestran una autocorrelación más positiva para los retrasos en múltiplos de la frecuencia estacional que para otros retrasos.

Autocorrelación parcial

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 retrasos más cortos entre esas observaciones no explican. Un gráfico de 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í, entonces 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 hay nueva información en yt−2 que podría usarse para pronosticar yt. Para evitar este problema, usamos autocorrelaciones parciales para eliminar una serie de observaciones de retraso. El PACF mide solo la relación entre yt e yt−k  eliminando los efectos de los retrasos 1 a k. La primera autocorrelación parcial es siempre idéntica a la primera autocorrelación porque no hay nuevos datos entre ellas que eliminar. Todos los retrasos posteriores mostrarán solo la relación entre los retrasos luego de eliminar los retrasos intermedios. Esto a menudo puede dar una estimación más precisa de qué rezagos pueden tener indicaciones de estacionalidad al observar dónde hay valores más grandes de autocorrelación positiva o negativa.

En la práctica, el ACF ayuda a evaluar las propiedades de una serie temporal. El PACF, por otro lado, es más útil durante el proceso de especificación para un modelo autorregresivo. Los científicos o analistas de datos emplearán gráficos de autocorrelación parcial para especificar modelos de regression con datos de series temporales, modelos de media móvil autorregresiva (ARMA) o de media móvil integrada autorregresiva (ARIMA).

Diseño 3D de pelotas rodando en una pista

Las últimas novedades e insights sobre IA 


Descubra insights y noticias de expertos sobre IA, la nube y mucho más en el boletín semanal Think. 

Mixture of Experts | Podcast

Decodificación de la IA: Resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

Soluciones relacionadas

Soluciones relacionadas

Herramientas y soluciones de analytics

Con el fin de prosperar, las empresas deben utilizar los datos para fidelizar a sus clientes, automatizar los procesos empresariales e innovar con soluciones impulsadas por IA.

Explorar las soluciones de analytics
Servicios de consultoría en datos y analytics

Desbloquee el valor de los datos empresariales con IBM Consulting y cree una organización impulsada por insights que ofrezca ventajas empresariales.

Descubra los servicios de analytics
IBM Cognos Analytics

Presentamos Cognos Analytics 12.0: insights impulsados por IA para una mejor toma de decisiones.

Explorar Cognos Analytics
Dé el siguiente paso

Con el fin de prosperar, las empresas deben utilizar los datos para fidelizar a sus clientes, automatizar los procesos empresariales e innovar con soluciones impulsadas por IA.

Explorar las soluciones de analytics Descubra los servicios de analytics