Explicación intuitiva del promedio móvil exponencial

Demystifying the Exponential Moving Average An Intuitive Explanation

Comprenda la lógica detrás del algoritmo fundamental utilizado en el descenso del gradiente

Introducción

En el análisis de series temporales, a menudo es necesario comprender la dirección de la tendencia de una secuencia teniendo en cuenta los valores anteriores. La aproximación de los próximos valores en una secuencia se puede realizar de varias formas, incluido el uso de líneas base simples o la construcción de modelos avanzados de aprendizaje automático.

Un promedio móvil exponencial (ponderado) es un equilibrio robusto entre estos dos métodos. Tener un método recursivo simple debajo del capó hace posible implementar eficientemente el algoritmo. Al mismo tiempo, es muy flexible y se puede adaptar con éxito para la mayoría de los tipos de secuencias.

Este artículo cubre la motivación detrás del método, una descripción de su flujo de trabajo y corrección de sesgos, una técnica efectiva para superar un obstáculo de sesgo en la aproximación.

Motivación

Imagina un problema de aproximación de un parámetro dado que cambia con el tiempo. En cada iteración, conocemos todos sus valores anteriores. El objetivo es predecir el próximo valor que depende de los valores anteriores.

Una de las estrategias ingenuas es simplemente tomar el promedio de los últimos valores. Esto puede funcionar en ciertos casos, pero no es muy adecuado para escenarios en los que un parámetro depende más de los valores más recientes.

Una de las posibles formas de superar este problema es dar mayor peso a los valores más recientes y asignar menos peso a los valores anteriores. El promedio móvil exponencial es exactamente una estrategia que sigue este principio. Se basa en la suposición de que los valores más recientes de una variable contribuyen más a la formación del próximo valor que los valores precedentes.

Fórmula

Para entender cómo funciona el promedio móvil exponencial, veamos su ecuación recursiva:

Fórmula del promedio móvil exponencial
  • vₜ es una serie de tiempo que aproxima una variable dada. Su índice t corresponde al instante t. Dado que esta fórmula es recursiva, se necesita el valor v₀ para el instante inicial t = 0. En la práctica, v₀ suele tomarse como 0.
  • θ es la observación en la iteración actual.
  • β es un hiperparámetro entre 0 y 1 que define cómo se debe distribuir la importancia del peso entre un valor promedio anterior vₜ-₁ y la observación actual θ

Escribamos esta fórmula para los primeros varios valores del parámetro:

Obteniendo fórmula para el instante t-ésimo

Como resultado, la fórmula final se ve así:

Promedio móvil exponencial para el instante t-ésimo

Podemos ver que la observación más reciente θ tiene un peso de 1, la penúltima observación tiene un peso de β, la antepenúltima tiene un peso de β², etc. Dado que 0 < β < 1, el término de multiplicación βᵏ baja exponencialmente a medida que aumenta k, por lo que las observaciones antiguas son menos importantes. Finalmente, cada término de suma se multiplica por (1 – β).

En la práctica, el valor de β suele elegirse cerca de 0,9.

Distribución de peso para diferentes instantes (β = 0,9)

Interpretación matemática

Utilizando el famoso segundo límite maravilloso del análisis matemático, es posible demostrar el siguiente límite:

Haciendo una sustitución β = 1 – x, podemos reescribirlo de la siguiente forma:

También sabemos que en la ecuación para el promedio móvil exponencial, cada valor de observación se multiplica por un término βᵏ donde k indica cuántos intervalos de tiempo atrás se calculó la observación. Dado que la base β es igual en ambos casos, podemos igualar los exponentes de ambas fórmulas:

Utilizando esta ecuación, para un valor elegido de β, podemos calcular un número aproximado de intervalos de tiempo t que se necesitan para que los términos de peso alcancen el valor de 1 / e ≈ 0.368). Esto significa que las observaciones calculadas en las últimas t iteraciones tienen un término de peso mayor que 1 / e y aquellas calculadas más allá de ese rango de t intervalos de tiempo tienen pesos inferiores a 1 / e y, por lo tanto, tienen mucha menos importancia.

En realidad, los pesos inferiores a 1 / e tienen un impacto mínimo en el promedio ponderado exponencial. Por eso se dice que para un valor dado de β, el promedio ponderado exponencial tiene en cuenta las últimas t = 1 / (1 – β) observaciones.

Para tener una mejor idea de la fórmula, vamos a probar diferentes valores para β:

Por ejemplo, si tomamos β = 0.9 indica que aproximadamente en t = 10 iteraciones, el peso decae a 1 / e, en comparación con el peso de la observación actual. En otras palabras, el promedio ponderado exponencial depende principalmente solo de las últimas t = 10 observaciones.

Corrección de sesgo

El problema común al utilizar el promedio ponderado exponencial es que en la mayoría de los casos no puede aproximar bien los primeros valores de la serie. Esto se debe a la falta de una cantidad suficiente de datos en las primeras iteraciones. Por ejemplo, imaginemos que se nos da la siguiente secuencia de series temporales:

El objetivo es aproximarla con el promedio ponderado exponencial. Sin embargo, si usamos la fórmula normal, los primeros varios valores pondrán un gran peso en v₀ que es 0, mientras que la mayoría de los puntos en el diagrama de dispersión están por encima de 20. Como consecuencia, una secuencia de primeros promedios ponderados será demasiado baja para aproximar con precisión la secuencia original.

Una de las soluciones ingenuas es tomar un valor para v₀ que esté cerca de la primera observación θ₁. Aunque este enfoque funciona bien en algunas situaciones, todavía no es perfecto, especialmente en casos en los que una secuencia dada es volátil. Por ejemplo, si θ₂ difiere demasiado de θ₁, entonces mientras se calcula el segundo valor v₂, el promedio ponderado normalmente pondrá mucha más importancia en la tendencia anterior v₁ que en la observación actual θ₂. Como resultado, la aproximación será muy pobre.

Una solución mucho más flexible es utilizar una técnica llamada “corrección de sesgo”. En lugar de simplemente usar los valores calculados vₖ, se dividen por (1 —βᵏ). Suponiendo que se elige β cerca de 0.9–1, esta expresión tiende a ser cercana a 0 para las primeras iteraciones donde k es pequeño. Así, en lugar de acumular lentamente los primeros varios valores donde v₀ = 0, ahora se dividen por un número relativamente pequeño que los escala en valores más grandes.

Ejemplo de cálculo del promedio móvil exponencial con y sin corrección de sesgo

En general, esta escala funciona muy bien y se adapta de manera precisa a los primeros términos. A medida que k se vuelve más grande, el denominador se acerca gradualmente a 1, omitiendo gradualmente el efecto de esta escala que ya no es necesaria, porque a partir de cierta iteración, el algoritmo puede confiar con confianza en sus valores recientes sin ninguna escala adicional.

Conclusión

En este artículo, hemos cubierto una técnica extremadamente útil para aproximar una secuencia de series de tiempo. La robustez del algoritmo de promedio ponderado exponencial se logra principalmente mediante su hiperparámetro β, que se puede adaptar para un tipo particular de secuencia. Además, el mecanismo de corrección de sesgo introducido permite aproximar eficientemente los datos incluso en marcas de tiempo tempranas cuando hay poca información.

El promedio ponderado exponencial tiene un amplio alcance de aplicación en el análisis de series de tiempo. Además, se utiliza en variaciones del algoritmo de descenso de gradiente para aceleración de convergencia. Uno de los más populares es el optimizador de Momentum en el aprendizaje profundo, que elimina oscilaciones innecesarias de una función optimizada, alineándola de manera más precisa hacia un mínimo local.

Todas las imágenes, a menos que se indique lo contrario, son del autor

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Aprendizaje Automático

Conoce Video-ControlNet Un nuevo modelo de difusión de texto a video que cambiará el juego y dará forma al futuro de la generación de video controlable.

En los últimos años, ha habido un rápido desarrollo en la generación de contenido visual basado en texto. Entrenados ...

Inteligencia Artificial

Conoce a AnomalyGPT Un nuevo enfoque de IAD basado en Modelos de Visión-Lenguaje de Gran Escala (LVLM) para detectar anomalías industriales

En varias tareas de Procesamiento del Lenguaje Natural (NLP), los Modelos de Lenguaje de Gran Tamaño (LLMs) como GPT-...

Inteligencia Artificial

Una nueva investigación de IA de Italia presenta un modelo generativo basado en difusión capaz tanto de la síntesis musical como de la separación de fuentes

Los seres humanos son capaces de procesar varias fuentes de sonido al mismo tiempo, tanto en términos de composición ...

Inteligencia Artificial

El diagnóstico y tratamiento del cáncer podrían recibir un impulso de la IA

Se diseñó un nuevo algoritmo de aprendizaje automático para ayudar a los médicos a diagnosticar tipos específicos de ...

Inteligencia Artificial

Esta investigación de IA presenta PERF la transformación Panorámica NeRF que convierte imágenes individuales en escenas 3D explorables.

NeRF significa Neural Radiance Fields, una técnica de aprendizaje profundo para la reconstrucción de escenas en 3D y ...