Las series temporales son registros ordenados en el tiempo. Su análisis permite extraer patrones y prever cómo evolucionará un fenómeno en el futuro. Para modelar estos datos se utilizan técnicas estadísticas y de machine learning que descomponen la serie en nivel, tendencia, estacionalidad y ruido. En esta entrada repasamos los modelos más usados —ARIMA, ETS, Prophet, RobustSTL (RST) y LSTM—, resaltando sus fortalezas, limitaciones y algunos consejos prácticos para sacarle partido a cada uno.
¿Qué compone una serie temporal?
Antes de elegir un modelo es importante entender los componentes básicos. Una serie sin tendencia ni estacionalidad se puede modelar con métodos sencillos como la media o el último valor, pero en la práctica suele existir un nivel, una tendencia de largo plazo, patrones estacionales y ruido. El método de suavizado exponencial simple (“Simple Exponential Smoothing”, SES) calcula el pronóstico como una media ponderada de todas las observaciones, asignando más peso a los datos recientes y decreciendo exponencialmente hacia el pasado. El parámetro de suavizado α controla la importancia de los últimos valores: valores grandes de α dan más peso al presente y reducen la influencia del pasado.
ARIMA
El modelo ARIMA (AutoRegressive Integrated Moving Average) combina tres ideas: autoregresión (AR), integración (I) y media móvil (MA). La parte AR utiliza una combinación lineal de los valores pasados, la parte MA modela los errores de pronósticos anteriores y la parte integrada aplica diferencias al conjunto de datos para convertir una serie no estacionaria en estacionaria. El modelo se especifica mediante tres parámetros (p,d,q):
- p: número de retardos (lags) en la componente autoregresiva.
- d: número de diferencias aplicadas para lograr estacionalidad.
- q: número de términos de media móvil.
Los métodos ARIMA son flexibles para datos lineales y se apoyan en el procedimiento de Box‑Jenkins: identificar la estacionalidad, estimar parámetros y verificar los residuos. Son idóneos para series con estructuras lineales claras, pero requieren que la serie sea aproximadamente estacionaria porque sino presentarán dificultades ante patrones no lineales o múltiples estacionalidades.
Tip técnico: Para determinar si la serie es estacionaria utiliza pruebas como la Augmented Dickey‑Fuller (ADF) y examina la función de autocorrelación (ACF). Si no lo es, aplica diferencias hasta lograrla. Las librerías
statsmodelsen Python oforecasten R ofrecen funcionesauto_arima()que seleccionan automáticamente mediante diferentes criterios.
ETS (suavizado exponencial con error, tendencia y estacionalidad)
El modelo ETS (Error, Trend, Seasonality) se basa en el suavizado exponencial. En lugar de suponer que los valores pasados tienen igual importancia, se asignan pesos decrecientes hacia el pasado. El pronóstico se calcula como una suma infinita ponderada en la que los pesos decrecen con un factor α. ETS amplía el SES incorporando componentes de tendencia y estacionalidad (aditivas o multiplicativas), y por eso es más versátil en series no estacionarias.
Una idea extendida es que ARIMA es más general que ETS, pero no es cierto. Las funciones de suavizado exponencial no lineales no tienen equivalente ARIMA y viceversa. Los modelos ETS con estacionalidad o tendencia no amortiguada poseen dos raíces unitarias, por lo que requieren dos diferencias para volverse estacionarios. Debido a que las clases de modelos son distintas, no se pueden comparar directamente con criterios como AICc.
Tip técnico: En R, la función
ets()evalúa varias combinaciones de error, tendencia y estacionalidad para seleccionar el modelo adecuado. En Python, la bibliotecastatsmodelsincluye suavizado exponencial enExponentialSmoothing(). La parametrizaciónHolt-Winterspermite manejar tendencias y estacionalidades, y conviene probar versiones aditivas y multiplicativas cuando exista crecimiento exponencial.
Prophet
Prophet es un modelo desarrollado por Meta que descompone la serie en tendencia, estacionalidad y efectos especiales como vacaciones. La tendencia puede ser lineal o logística con puntos de cambio; la estacionalidad se representa con series de Fourier que capturan ciclos diarios, semanales o anuales; los eventos especiales permiten incorporar vacaciones o promociones; y un término de error recoge el ruido. La ecuación general es:
y(t)=g(t)+s(t)+h(t)+e(t)
Prophet es especialmente útil para series de negocios con múltiples estacionalidades y eventos externos. Se ajusta de forma automática, permitiendo personalizar el número de puntos de cambio y la capacidad de crecimiento (lineal o logística). Además, facilita la inclusión de variables externas (regresores) y maneja los datos faltantes de forma robusta.
Tip técnico: Cuando el comportamiento del crecimiento se satura (por ejemplo, suscriptores que llegan al límite de la población), usa el modo logístico definiendo la
capacidad(carrying capacity). Para incluir festivos españoles, crea un calendario con las fechas y pasa el dataframe al parámetroholidays. Ajusta el parámetrochangepoint_prior_scalepara controlar la flexibilidad de los puntos de cambio: valores altos permiten cambios abruptos, pero pueden sobreajustar.
RobustSTL (RST)
RobustSTL (a veces abreviado como RST) es un algoritmo de descomposición de series temporales robusto para separar tendencia, estacionalidad y residuo en series con patrones complejos y ruido. El algoritmo original RobustSTL fue diseñado para manejar outliers y cambios abruptos; la versión Fast RobustSTL extiende el método para tratar múltiples estacionalidades y reduce el coste computacional mediante un algoritmo ADMM especializado, pasando de O(N2) a O(NlogN) por iteración. Este tipo de descomposición es útil como paso previo a la detección de anomalías o la construcción de modelos híbridos.
Tip técnico: Emplea RobustSTL para limpiar series con anomalías o cambios de régimen antes de ajustar ARIMA o LSTM. La biblioteca
robustSTLen Python implementa estas técnicas y permite especificar el número de estacionalidades. Tras la descomposición, utiliza la tendencia y la estacionalidad extraídas como entradas para modelos predictivos o para detectar comportamientos anómalos.
LSTM
LSTM (Long Short‑Term Memory) es un tipo de red neuronal recurrente diseñada para aprender dependencias a largo plazo y evitar el problema del gradiente desvanecido. La arquitectura incorpora tres tipos de puertas (input, forget y output) que controlan qué información se añade, se descarta o se envía a la salida. Estas puertas se calculan mediante capas totalmente conectadas con activación sigmoidal, y un nodo de entrada con activación tanh genera las nuevas candidatas de memoria. El estado interno de memoria se actualiza combinando la información retenida y la nueva entrada, lo que permite a la red recordar información relevante durante muchos pasos. La capacidad de retener y olvidar selectivamente hace que las LSTM sean idóneas para patrones no lineales y relaciones a largo plazo.
Tip técnico: Para usar LSTM en predicciones univariantes, convierte la serie en pares de entrada–salida mediante ventanas deslizantes. Normaliza los datos (por ejemplo, con
StandardScaler) y divide el conjunto en entrenamiento y validación. Usa estructurasMany-to-One(por ejemplo,return_sequences=False) para predicciones puntuales oMany-to-Many(return_sequences=True) para pronósticos de varios pasos. Añade regularización (dropout, early stopping) para evitar sobreajuste y prueba arquitecturas más profundas (stacked LSTM) cuando dispongas de grandes volúmenes de datos.
¿Cómo elegir el modelo adecuado?
No existe un modelo universal. La elección depende de las características de la serie y del objetivo.
| Situación | Modelo recomendado |
|---|---|
| Datos lineales y estacionarios | ARIMA ofrece interpretabilidad y requiere pocos datos. Utiliza métodos de identificación como la ACF/PACF para fijar y . |
| Series con tendencia y estacionalidades claras | ETS maneja tendencias y estacionalidades aditivas o multiplicativas con pocos parámetros. Excelente para series de ventas u operaciones. |
| Series con múltiples estacionalidades y efectos externos | Prophet automatiza la detección de puntos de cambio y permite añadir festivos o campañas. Ideal para métricas de negocio (tráfico web, ingresos). |
| Series con ruido, outliers o cambios abruptos | RobustSTL descompone la serie de forma robusta; útil como preprocesado o para análisis de anomalías. |
| Patrones no lineales y dependencias de largo plazo | LSTM capta relaciones complejas pero requiere muchos datos y más potencia computacional. Adecuado para señales de sensores, series de alta frecuencia o donde existan interacciones no lineales. |


Deja una respuesta