Datos, modelos, parámetros de entrenamiento y validación del 4.º padecimiento · EpiForecast-MX
El Dengue se modela distinto a la cohorte neurológica: en conteos absolutos (no en tasa), sobre escala log1p, con un regresor climático (El Niño / ONI) y un motor nuevo count-correcto (NB-GLM). Aquí se documenta cada decisión, con sus parámetros reales y sus referencias.
De qué serie partimos y por qué el Dengue se trata como una cohorte aparte
Dengue confirmado reconstruido de los boletines del SINAVE (Cuadro 7.2, esquema OMS 2009 con tres severidades A97.0 / A97.1 / A97.2) agregadas a un único «Dengue». Serie semanal nacional y por entidad 2018-W27 a 2026 (≈391 semanas), alineada a la semana ISO.
A diferencia de neuro (tasa por 100k), el Dengue se modela en conteos: se activa log1p (estabiliza la varianza de los brotes), se desactiva la normalización por tasa, se acota con un clamp estacional a la envolvente histórica y se invierte con expm1 al predecir. Sin log, la tendencia multiplicativa colapsa a ~0 al extrapolar.
99 series (Nacional + 32 entidades × 3 sexos) más 4 regiones agregadas. Las semanas sin boletín se rellenan por interpolación (no con ceros), salvo un cero real observado, que se conserva en cero («si es 0, es 0»).
Tres compiten en producción; dos quedan fuera por una razón estructural
Modelo aditivo de tendencia + estacionalidad. Para Dengue: estacionalidad multiplicativa sobre log1p, estacionalidad anual de Fourier y el regresor ONI. En producción
Red recurrente autorregresiva probabilística (GluonTS + PyTorch). Aprende de los lags y la estacionalidad; bloque short_series ajustado a la historia más corta del Dengue. En producción
GLM Negative-Binomial + Fourier anual + tendencia + lags + ONI. Count-correcto y extrapola sin divergir. El mejor del estudio (SMAPE 52 en backtest). En producción
Prophet + XGBoost (Ensemble) y Prophet + ETS + LightGBM + Ridge (Stacking). Fuera de producción: los árboles no extrapolan la dinámica epidémica a 52 semanas (divergen ~33x / ~99x); el clamp estacional los acota, pero no se eligen. Fuera
Valores reales de configuración por motor (config/models/*.yaml y el código del modelo)
| Parámetro | Valor | Razón |
|---|---|---|
| seasonality_mode | multiplicative | La amplitud del brote crece con el nivel |
| changepoint_prior_scale | 0.05 (fijo) | Barrido validado: ratio yhat/real nacional 0.98; valores altos persiguen la caída reciente |
| seasonality_prior_scale | {1.0, 5.0, 10.0} | Grid de 3 (único HP que se busca) |
| add_seasonality | period=365.25, fourier_order=10 (regional 5) | Estacionalidad anual exacta |
| transformación | log1p, sin tasa | Cohorte de conteos-log |
| regresor | ONI, lag 16 sem | Señal El Niño (ver abajo) |
| holidays / cv_weights | sin COVID / uniformes | El COVID no aplica al Dengue; CV sin sesgo reciente |
| Parámetro | Valor | Razón |
|---|---|---|
| context_length | 104 (2 años) | Captura 2 ciclos anuales completos |
| prediction_length | 52 | Horizonte de 1 año |
| max_lag | 53 | Conserva el lag anual (52) sin exceder la historia disponible |
| num_layers / num_cells | 2 / 80 | Capacidad recurrente |
| dropout_rate | 0.15 | Regularización (1 sola serie) |
| learning_rate / epochs | 5e-4 / 300 + early stopping 15 | Convergencia estable |
| cross-validation | 2 folds × 26 sem | CV honesta sin padding de ceros |
| gap_fill / device | interpolate / CUDA > CPU (MPS off) | Huecos interpolados; muestreo StudentT no soportado en MPS |
| Componente | Valor | Razón |
|---|---|---|
| familia | NegativeBinomial(alpha=1.0) | Sobre-dispersión típica de conteos epidémicos |
| matriz de diseño | 1 + Fourier(k=4) + tendencia + lag1 + lag52 [+ ONI] | Estacionalidad paramétrica + memoria + clima |
| fourier_k | 4 armónicos | Ciclo anual sobre la semana ISO |
| tendencia | lineal (semanas/52) | freeze_trend para la proyección multi-año |
| series degeneradas | fallback constante | Entidades sin transmisión (GLM infeasible) |
| implementación | statsmodels GLM | Determinista, reproducible |
Ensemble (XGBoost: n_estimators 200, max_depth 3, lr 0.03) y Stacking (LightGBM: n_estimators 300, max_depth 4, lr 0.05) se entrenan y evalúan pero quedan fuera de producción.
El ciclo inter-anual del dengue sigue a ENSO, una señal que no vive en los conteos recientes
El índice ONI (Oceanic Niño Index, NOAA CPC), alineado a semana ISO y rezagado 16 semanas (el clima precede al dengue ~3–6 meses). Es cohort-only: solo lo usa el Dengue; neuro nunca lo toca.
Para el horizonte de pronóstico se usa ONI observado y, donde falta, persistencia amortiguada hacia neutral (decae a 0 con e-folding ~40 sem), o un pronóstico ENSO externo (IRI/CPC) si se provee.
En el backtest leave-one-epidemic-out, agregar ONI a Prophet baja el SMAPE nacional de 102 a 76, y corrige el pico 2024 de ratio 1.61 a 0.87.
Cómo se decide qué motor usa cada serie, y la nota honesta de validación
Por serie, se compara el ajuste 2026 de cada motor contra la realidad del boletín (SMAPE alineado por semana ISO); MASE como desempate. Distribución resultante: DeepAR 46 NB-GLM 31 Prophet 22. Nacional = DeepAR.
El estudio que corona al NB-GLM es un backtest fuera de muestra (leave-one-epidemic-out): se entrena solo con datos previos al corte y se puntúa el año siguiente (epidemia 2024). SMAPE 52 vs Prophet+ENSO 76 vs Prophet 102.
La métrica de selección (SMAPE 2026) es in-sample: el modelo final ve 2026 H1. Por eso se valida prospectivo OOS en las semanas no vistas antes de re-entrenar. Detalle en la Auditoría.
Qué tan lejos se pronostica con precisión, y cómo se modelan las regiones
El pronóstico preciso es a 52 semanas. La proyección multi-año la genera NB-GLM con
freeze_trend (congela la pendiente para no extrapolar la subida de 2024): muestra el patrón estacional
a nivel estable, no la magnitud de la próxima epidemia. El ciclo de ~4–5 años (2019, 2024) no es aprendible con solo
dos ciclos.
Las 4 regiones usan DeepAR nativo, no la suma de estados. Un backtest OOS de la epidemia 2024 mostró que agregar estados compone los sobre-tiros y explota (pico 34–157x); el nativo es contenido y fiel en magnitud (MAE 460 vs 3.7k–10k de la agregación).
Fuentes verificadas que sustentan los métodos y la señal climática de esta metodología. Bibliografía completa en Referencias.
Multiyear climate variability and dengue—El Niño Southern Oscillation, weather, and dengue incidence in Puerto Rico, Mexico, and Thailand
PLOS Medicine, 6(11), e1000168, 2009
doi.org/10.1371/journal.pmed.1000168Forecasting at scale (Prophet)
The American Statistician, 72(1), 37–45, 2018
doi.org/10.1080/00031305.2017.1380080DeepAR: Probabilistic forecasting with autoregressive recurrent networks
International Journal of Forecasting, 36(3), 1181–1191, 2020
doi.org/10.1016/j.ijforecast.2019.07.001Negative Binomial Regression (2.ª ed.) — base del motor NB-GLM
Cambridge University Press, 2011
doi.org/10.1017/CBO9780511973420XGBoost: A scalable tree boosting system (Ensemble)
KDD '16: 22nd ACM SIGKDD, 785–794, 2016
doi.org/10.1145/2939672.2939785LightGBM: A highly efficient gradient boosting decision tree (Stacking)
Advances in Neural Information Processing Systems (NeurIPS) 30, 2017
proceedings.neurips.ccAnother look at measures of forecast accuracy (MASE)
International Journal of Forecasting, 22(4), 679–688, 2006
doi.org/10.1016/j.ijforecast.2006.03.001On the use of cross-validation for time series predictor evaluation
Information Sciences, 191, 192–213, 2012
doi.org/10.1016/j.ins.2011.12.028Boletín Epidemiológico — Sistema Nacional de Vigilancia Epidemiológica
Gobierno de México, 2012–2026
gob.mx/salud