Transformación de datos para la predicción de series temporales multivariantes

PatchTST: Transformación de series temporales

Las series temporales multivariantes se tratan como señales de múltiples canales. Cada serie temporal se descompone en secuencias individuales y cada una se introduce como un token separado en el backbone de un Transformer. Luego, se genera una predicción para cada serie individual, cuyos resultados se concatenan para producir el pronóstico final.

Este enfoque difiere de los métodos tradicionales que operan a nivel de punto individual.

Reformulación de las relaciones en los datos: de secuencias extensas a resúmenes compactos

  • Enfoque anterior (entrada a nivel de punto):
    • Para una secuencia histórica de longitud L, el modelo necesitaba procesar L tokens. La secuencia resultante era extensa, con información altamente redundante entre tokens adyacentes (por ejemplo, la temperatura a las 9:00 y a las 9:01 es casi idéntica).
    • Problema: El Transformer debía buscar patrones entre estos L tokens altamente similares y extensos, lo que era ineficiente y susceptible al ruido en puntos aislados.
  • PatchTST (segmentación en parches):
    • A través de la segmentación, una secuencia larga se comprime en una secuencia de parches mucho más corta. Por ejemplo, 1024 puntos pueden comprimirse en 64 parches.
    • Mejoras:
      • Eliminación de redundancia: Un parche individual contiene la información original, pero la relación entre parches es información de nivel superior y resumida. Esto elimina la redundancia entre puntos adyacentes.
      • Robustez al ruido: Un valor atípico (ruido) en un punto individual se "diluye" dentro de un parche, ya que el modelo se centra en la tendencia representada por el parche completo y no en un punto aislado. Esto hace que el modelo sea menos sensible al ruido y más robusto.

La segmentación en parches captura información local. Dada una entrada X con dimensiones M x L (donde L es la longitud de los datos y M el número de variables), se descompone en M secuencias individuales de dimensión 1 x L. Luego, la segmentación en parches produce una salida con dimensiones P x N.

La segmentación plantea una nueva cuestión: ¿cómo se modela la relación entre los diferentes parches?

TimeMixer: Aálisis multi-escala

1. Generación de secuencias multi-escala

Dada una secuencia original X con dimensiones P x C, se utiliza average pooling para submuestrear la secuencia de entrada y generar M+1 secuencias en diferentes escalas, con dimensiones Mxpxc.

Ventajas: Las secuencias generadas contienen información multi-escala (tanto de grano fino como grueso), incorporando dos tipos de tendencia en las predicciones temporales:

  • La escala fina (por ejemplo, horas) captura cambios microscópicos (fluctuaciones intradiarias).
  • La escala gruesa (por ejemplo, días, semanas) captura tendencias macroscópicas (periodicidad, tendencias a largo plazo).

Esto permite capturar variaciones tanto internas del tiempo como macroscópicas.

2. Capa de incrustación (embedding)

Imagina un plano 2D con puntos rojos y azules entrelazados (linealmente inseparables). Si se proyectan estos puntos en un espacio 3D, es posible encontrar un plano que los separe (linealmente separables).

Los datos de series temporales en su espacio original (baja dimensionalidad) suelen ser no lineales y altamente entrelazados. Al mapearlos a un espacio de mayor dimensión:

  • Los patrones temporales complejos se vuelven más fáciles de capturar mediante modelos lineales.
  • Las componentes de estacionalidad y tendencia pueden distribuirse en subespacios diferentes dentro del espacio de alta dimensión.

3. PDM (Módulo de Mezcla Descomponible del Pasado)

Este módulo opera sobre las características multi-escala de entrada.

a) Descomposición de la serie

Se aplica una descomposición mediante media móvil (como en AutoFormer).

b) Mezcla de estacionalidad y tendencia

PART01: La estacionalidad se define como ciclos pequeños que componen ciclos más grandes.

  • La información de estacionalidad detallada (ej. hora punta) es más clara en escalas finas.
  • Fluctuaciones por hora → Ciclo diario
  • Ciclo diario → Ciclo semanal
  • Ciclo semanal → Ciclo mensual

Escalas: s₀ (fina) → s₁ (media) → s₂ (gruesa)

Patrón: Detalle horario → Patrón diario → Patrón semanal

Se adopta una transferencia de información estacional de abajo hacia arriba (bottom-up).

Razón: Si se transfiriera la estacionalidad de arriba hacia abajo (de escala gruesa a fina), se perdería información detallada importante. La escala gruesa ya ha suavizado las variaciones finas de periodicidad.

PART02: La tendencia es un cambio macroscópico y a largo plazo.

  • Las escalas gruesas pueden mostrar con mayor claridad la dirección real de la tendencia.

Ruta: t₂ (gruesa) → t₁ (media) → t₀ (fina)

Patrón: Tendencia macroscópica → Tendencia a medio plazo → Guía para la tendencia a corto plazo

Se adopta una transferencia de información de tendencia de arriba hacia abajo (top-down).

Razón: Si se transfiriera la tendencia de abajo hacia arriba (de escala fina a gruesa), el ruido se propagaría y amplificaría en cada nivel, y la tendencia macroscópica se contaminaría con las fluctuaciones microscópicas.

¿Por qué no seleccionar directamente los datos más macroscópicos o microscópicos para representar t y s?

No existe una escala "perfecta"; cada una tiene sus limitaciones y su valor.

Analogía: Planificación urbana

  • Nivel nacional (escala gruesa): Define el objetivo de desarrollar la economía (tendencia).
  • Nivel de ciudad (escala fina): Define cómo construir específicamente (detalles).
  • Se necesita comunicación bidireccional:
    • La ciudad informa al gobierno sobre necesidades específicas (de abajo hacia arriba).
    • El gobierno transmite la dirección de desarrollo a la ciudad (de arriba hacia abajo).

TimeMixer elige permitir la colaboración entre escalas.

tendencia_final = fusión_inteligente(información_de_tendencia_de_todas_las_escalas)
estacionalidad_final = fusión_inteligente(información_de_estacionalidad_de_todas_las_escalas)

c) Combinación y red feedforward

Resultado de mezcla estacional + Resultado de mezcla de tendencia → Suma → FeedForward → Conexión residual → Salida

La información de estacionalidad y tendencia obtenidas se suman directamente, luego se pasan a través de una red FFN y una conexión residual.

Estructura del FFN:

Capa lineal (expansión de dimensión) → Función de activación (GELU) → Capa lineal (reducción de dimensión)

La simple suma lineal de estacionalidad y tendencia es insuficiente; en la realidad, su relación puede ser compleja. La FFN aprende esta interacción compleja.

Sin FFN: solo información original + mezcla de tendencia estacional, sin aprendizaje profundo de características.

4. FMM (Módulo de Mezcla de Predictores Futuros)

El predictor utiliza únicamente una única capa lineal.

Proceso de predicción demostrado.

WPMixer: Descomposición Wavelet

(1) Datos de entrada originales:

(2) Preprocesamiento: Normalización RevIN. La secuencia normalizada es:

(3) Descomposición wavelet:

Sea m el número de niveles de descomposición wavelet.

Una descomposición genera: XA1, XD1

  • Serie de coeficientes de aproximación XA1 ∈ R^{C×L1}: Generada por un filtro paso bajo, captura la tendencia de baja frecuencia o contorno de la señal. L1 ≈ L/2.
  • Serie de coeficientes de detalle XD1 ∈ R^{C×L1}: Generada por un filtro paso alto, captura los detalles o cambios abruptos de alta frecuencia.

Descomposición iterativa multi-nivel:

  • Los coeficientes de aproximación del nivel anterior XA1 se toman como nueva entrada para repetir el proceso de descomposición del paso 2.
  • Después de m niveles de descomposición, se obtiene un conjunto de series de coeficientes:
    • 1 serie final de coeficientes de aproximación: XAm
    • m series de coeficientes de detalle en diferentes niveles: XDm, XDm-1, …, XD1

¿Por qué se conserva solo el coeficiente de aproximación XAm, pero se necesitan todos los coeficientes de detalle?

Una analogía intuitiva: la lectura detallada de un artículo.

Imagina que lees detenidamente un texto largo:

  • Primera lectura (Nivel 1): Lees todo el texto, captas la estructura principal (A1) y algunos detalles clave (D1).
  • Segunda lectura (Nivel 2): Ya no lees el texto completo, sino que te concentras en la estructura principal obtenida (A1). Refinas esa estructura para obtener la tesis central (A2) y encuentras los argumentos clave (D2) que la respaldan.
  • Tercera lectura (Nivel 3): Te concentras en la tesis central (A2), la refinas hasta el tema principal (A3) y analizas su significado más profundo (D3).
  • Resumen final (Am): La esencia más refinada.
  • Todos los niveles de detalle (Dm, Dm-1,...,D1): Toda la información de soporte, desde lo más profundo hasta lo más superficial.

¿Por qué utilizar la descomposición wavelet?

  1. Las series temporales del mundo real (como carga eléctrica, flujo de tráfico) no solo contienen tendencias suaves y periodicidades fijas (estacionalidad), sino también picos (spikes) y caídas abruptas (dips). Estos cambios abruptos se localizan en el dominio del tiempo y se manifiestan como componentes de alta frecuencia en el dominio de la frecuencia.
  2. Modelos anteriores, como TimeMixer, que utilizan media móvil (en esencia, un filtro paso bajo) para procesar la estacionalidad y tendencia, pueden filtrar esta información. La descomposición wavelet proporciona simultáneamente localización temporal y frecuencial: los coeficientes de detalle Dᵢ indican claramente qué frecuencia de evento ocurre en qué momento.
  3. TimeMixer mezcla información de diferentes escalas, y si se procesara directamente con una FFN, podría llevar a interferencias y pérdida de información de diferentes frecuencias. WPMixer, al utilizar ramas independientes para alta y baja frecuencia, evita la "confusión cognitiva" que surge al procesar todas las frecuencias simultáneamente.
  4. Aálisis multi-resolución real:
    • Cada nivel de descomposición corresponde a una "resolución" o "escala" específica.
    • Coeficientes de aproximación profundos (ej. A3): Visión macroscópica, centrándose en tendencias de largo plazo y cambio lento.
    • Coeficientes de detalle superficiales (ej. D1): Visión microscópica, centrándose en detalles de corto plazo y cambio rápido.

Esta estructura permite que el modelo capture de forma natural tanto dependencias a largo plazo como dinámicas a corto plazo, sin depender de mecanismos de atención complejos como en los Transformers, ni de diseños multi-escala manuales complejos como en otros modelos.

(4) Segmentación e incrustación (Embedding)

Independientemente de [la serie], se tratan de la misma manera (hay m+1 en total).

Segmentación: La serie C x Li se descompone en parches con longitud de bloque P y paso S →

Incrustación:

¿Por qué convertir de dimensión P a D?

  • Bloque de dimensión P (antes de la conversión): Es una pequeña ventana que contiene P valores escalares de puntos temporales continuos. Es solo una secuencia numérica corta.
  • Incrustación de dimensión D (después de la conversión): Es un único vector de características de alta dimensión. Cada dimensión de este vector representa alguna característica abstracta extraída de los P puntos originales. El modelo puede crear un espacio de características de mayor dimensión y más discriminatorio.
  • Proporciona el "lenguaje" adecuado para el mezclador MLP posterior. El MLP (perceptrón multicapa) es más eficiente al procesar vectores de características densos y de alta dimensión.

(5) Módulo de mezcla (Mixing)

PatchMixer: Mezcla información a lo largo de la dimensión de los parches (es decir, la dimensión temporal).

Proceso resumido: Normalización por lotes 2D, primera capa lineal para expansión de dimensión, activación GELU, segunda capa lineal para reducción de dimensión. Dimensión de retorno: C x Nᵢ x d.

Opera sobre Nᵢ multiplicando por tf.

¿Por qué un PatchMixer?

  • Intercambio de información entre parches: Inicialmente, cada parche solo contiene información local. El Patch Mixer permite el intercambio de información entre todos los parches, de modo que cada parche pueda percibir la información de otros parches en la serie.
  • Mezcla temporal: Captura dependencias temporales globales.

Embedding Mixer (Mezclador de incrustaciones): Mezcla información a lo largo de la dimensión de incrustación (es decir, la dimensión de características).

Proceso resumido: Se aplica normalización nuevamente a la salida del PatchMixer, seguido de una capa lineal de expansión, activación GELU, capa lineal de reducción.

Dimensión de retorno: C x Nᵢ x d.

Opera sobre d multiplicando por df.

¿Por qué un Embedding Mixer?

  • Recalibración de características: Diferentes dimensiones de incrustación pueden capturar diferentes patrones temporales. El Embedding Mixer permite que estas características interactúen, aprendiendo cómo repesar y combinar estas características.
  • Analogía: Como al cocinar, no solo se necesitan ingredientes (características), sino también saber cómo proporcionar sus proporciones para preparar un buen plato.
  • Mezcla de características: Aprende interacciones entre características.
  • Función específica:
    • Puede descubrir que la característica "hora punta matutina" combinada con la característica "día lluvioso" produce un aumento significativo en el flujo de tráfico.
    • Aprende que ciertas combinaciones de características predicen mejor los valores futuros que características individuales.
    • La conexión residual asegura no perder información original, obteniendo simultáneamente los beneficios de la interacción de características.

(6) Módulo de la cabeza (Head module)

La siguiente etapa proviene de otra ronda de procesamiento por el Mixer.

Se obtiene YWᵢ. De manera análoga a la definición anterior, tanto los coeficientes de aproximación como los de detalle de Y se representan con YW, resultando en un total de m+1.

(7) Módulo de reconstrucción

Se utilizan los coeficientes de aproximación y de detalle para reconstruir la serie temporal. Finalmente, se aplica IRevIN para obtener la predicción Xᵀ.

Etiquetas: PatchTST TimeMixer WPMixer Series Temporales descomposición wavelet

Publicado el 6-26 00:18