← Volver al blog

Descomposición de series de tiempo: separar tendencia, estacionalidad y residual con STL

Descomposición de series de tiempo: separar tendencia, estacionalidad y residual con STL

Antes de modelar una serie, ayuda ver qué hay dentro de ella. La descomposición divide una serie observada yₜ en una tendencia-ciclo Tₜ, un componente estacional Sₜ y un remanente Rₜ — de forma aditiva (yₜ = Tₜ + Sₜ + Rₜ) cuando las variaciones estacionales se mantienen más o menos constantes en tamaño, o multiplicativa (yₜ = Tₜ × Sₜ × Rₜ, o aditiva en escala logarítmica) cuando escalan con el nivel (FPP3 §3.1).

Descomposición clásica y sus límites

El método clásico estima la tendencia con una media móvil y luego promedia los valores sin tendencia por periodo estacional. Es simple y sigue siendo común, pero tiene debilidades reales: la media móvil deja sin estimación de tendencia a varias observaciones al inicio y al final de la serie, asume que el componente estacional es fijo en toda la serie, y no es robusto a outliers, que se filtran directo al remanente (FPP3 §3.4).

STL: descomposición Seasonal-Trend usando Loess

Cleveland, Cleveland, McRae & Terpenning (1990) propusieron STL para corregir esos problemas. STL ajusta la tendencia y el componente estacional con suavizamiento Loess iterativo (regresión ponderada local), lo que significa:

  • El componente estacional puede cambiar en el tiempo — útil cuando la temporada alta de una categoría se mueve.
  • Maneja cualquier periodicidad estacional, no solo mensual/trimestral.
  • Un modo robusto opcional le baja peso a los outliers para que no distorsionen la estimación de tendencia o estacionalidad.

El costo es que STL solo produce una descomposición aditiva — toma logaritmos primero si el patrón estacional es multiplicativo. STL de statsmodels y fabletools::STL() de R lo implementan; X-13ARIMA-SEATS del U.S. Census Bureau es el sucesor de nivel producción del método clásico, usado en estadística oficial.

Para qué sirve la descomposición

La descomposición no es en sí un método de pronóstico (aunque se puede construir un pronóstico “naïve estacional” extrapolando la tendencia y volviendo a sumar el último ciclo estacional). Su valor real es diagnóstico:

  • Ver la forma estacional antes de elegir entre estacionalidad aditiva/multiplicativa de ETS o un orden estacional de ARIMA.
  • Desestacionalizar una serie antes de compararla con una métrica o driver ciego a la estacionalidad.
  • Aislar el remanente para detectar outliers o quiebres estructurales que una gráfica cruda esconde bajo la variación estacional.

Checklist

  • Grafica la serie primero — la estacionalidad aditiva vs. multiplicativa debería verse antes de elegir método.
  • Prefiere STL sobre la descomposición clásica salvo que necesites específicamente ajustes de calendario estilo X-13ARIMA-SEATS.
  • Usa la opción robusta de STL cuando la serie tenga outliers conocidos (promociones, quiebres de stock, errores de datos).
  • Trata la descomposición como un paso de diagnóstico, no como un pronóstico — usa lo que aprendas para alimentar ETS, SARIMA o un modelo de ML, y valida fuera de muestra.

El visor de modelos de Forecast Studio grafica los componentes de tendencia y estacionalidad que ajusta detrás de cada pronóstico, para que verifiques la forma antes de confiar en el número — pruébalo en el tenant público del plan Free.

Fuentes: Hyndman & Athanasopoulos, FPP3 §3 · Cleveland, Cleveland, McRae & Terpenning (1990), STL · statsmodels STL · U.S. Census Bureau, X-13ARIMA-SEATS