D10 · L3 · 02 — L2 · AI-Driven Forecasting & Demand IntelligenceL2 · Pronóstico con IA e Inteligencia de Demanda

Machine learning forecasting: XGBoost, neural networks & gradient boostingPronóstico con ML: XGBoost, redes neuronales y gradient boosting

ML beats statistical models when there is enough data and the patterns are nonlinear.

El ML supera a los modelos estadísticos cuando hay suficientes datos y los patrones son no lineales.

01What it isQué es

Machine learning forecasting uses algorithms such as gradient-boosted trees (XGBoost, LightGBM) and neural networks to learn nonlinear relationships between demand and many drivers — price, promotions, weather, events — across a whole portfolio at once.

El pronóstico con machine learning usa algoritmos como árboles con gradient boosting (XGBoost, LightGBM) y redes neuronales para aprender relaciones no lineales entre la demanda y muchos impulsores —precio, promociones, clima, eventos— en todo el portafolio a la vez.

02Why it mattersPor qué importa

When demand depends on many interacting drivers, ML can capture effects that classical models miss, especially around promotions. In the M5 competition on Walmart sales data, the top-performing methods were largely LightGBM-based and outperformed statistical benchmarks (Makridakis, Spiliotis and Assimakopoulos, 2022 — International Journal of Forecasting). The gains depend on enough data, rigorous out-of-sample validation and explanations planners can trust.

Cuando la demanda depende de muchos impulsores que interactúan, el ML puede capturar efectos que los modelos clásicos no ven, sobre todo en promociones. En la competencia M5, con datos de ventas de Walmart, los métodos con mejor desempeño se basaron mayoritariamente en LightGBM y superaron a los benchmarks estadísticos (Makridakis, Spiliotis y Assimakopoulos, 2022 — International Journal of Forecasting). Las mejoras dependen de contar con suficientes datos, una validación rigurosa fuera de muestra y explicaciones en las que los planeadores puedan confiar.

03How it is doneCómo se hace

1
Start from a strong baseline. Benchmark every ML model against the best statistical model per segment before claiming any lift.
2
Validate out of sample. Test on a holdout period, including promotion and event weeks, to catch overfitting before production.
3
Explain and retrain. Show planners SHAP-based drivers for each forecast and retrain on a fixed cadence as demand patterns shift.
1
Partir de una línea base sólida. Comparar cada modelo de ML contra el mejor modelo estadístico por segmento antes de reportar cualquier mejora.
2
Validar fuera de muestra. Probar sobre un periodo de holdout que incluya semanas de promoción y eventos, para detectar sobreajuste antes de producción.
3
Explicar y reentrenar. Mostrar a los planeadores los impulsores de cada pronóstico con SHAP y reentrenar con una cadencia fija conforme cambian los patrones de demanda.

04The concept in depthEl concepto a fondo

🤖ML in forecasting: when statistical models are not enough›
Machine Learning models (XGBoost, neural networks, gradient boosting) can capture complex nonlinear relationships between variables that classical statistical models cannot model. Their advantage is greatest when: (1) there are many external variables with complex interaction patterns, (2) the portfolio is large and heterogeneous, and (3) there is sufficient historical data to train the model.
📊The most widely used ML models in demand forecasting›
XGBoost / LightGBM (Gradient Boosting): the ML models with the highest adoption in demand forecasting. Can easily incorporate external variables (weather, events, prices, POS data) and generate a more accurate forecast than statistical models when there are many explanatory variables. Recurrent neural networks (LSTM): specifically designed for sequential data such as time series. Capture long-term dependencies in historical series. More complex to train and interpret. Deep learning architectures (N-BEATS, N-HiTS, Transformer-based models such as TFT): the latest generation of ML models for forecasting. N-BEATS (2019) and N-HiTS (2022) are open-source models that performed strongly on public forecasting benchmarks, although results vary by dataset.
🔢The interpretability dilemma in ML›
An XGBoost model with 120 explanatory variables may have a MAPE 15% better than the best statistical model — but the demand planner cannot explain why the model makes a specific prediction. This "black box" generates organizational resistance: a planner who does not understand why the model says demand will be 8,400 units in week 14 will not trust that number for a production decision.
🏆Intermediate vs. Advanced›
Intermediate: uses ML model outputs from the forecasting system, understands limitations and when to override manually.

Advanced: designs and trains ML models for demand forecasting; manages the model lifecycle (training, validation, production, recalibration); implements interpretability tools (SHAP values).
🤖ML en el pronóstico: cuando los modelos estadísticos no alcanzan›
Los modelos de Machine Learning (XGBoost, redes neuronales, gradient boosting) pueden capturar relaciones no lineales complejas entre variables que los modelos estadísticos clásicos no pueden modelar. Su ventaja es mayor cuando: (1) hay muchas variables externas con patrones de interacción complejos, (2) el portafolio es grande y heterogéneo y (3) hay suficientes datos históricos para entrenar el modelo.
📊Los modelos de ML más utilizados en el pronóstico de demanda›
XGBoost / LightGBM (Gradient Boosting): los modelos de ML con mayor adopción en el pronóstico de demanda. Pueden incorporar fácilmente variables externas (clima, eventos, precios, datos de POS) y generar un pronóstico más preciso que los modelos estadísticos cuando hay muchas variables explicativas. Redes neuronales recurrentes (LSTM): diseñadas específicamente para datos secuenciales como las series de tiempo. Capturan dependencias de largo plazo en las series históricas. Son más complejas de entrenar y de interpretar. Arquitecturas de deep learning (N-BEATS, N-HiTS, modelos basados en Transformers como TFT): la generación más reciente de modelos de ML para pronóstico. N-BEATS (2019) y N-HiTS (2022) son modelos de código abierto con un desempeño destacado en benchmarks públicos de pronóstico, aunque los resultados varían según el conjunto de datos.
🔢El dilema de la interpretabilidad en ML›
Un modelo XGBoost con 120 variables explicativas puede tener un MAPE 15% mejor que el mejor modelo estadístico, pero el planeador de demanda no puede explicar por qué el modelo hace una predicción específica. Esta "caja negra" genera resistencia organizacional: un planeador que no entiende por qué el modelo dice que la demanda será de 8,400 unidades en la semana 14 no confiará en ese número para una decisión de producción.
🏆Intermedio vs. Avanzado›
Intermedio: usa los resultados de los modelos de ML del sistema de pronóstico, entiende sus limitaciones y sabe cuándo ajustarlos manualmente.

Avanzado: diseña y entrena modelos de ML para el pronóstico de demanda; gestiona el ciclo de vida del modelo (entrenamiento, validación, producción, recalibración); implementa herramientas de interpretabilidad (valores SHAP).

05In practiceEn la práctica

🤖ML in forecasting has the greatest value when there are many explanatory variables and sufficient historical data›
An ML model trained with 12 months of historical data and 5 explanatory variables will not outperform a well-calibrated ETS. ML needs at least 2–3 years of data and 10+ explanatory variables to generate a significant lift.
🔢Use SHAP values to explain ML model predictions to the demand planner›
SHAP values (SHapley Additive exPlanations) decompose the ML model prediction into the contribution of each explanatory variable — allowing the demand planner to understand why the model predicts what it predicts.
🔄The ensemble (statistical + ML) has better accuracy than either model alone›
Combining a statistical model (which captures trend and seasonality well) with an ML model (which captures external variable effects well) has better accuracy than either model alone in most cases.
⚠️Overfitting is the greatest risk of ML models in forecasting›
An overtrained ML model can have very low error on training data and very high error in production data. Out-of-sample validation with a holdout period is the mandatory test before putting an ML model into production.
🤖El ML en el pronóstico tiene el mayor valor cuando hay muchas variables explicativas y suficientes datos históricos›
Un modelo de ML entrenado con 12 meses de historia y 5 variables explicativas no superará a un ETS bien calibrado. El ML necesita al menos 2–3 años de datos y más de 10 variables explicativas para generar una mejora significativa.
🔢Usar valores SHAP para explicar al planeador de demanda las predicciones del modelo de ML›
Los valores SHAP (SHapley Additive exPlanations) descomponen la predicción del modelo de ML en la contribución de cada variable explicativa, lo que permite al planeador entender por qué el modelo predice lo que predice.
🔄El ensemble (estadístico + ML) tiene mejor precisión que cualquiera de los dos por separado›
Combinar un modelo estadístico (que captura bien tendencia y estacionalidad) con un modelo de ML (que captura bien el efecto de las variables externas) logra, en la mayoría de los casos, mejor precisión que cualquiera de los dos por separado.
⚠️El sobreajuste (overfitting) es el mayor riesgo de los modelos de ML en el pronóstico›
Un modelo de ML sobreentrenado puede tener un error muy bajo con los datos de entrenamiento y un error muy alto con los datos de producción. La validación fuera de muestra con un periodo de prueba (holdout) es obligatoria antes de poner un modelo de ML en producción.

06Illustrative caseCaso ilustrativo

Illustrative case built from typical industry values — not data from a specific company.Caso ilustrativo construido con valores típicos de la industria — no son datos de una empresa específica.
Illustrative case: ML forecasting implementation — electronics company, 1,200 active SKUs
The company migrates from ETS to an ETS+XGBoost ensemble for highest-turnover SKUs.
DimensionStandard ETSETS + XGBoost Ensemble
Global MAPE (1,200 SKUs)19.4% MAPE14.8% MAPE (−24% error)
Top 200 SKU MAPE (80% of revenue)14.2% MAPE10.6% MAPE (−25% error)
MAPE in promotion weeks (15% of weeks)32.8% MAPE — ETS does not capture promotional effect well16.4% MAPE — XGBoost learns the promotional pattern
Model training time<1 minute for all SKUs8 minutes for full XGBoost · Weekly retraining
Result: The ETS+XGBoost ensemble reduces global MAPE by 24%. Highest impact: promotion weeks — XGBoost learns the promotional uplift pattern that ETS cannot model. The ML model required 4 weeks of data scientist work for design, training, and validation.
Illustrative case built from typical industry values — not data from a specific company.Caso ilustrativo construido con valores típicos de la industria — no son datos de una empresa específica.
Caso ilustrativo: Implementación de pronóstico con ML — empresa de electrónica, 1,200 SKUs activos
La empresa migra de ETS a un ensemble ETS+XGBoost para los SKUs de mayor rotación.
DimensiónETS estándarEnsemble ETS + XGBoost
MAPE global (1,200 SKUs)19.4% de MAPE14.8% de MAPE (−24% de error)
MAPE de los 200 SKUs principales (80% de los ingresos)14.2% de MAPE10.6% de MAPE (−25% de error)
MAPE en semanas de promoción (15% de las semanas)32.8% de MAPE — ETS no captura bien el efecto promocional16.4% de MAPE — XGBoost aprende el patrón promocional
Tiempo de entrenamiento del modelo<1 minuto para todos los SKUs8 minutos para XGBoost completo · Reentrenamiento semanal
Resultado: El ensemble ETS+XGBoost reduce el MAPE global 24%. Mayor impacto: las semanas de promoción, donde XGBoost aprende el patrón de incremento promocional que ETS no puede modelar. El modelo de ML requirió 4 semanas de trabajo de un científico de datos para su diseño, entrenamiento y validación.

07How it is measuredCómo se mide

🤖ML Model Lift % (MAPE improvement of ML model vs. best statistical model)›
ML Model Lift % (MAPE improvement of ML model vs. best statistical model)
(MAPE of best statistical model − MAPE of ML model) / MAPE of best statistical model × 100
Benchmark: 10–25% ML lift in categories with high variability and many explanatory variables · <5% lift indicates the statistical model is already good enough for the category
⚠️ An ML lift <5% in a category indicates the ML model complexity is not justified — the statistical model generates the same accuracy with much lower implementation and maintenance cost.
🔄Model Recalibration Frequency (ML model retraining frequency)›
Model Recalibration Frequency (ML model retraining frequency)
Number of times per year the ML model is retrained with the most recent data
Benchmark: Monthly for production models with high demand variability · Quarterly for models in stable categories
🔑 An ML model that is not periodically retrained loses accuracy over time — especially if demand patterns change (new channel mix, new relevant external variables, consumer behavior changes).
🤖Mejora del modelo de ML % (mejora en MAPE del modelo de ML vs. el mejor modelo estadístico)›
Mejora del modelo de ML % (mejora en MAPE del modelo de ML vs. el mejor modelo estadístico)
(MAPE del mejor modelo estadístico − MAPE del modelo de ML) / MAPE del mejor modelo estadístico × 100
Benchmark: 10–25% de mejora con ML en categorías con alta variabilidad y muchas variables explicativas · Una mejora <5% indica que el modelo estadístico ya es suficientemente bueno para la categoría
⚠️ Una mejora con ML <5% en una categoría indica que la complejidad del modelo de ML no se justifica: el modelo estadístico logra la misma precisión con un costo de implementación y mantenimiento mucho menor.
🔄Frecuencia de recalibración del modelo (frecuencia de reentrenamiento del modelo de ML)›
Frecuencia de recalibración del modelo (frecuencia de reentrenamiento del modelo de ML)
Número de veces al año que el modelo de ML se reentrena con los datos más recientes
Benchmark: Mensual para modelos en producción con alta variabilidad de demanda · Trimestral para modelos en categorías estables
🔑 Un modelo de ML que no se reentrena periódicamente pierde precisión con el tiempo, sobre todo si cambian los patrones de demanda (nueva mezcla de canales, nuevas variables externas relevantes, cambios en el comportamiento del consumidor).

08What you would useQué se usa

📌 ML Forecasting
🟧Python — statsforecast / NeuralForecast (Nixtla)›
Module: Open-Source ML Forecasting Library

Nixtla develops reference open-source forecasting libraries: statsforecast (ultra-fast statistical models) and NeuralForecast (N-BEATS, N-HiTS, TFT).
🟦DataRobot / H2O.ai›
Module: AutoML for Demand Forecasting

AutoML platforms that automate the training, validation, and selection of the best ML model for demand forecasting.
📌 Pronóstico con ML
🟧Python — statsforecast / NeuralForecast (Nixtla)›
Módulo: Open-Source ML Forecasting Library

Nixtla desarrolla bibliotecas de pronóstico de código abierto de referencia: statsforecast (modelos estadísticos ultrarrápidos) y NeuralForecast (N-BEATS, N-HiTS, TFT).
🟦DataRobot / H2O.ai›
Módulo: AutoML for Demand Forecasting

Plataformas de AutoML que automatizan el entrenamiento, la validación y la selección del mejor modelo de ML para el pronóstico de demanda.
The bottom lineEn corto

Use machine learning where many drivers shape demand and data is plentiful — and only after it beats a well-tuned statistical baseline.

Usar machine learning donde muchos impulsores moldean la demanda y abundan los datos, y solo después de que supere a una línea base estadística bien calibrada.

All D10 componentsTodos los componentes de D10D10 artifactsArtifacts de D10SCRA