Está en la página 1de 84

Trabajo Final de Maestría

Modelo de Predicción de Ventas mediante


técnicas de Data Mining y Series Temporales en
Empresa de Nutrición de Venta Directa

Autor: Fernando Gabriel Martínez


Director: Mag. Rodrigo Del Rosso

Diciembre, 2021

Trabajo final presentado en cumplimiento de los requisitos del título de la Maestría en


Explotación de Datos y Gestión del Conocimiento
Resumen

El desarrollo del trabajo se realizó en una de las empresas globales más importante en lo que
respecta a venta directa de suplementos alimentarios. Hoy en día el proceso de proyección de
ventas se efectúa manualmente por parte del equipo de planificadores en base a la experiencia
pasada y al conocimiento del mercado, siendo un proceso que queda a criterio de cada
planificador en la región. La precisión de la proyección se calcula como un cociente entre el valor
absoluto de la diferencia de unidades entre la predicción y la realidad y las unidades realmente
vendidas. El trabajo final propuesto consiste en la elaboración de un modelo de proyección de
ventas que mejore el proceso actual y aumente la precisión, brindándole soporte al equipo de
planificadores. Dicho modelo, se desarrolló mediante técnicas estadísticas (análisis de series
temporales, por ejemplo), y con modelos de data mining. Para ello se tomaron en cuenta los
datos históricos que la empresa tiene y otros, exógenos como variables macroeconómicas, entre
otras. Los resultados muestran que aplicando un algoritmo de aprendizaje automático (AutoML),
no se superó al modelo vigente en la mayor granularidad. Sin embargo, sí se mejoró la precisión
a nivel agregado utilizando los siguientes modelos: suavizado exponencial, ARIMA y redes
neuronales LSTM. Los beneficios de esta mejora se reflejan en: menores costos por exceso de
inventario, reducción de la cantidad de productos enviados a destrucción, mayor rotación de
inventario, reducción del nivel de ventas perdidas, mejor utilización de los recursos y menores
costos logísticos.

Palabras Claves: Predicción de Ventas, Cadena de Suministro, Abastecimiento, Series de


Tiempo, Pronósticos Masivos.

ii
Abstract

The development of this work was carried out in one of the most important global companies
regarding direct sales of dietary supplements. Today the sales projection process is made
manually by the planner’s team based on their experience and knowledge of the market, being a
procedure that is left to the discretion of each planner in the region. The precision of this projection
is calculated as a quotient between the absolute value of the difference in units between the
prediction and the reality and the units sold. The proposed thesis consists of finding a sales
projection model that improves the current process and increases precision, providing support to
the planner’s team. This model was generated using statistical techniques (time series analysis,
for example), and with data mining models. For this, the historical data of the company and other
exogenous variables such as macroeconomic indicators, were considered. The results show that
by applying an automated machine learning algorithm (AutoML), the current model was not
exceeded at the highest granularity. However, at an aggregate level, the precision was improved
by employing the following models: exponential smoothing, ARIMA and LSTM neural networks.
The benefits of this improvement are reflected in lower costs due to inventory excess, reduction
in the quantity of products sent to destruction, greater inventory turnover, reduction in the level of
lost sales, better use of resources and lower logistics costs.

Keywords: Sales Prediction, Supply Chain, Supply, Time Series, Mass Forecasts.

iii
Agradecimientos

“La felicidad solo es real si se comparte”

No solo es una frase popularizada por Christopher McCandless sino que, siendo esta una
Maestría de Ciencia de Datos, también está sustentada por el siguiente curso. Por ello este
trabajo va dedicado

A mi director de trabajo final Rodrigo Del Rosso por su aporte, guía y profesionalismo.
A los profesores de esta maestría por haberme acompañado en este viaje.
A mis compañeros de maestría por su empatía y soporte.
A mi familia y amigos por su apoyo e importancia durante estos años.
A mi novia Estefanía por las horas que le robé y por acompañarme de manera incondicional.

iv
Índice

Resumen .................................................................................................................................... ii
Abstract...................................................................................................................................... iii
Agradecimientos ........................................................................................................................ iv
Introducción ........................................................................................................................... - 1 -
1.1 Introducción.................................................................................................................. - 1 -
1.2 Contexto Organizacional .............................................................................................. - 1 -
1.3 Motivación e importancia del campo ............................................................................ - 1 -
1.4 Objetivo del trabajo ...................................................................................................... - 2 -
1.5 Solución propuesta....................................................................................................... - 3 -
1.6 Alcances y Limitaciones ............................................................................................... - 4 -
1.7 Problemas a Resolver .................................................................................................. - 4 -
1.8 Transferencia de los resultados obtenidos ................................................................... - 6 -
1.9 Estructura del Trabajo Final ......................................................................................... - 7 -
Estado del Arte Mínimo .......................................................................................................... - 8 -
2.1 Técnicas Tradicionales ................................................................................................. - 8 -
2.1.1 Series Temporales ................................................................................................ - 8 -
2.1.1.1 Objetivos de las Series Temporales ............................................................... - 8 -
2.1.1.2 Componentes y clasificación descriptiva de las series temporales ................. - 8 -
2.1.1.3 Procesos Estocásticos .................................................................................... - 9 -
2.1.1.4 Procesos Estacionarios ................................................................................ - 10 -
2.1.1.5 Modelos Autorregresivos (AR) ...................................................................... - 10 -
2.1.1.6 Modelos de Medias Móviles (MA) ................................................................. - 11 -
2.1.1.7 Modelos ARMA............................................................................................. - 12 -
2.1.1.8 Modelos ARIMA ............................................................................................ - 12 -
2.1.1.9 Modelos SARIMA (ARIMA estacional) .......................................................... - 13 -
2.1.1.10 Modelos GARCH ........................................................................................ - 14 -
2.1.2 Seasonal Naive Bayes (Bayes Ingenuo Estacional) ............................................ - 15 -
2.1.3 Suavizado Exponencial de Holt-Winters .............................................................. - 15 -
2.1.4 Transformada Rápida de Fourier ......................................................................... - 17 -
2.2 Técnicas de Data Mining ............................................................................................ - 18 -
2.2.1 Aprendizaje Automático Automatizado (AutoML) ................................................. - 18 -
2.2.1.1 Ventajas y Desafíos de AutoML .................................................................... - 19 -
2.2.1.2 Librería de AutoML (H2O)............................................................................. - 20 -
2.2.1.3 Algunos Algoritmos Implementados en H2O................................................. - 20 -

v
2.2.2 Redes Neuronales ............................................................................................... - 20 -
2.2.3 Redes Neuronales Autorregresivas (NNAR) ........................................................ - 22 -
2.2.4 Redes de Memoria Largo-Corto Plazo (LSTM) .................................................... - 23 -
2.2.5.1 La función de crecimiento ............................................................................. - 26 -
2.2.5.2 La función de estacionalidad ........................................................................ - 26 -
2.2.5.3 La función de días festivos / eventos ............................................................ - 27 -
2.2.6 Neural Prophet .................................................................................................... - 27 -
2.3 Trabajos Relacionados ............................................................................................... - 28 -
Metodología y Análisis de los Datos..................................................................................... - 30 -
3.1 Metodología ............................................................................................................... - 30 -
3.2 Descripción de los Sistemas ...................................................................................... - 31 -
3.3 Descripción de los Datos ............................................................................................ - 33 -
3.4 Adición de Variables Internas y Externas y Creación de Variables ............................. - 34 -
3.4.1 Variables Internas................................................................................................ - 34 -
3.4.2 Variables Externas .............................................................................................. - 35 -
3.5 Exploración de los Datos ............................................................................................ - 36 -
3.5.1 Análisis a Nivel Ítem ............................................................................................ - 36 -
3.5.3 Análisis a Nivel Agregado (Serie Temporal) ........................................................ - 39 -
3.5.2.1 Descomposición de la serie .......................................................................... - 40 -
3.5.2.2 Función de Autocorrelación (FAC) y Autocorrelación Parcial (FACP) ........... - 41 -
3.5.2.3 Test de Raíces Unitarias............................................................................... - 42 -
Modelado y Análisis de Resultados...................................................................................... - 45 -
4.1 Modelado a Nivel Ítem ................................................................................................ - 45 -
4.1.1 Modelo Base (H2O) ............................................................................................. - 45 -
4.1.2 Modelo Base con Mejoras ................................................................................... - 50 -
4.1.3 Modelo con Variables Externas ........................................................................... - 51 -
4.1.4 Resumen de Resultados a Nivel Ítem .................................................................. - 52 -
4.2 Modelado a Nivel Agregado (Serie Temporal) ............................................................ - 52 -
4.2.1 Modelo con Variables Externas ........................................................................... - 55 -
4.2.2 Prophet................................................................................................................ - 56 -
4.2.3 Neural Prophet .................................................................................................... - 56 -
4.2.4 Suavizado Exponencial ....................................................................................... - 57 -
4.2.5 Modelo ARIMA (Librería Darts)............................................................................ - 58 -
4.2.6 Modelo ARIMA (Librería Forecast) ...................................................................... - 58 -
4.2.7 Modelo SARIMA .................................................................................................. - 59 -
4.2.8 Modelo GARCH ................................................................................................... - 60 -

vi
4.2.9 Redes Neuronales LSTM (Librería Darts) ............................................................ - 60 -
4.2.10 Redes Neuronales LSTM (Librería Keras) ......................................................... - 61 -
4.2.11 Redes Neuronales NNAR .................................................................................. - 62 -
4.2.12 Bayes Ingenuo .................................................................................................. - 62 -
4.2.13 Transformadas Rápidas de Fourier ................................................................... - 63 -
4.2.14 Resumen de Resultados a Nivel Agregado (Serie Temporal) ............................ - 64 -
Conclusiones y Trabajos Futuros ......................................................................................... - 65 -
5.1 Conclusiones:............................................................................................................. - 65 -
5.2 Trabajos Futuros: ....................................................................................................... - 66 -
Referencias Bibliográficas .................................................................................................... - 67 -
Apéndices ............................................................................................................................ - 71 -
Apéndice 1: Descripción de los campos ........................................................................... - 71 -
Apéndice 2: Correlación de las variables numéricas con la variable objetivo ................... - 73 -

vii
Índice de Figuras

Figura 2.1: Pasos de un proceso de AutoML ....................................................................... - 19 -


Figura 2.2: Perceptrón multicapa ......................................................................................... - 21 -
Figura 2.3: Arquitectura NNAR básica ................................................................................. - 22 -
Figura 2.4: Arquitectura RNN básica .................................................................................... - 23 -
Figura 2.5: Arquitectura RNN expandida .............................................................................. - 24 -
Figura 2.6: Capas de las celdas LSTM ................................................................................ - 25 -
Figura 3.1: Diagrama de los sistemas de la empresa ........................................................... - 32 -
Figura 3.2: Flujograma para la preparación de los datos (Tableau Prep Builder) ................. - 34 -
Figura 3.3: Histograma de la Variable Objetivo .................................................................... - 37 -
Figura 3.4: Histograma de la Variable Objetivo excluyendo los nulos .................................. - 37 -
Figura 3.5: Tres Variables Numéricas vs Variable Objetivo .................................................. - 39 -
Figura 3.6: Tres Variables Categóricas vs Variable Objetivo ................................................ - 39 -
Figura 3.7: Ventas Reales .................................................................................................... - 39 -
Figura 3.8: Ventas Reales (negro) y Pronóstico del Sistema Experto (azul) ......................... - 39 -
Figura 3.9: Evolución de la Serie por Mes ............................................................................ - 40 -
Figura 3.10: Distribución de las Ventas por Año................................................................... - 40 -
Figura 3.11: Descomposición Aditiva de la Serie ................................................................. - 41 -
Figura 3.12: Función de Autocorrelación (FAC) ................................................................... - 42 -
Figura 3.13: Función de Autocorrelación Parcial (FACP) ..................................................... - 42 -
Figura 4.1: Importancia de las Variables (SHAP) ................................................................. - 49 -
Figura 4.2: Serie de Entrenamiento y Testeo ....................................................................... - 52 -
Figura 4.3: Ventas (Test) y Predicción (Modelo Actual)........................................................ - 53 -
Figura 4.4: Serie Desestacionalizada ................................................................................... - 53 -
Figura 4.5: Función de Autocorrelación (FAC) ..................................................................... - 54 -
Figura 4.6: Función de Autocorrelación Parcial (FACP) ....................................................... - 54 -
Figura 4.7: Serie Diferenciada.............................................................................................. - 54 -
Figura 4.8: Función de Autocorrelación (FAC) ..................................................................... - 55 -
Figura 4.9: Función de Autocorrelación Parcial (FACP) ....................................................... - 55 -
Figura 4.10: Ventas y Predicción ......................................................................................... - 56 -
Figura 4.11: Ventas y Predicción Actual para Testeo ........................................................... - 57 -
Figura 4.12: Ventas y Predicción ......................................................................................... - 57 -
Figura 4.13: Ventas (Test) y Predicción ............................................................................... - 57 -
Figura 4.14: Ventas y Predicción ......................................................................................... - 58 -

viii
Figura 4.15: Ventas (Test) y Predicción ............................................................................... - 58 -
Figura 4.16: Ventas y Predicción ......................................................................................... - 59 -
Figura 4.17: Ventas (Test) y Predicción ............................................................................... - 59 -
Figura 4.18: Ventas y Predicción ......................................................................................... - 59 -
Figura 4.19: Ventas (Test) y Predicción ............................................................................... - 59 -
Figura 4.20: Ventas y Predicción ......................................................................................... - 60 -
Figura 4.21: Ventas (Test) y Predicción ............................................................................... - 60 -
Figura 4.22: Ventas y Predicción ......................................................................................... - 61 -
Figura 4.23: Ventas (Test) y Predicción ............................................................................... - 61 -
Figura 4.24: Ventas y Predicción ......................................................................................... - 61 -
Figura 4.25: Ventas (Test) y Predicción ............................................................................... - 61 -
Figura 4.26: Ventas y Predicción ......................................................................................... - 62 -
Figura 4.27: Ventas (Test) y Predicción ............................................................................... - 62 -
Figura 4.28: Ventas y Predicción ......................................................................................... - 63 -
Figura 4.29: Ventas (Test) y Predicción ............................................................................... - 63 -
Figura 4.30: Ventas y Predicción ......................................................................................... - 63 -

ix
Índice de Tablas

Tabla 3.1: Variables Internas ............................................................................................... - 34 -


Tabla 3.2: Variables Externas .............................................................................................. - 35 -
Tabla 3.3: Variables Creadas ............................................................................................... - 35 -
Tabla 3.4: Características Generales ................................................................................... - 36 -
Tabla 3.5: Características Variable Objetivo ........................................................................ - 36 -
Tabla 3.6: Valores más Frecuentes...................................................................................... - 37 -
Tabla 3.7: Valores más Pequeños ....................................................................................... - 37 -
Tabla 3.8: Valores más Grandes .......................................................................................... - 37 -
Tabla 3.9: Asociación Numérica ........................................................................................... - 38 -
Tabla 3.10: Asociación Categórica ....................................................................................... - 38 -
Tabla 3.11: Características Variable Objetivo ...................................................................... - 40 -
Tabla 3.12: Tests de Raíces Unitarias ................................................................................. - 44 -
Tabla 4.1: Precisión (Modelo Actual).................................................................................... - 45 -
Tabla 4.2: Modelos Ganadores (Modelo Base) .................................................................... - 46 -
Tabla 4.3: Precisión (Modelo Base) ..................................................................................... - 48 -
Tabla 4.4: Importancia de las Variables ............................................................................... - 48 -
Tabla 4.5: Modelos Ganadores (Modelo Base con Mejoras) ................................................ - 50 -
Tabla 4.6: Precisión (Modelo Base con Mejoras) ................................................................. - 51 -
Tabla 4.7: Modelos Ganadores (Modelo con Variables Externas) ........................................ - 51 -
Tabla 4.8: Precisión (Modelo con Variables Externas) ......................................................... - 51 -
Tabla 4.9: Resumen - Precisión de los Modelos .................................................................. - 52 -
Tabla 4.10: Precisión (Modelo Actual) .................................................................................. - 53 -
Tabla 4.11: Tests de Raíces Unitarias ................................................................................. - 54 -
Tabla 4.12: Tests de Raíces Unitarias ................................................................................. - 55 -
Tabla 4.13: Precisión (Modelo con Variables Externas) ....................................................... - 56 -
Tabla 4.14: Precisión (Modelo Prophet) ............................................................................... - 56 -
Tabla 4.15: Precisión (Modelo Neural Prophet) .................................................................... - 57 -
Tabla 4.16: Precisión (Modelo Suavizado Exponencial) ....................................................... - 58 -
Tabla 4.17: Precisión (Modelo ARIMA - Darts) ..................................................................... - 58 -
Tabla 4.18: Precisión (Modelo ARIMA - Forecast) ............................................................... - 59 -
Tabla 4.19: Precisión (Modelo SARIMA) .............................................................................. - 60 -
Tabla 4.20: Precisión (Modelo GARCH) ............................................................................... - 60 -
Tabla 4.21: Precisión (Modelo LSTM - Darts) ...................................................................... - 61 -

x
Tabla 4.22: Precisión (Modelo LSTM - Keras) ...................................................................... - 62 -
Tabla 4.23: Precisión (Modelo NNAR) ................................................................................. - 62 -
Tabla 4.24: Precisión (Modelo Bayes Ingenuo) .................................................................... - 63 -
Tabla 4.25: Precisión (Modelo Transformadas Rápidas de Fourier) ..................................... - 64 -
Tabla 4.26: Resumen - Precisión de los Modelos ................................................................ - 64 -

xi
Introducción

Capítulo 1

Introducción

1.1 Introducción

En el presente trabajo se buscó desarrollar la mejora del modelo actual de predicción de ventas
para el área de abastecimiento de una empresa de nutrición. Como es detallado más adelante,
el objetivo es aumentar la precisión de este mediante técnicas estadísticas clásicas y modelos
de data mining. Una mejora en la precisión tiene un impacto positivo en diversos aspectos del
área y de la empresa.

1.2 Contexto Organizacional

La empresa donde se desarrolló el siguiente trabajo fue fundada en 1980 en Estados Unidos,
emplea a más de 10.000 personas y se dedica a la comercialización de productos nutricionales
para el control de peso, dietas deportivas y cuidado personal. Además, opera internacionalmente
y distribuye sus productos en más de 90 países a través de una red de aproximadamente 4,5
millones de distribuidores independientes. Utiliza un modelo de negocio de venta directa y cuenta
con cinco plantas de producción propias (dos en Estados Unidos y tres en China). En el año 2020
obtuvo unas ventas netas equivalentes a $5,5 mil millones de dólares, lo que representó un
incremento de 13,6% comparado con el año anterior.

1.3 Motivación e importancia del campo

Según una encuesta conducida por McKinsey & Company (Agrawal, Khavin, & Slonim, 2020) a
130 CFO1, un 40% no estaban satisfechos con sus proyecciones de ventas. Respecto a la
situación actual de la organización, la proyección es un proceso que se realiza manualmente en
base al criterio de cada planificador (sistema experto), no habiendo un proceso estandarizado a
nivel compañía. Las consecuencias que trae una baja en la precisión son: sobrecostos por

1
Siglas de Chief Financial Officer (director financiero)

-1-
Introducción

exceso de inventario, productos enviados a destrucción, mayor rotación de inventario, ventas


perdidas, mayor utilización de los recursos y aumento del costo logístico.

Un ejemplo concreto para mencionar es que la baja en la precisión de la proyección producto de


la inesperada pandemia COVID-192 hizo aumentar la cantidad de inventario, como así también
las ventas perdidas.

De ahí se considera que el hecho de minimizar el desvío de las planificaciones permitirá atenuar
las consecuencias listadas anteriormente. Además, servirá para brindar soporte al proceso de
planificación, ayudando también a mejorar la utilización y capacidad de los recursos.

Asimismo, según la revista Strategy+Business (Berttram, Schneider, & Münch, 2018), la mejora
en la proyección de ventas tiene tres impactos: primero, al minimizar los quiebre de stock, se
incrementan las ventas entre un 5% y 10%. Segundo, al haber menor planificación manual, los
costos operativos se reducen entre un 5% y un 10%. Y tercero, al haber menor stock de seguridad
inmovilizado, hay una reducción de tiempos entre un 10% y un 20%.

En forma adicional, la publicación (Berttram et al., 2018) agrega que, más allá del beneficio,
puede ser un punto de partida para iniciar una transformación digital. Proyecciones mediante
técnicas como data mining, pueden generar una aceptación temprana si ofrecen beneficios
rápidos y tangibles. Pueden impulsar el "orgullo interno" y abrir caminos para nuevas iniciativas
digitales a lo largo de toda la cadena de suministro. Una comparación entre los resultados
analíticos y aquellos que surgen de la planificación tradicional pueden servir para generar
confianza en la solución propuesta.

1.4 Objetivo del trabajo

En forma tradicional, las técnicas de predicción de la demanda las podemos dividir en modelos
cualitativos y cuantitativos. Entre los primeros se pueden encontrar la opinión de expertos,
encuestas de mercado, método Delphi y analogías con productos similares. En cambio, entre los
segundos se encuentran los modelos de series temporales y los causales, que incorporan la
influencia de otras variables en el análisis (Benítez, Garcete, Pinto-Roa & Vázquez, 2017).

2
Acrónimo de coronavirus disease 2019 (enfermedad por coronavirus 2019)

-2-
Introducción

El objetivo general del trabajo es mejorar la precisión del modelo predictivo de ventas actual que
se basa en los valores estimados por los planificadores (sistema experto).

La precisión actual se calcula como:

𝑽𝒆𝒏𝒕𝒂𝒔 − 𝑫𝒊𝒇𝒆𝒓𝒆𝒏𝒄𝒊𝒂 𝑨𝒃𝒔𝒐𝒍𝒖𝒕𝒂 𝒆𝒏𝒕𝒓𝒆 𝑽𝒆𝒏𝒕𝒂𝒔 𝒚 𝑷𝒓𝒆𝒅𝒊𝒄𝒄𝒊𝒐𝒏𝒆𝒔


(1)
𝑽𝒆𝒏𝒕𝒂𝒔

Las predicciones que se toman en cuenta son aquellas que se realizan cuatro meses antes del
mes de análisis. Se toma este lapso, ya que es el necesario para que cualquier acción correctiva
de la cadena de suministro pueda tener un impacto. Esta mejora en las predicciones ayudará a:
reducir la cantidad de inventario, achicar el monto de ventas perdidas, disminuir la cantidad de
producto que es enviado a destrucción y crear una herramienta que sirva como soporte para la
toma de decisiones del equipo de planificadores.

1.5 Solución propuesta

De acuerdo con la publicación (Berttram et al., 2018), existen cuatro fuentes de información que
serán significativas en un proyecto de predicción de ventas. La primera corresponde a la interna
estructurada proveniente de la empresa. La segunda es la interna no estructurada, como por
ejemplo campañas de marketing. La tercera corresponde a la externa estructurada, como
indicadores macroeconómicos. Y la última es la externa no estructurada como, por ejemplo,
información de redes sociales. Pero además, dicho artículo hace énfasis no sólo en tener datos,
sino también en entender el contexto de estos para que sean útiles en la toma de decisiones.

La solución que se exploró es un modelo predictivo de ventas con técnicas de data mining.
Asimismo, se construyó un modelo con técnicas estadísticas tradicionales y se contrastaron las
precisiones de ambos con la solución actual (vigente). En consonancia con el artículo citado
anteriormente, se utilizó información histórica interna de la empresa e información externa, tales
como índices macroeconómicos, entre otros.

El resultado será que cada planificador podrá acceder a las recomendaciones del modelo
ganador y podrán complementarse dichas recomendaciones con el conocimiento que dispone
sobre el mercado. De esta forma sirve como apoyo en la toma de decisiones.

-3-
Introducción

Según el artículo publicado por McKinsey & Company (Agrawal, Khavin, & Slonim, 2020),
muchos planificadores se centran únicamente en los datos históricos haciendo que las
proyecciones sean sesgadas. Y luego para explicar el futuro utilizan el plan financiero interno de
la empresa. Esto crea un efecto de reflejo o eco, ya que nadie se enfocaría en los factores
externos. Por ende, el mejor modelo es aquel que combina tanto datos internos, como externos.

1.6 Alcances y Limitaciones

El presente trabajo se desarrolló a partir de la información interna de la empresa. Esto implica


contar datos que son propios y particulares de cada negocio. Como se detalla en el apartado 3.3,
por el volumen de las bases, se decidió trabajar con un extracto al tomar una organización en
particular dentro del posible universo y se definió una ventana temporal desde el año 2016 en
adelante. A futuro, también podría analizarse la incorporación de nuevas variables externas más
allá de las utilizadas, como así también otras fuentes dentro de la empresa.

En cuanto a la evaluación de cada solución, se definió trabajar con la precisión definida en el


apartado 1.4. Además, en el transcurso del trabajo, se decidió implementar una serie de modelos.
En los trabajos futuros (apartado 5.2) se listaron posibles alternativas a ser desarrolladas.

1.7 Problemas a Resolver

Lo que puntualmente se quiere mejorar es la predicción actual. El efecto colateral de esto se ve


reflejado en: la reducción de costos por exceso de inventario, reducción de la cantidad de
productos enviados a destrucción, mayor rotación de inventario, reducción del nivel de ventas
perdidas, mejor utilización de los recursos y menores costos logísticos.

De ahí que la precisión de la proyección actual es un reflejo de los datos y criterios en los que se
basan los planificadores para tomar sus decisiones. En (Föbus, Lange, Leopoldseder, & Kar-
Hendrik, 2019) mencionan que estos luchan con sistemas informáticos internos que están
aislados unos de otros, fuentes de información poco confiables y procesos manuales poco
coordinados. Existen proveedores externos que bridan información agregada, pero que es difícil
de traducir en definiciones accionables a los problemas que manejan los planificadores. La

-4-
Introducción

publicación, pone de manifiesto los problemas de información y fuentes de datos a la hora de


realizar proyecciones.

Para ilustrar, se estima una pérdida de $1,1 trillones de USD a nivel mundial producto de errores
tanto en exceso de inventario como en falta de producto (Sankur & Wijpkema, 2017). En estos
dos ejemplos veremos la importancia de las proyecciones y las consecuencias de un pronóstico
errado.

En el año 2000, la empresa Nike implementó un nuevo sistema informático para la proyección
de la demanda (Worthen, 2003). Sin embargo, dicho sistema empezó a tener fallas, arrojando
predicciones que resultaron ser incorrectas. Nueve meses más tarde, los ejecutivos de la
empresa reconocieron una falta masiva de inventario producto de lo expuesto anteriormente, lo
que produjo la consecuente caída de la acción bursátil. A modo de ejemplo, solo para su popular
modelo de zapatillas Air Force, se contabilizaron pérdidas de entre 80 y 100 millones de dólares.

En abril de 2014 Walgreens, una de las cadenas de farmacias más importante de Estados
Unidos, anunció una facturación estimada de 8,5 billones de dólares para fines de 2016. Sin
embargo, tres meses más tarde rectificaron dicha información, y redujeron dicha proyección en
1,1 billones de dólares. Esto tuvo repercusiones en el valor de su acción bursátil, lo que le valió
la salida de dos ejecutivos importantes de la empresa. Uno de los tantos factores fue no tener en
cuenta el impacto que tendría el aumento de los costos de ciertos medicamentos genéricos
(McCann, 2014).

Dado que la puja entre competidores aumenta día a día, las empresas centran sus esfuerzos en
tener técnicas predictivas de la demanda para disminuir sus costos, aumentar la productividad y
rentabilidad y tener un inventario óptimo. Niveles excesivos de inventario pueden causar
problemas financieros debido al capital inmovilizado. También pueden conducir a mayores costos
de almacenamiento, mano de obra y seguros, como así también pueden llevar a la degradación
de la calidad, dependiendo del tipo de producto. Los productos agotados generan pérdidas de
ventas y caída en la lealtad y satisfacción del cliente. Si los clientes no pueden encontrar el
producto que desean, podrían pasarse a otro competidor o comprar artículos sustitutos. (Boone
et al., 2019).

-5-
Introducción

1.8 Transferencia de los resultados obtenidos

El artículo de McKinsey & Company (Föbus, Lange, Leopoldseder, & Kar-Hendrik, 2019) sostiene
que se puede aplicar la solución propuesta en prácticamente todas las actividades de la cadena
de suministro. De forma adyacente, también aportará mejoras en los siguientes tres aspectos:
• Mejoras en la proyección, lo que en promedio se traduce en una reducción del 25% de
faltantes de productos, un 10% de disminución en las cancelaciones, márgenes hasta un
9% más altos y un mejor portfolio de inventario. Al mismo tiempo, el costo de la
planificación del inventario podrá disminuirse hasta un 30% debido al mayor grado de
automatización.
• Mejoras de los procesos de planta, porque se va a poder predecir mejor el trabajo
necesario. Además de que reducirá el inventario, lo que genera menor movimiento de
productos.
• Mejoras en la calidad de los productos. No será necesario solicitar y almacenar producto
extra. Lo que además redundará en menos productos sin vender y una disminución de
hasta un 30% de productos que se envían a destrucción.

En la misma publicación de McKinsey & Company, afirman que se deben cumplir cuatro
condiciones para poder implementar la solución de forma amplia:
• Se debe trazar un curso a nivel compañía. El sustento en la tecnología debe ser apoyado
desde las esferas más altas de la empresa hasta la base.
• Se debe definir la tecnología en base a las necesidades. Se puede hacer una
comparación con empresas del mismo rubro y luego lanzar una prueba piloto. La elección
del software debe ser la etapa final, no el comienzo.
• Debe rediseñarse y adaptarse el proceso vigente.
• Se debe trabajar en la gestión del cambio a nivel compañía, de modo tal que todos estén
involucrados y entiendan los beneficios que la tecnología puede brindar.

Además, se cita que existen tres pasos para poder comenzar con la transformación:
• El primero es analizar el proceso de planificación actual. De ser posible, plantear un caso
de negocio real.
• El segundo es asegurarse que el caso planteado refleje las mejoras que el modelo pueda
brindar.

-6-
Introducción

• El tercero es realizar una o dos pruebas piloto en base al caso de negocio elegido.
• Una vez que la prueba piloto haya sido satisfactoria, se puede pensar en implementar el
modelo de forma extensiva al resto de las áreas. Generalmente las mejoras suelen ser
percibidas en los primeros doce meses luego de la implementación.

1.9 Estructura del Trabajo Final

El trabajo final se divide en cinco secciones. La primera sección corresponde a la introducción


donde se plantea la problemática y el objetivo de mejorar la precisión del modelo predictivo
actual. La segunda es el estado del arte. Allí se exhibe el marco teórico de los modelos de data
mining y de los modelos estadísticos de series temporales que se analizaron para mejorar la
precisión. En la tercera se realiza una descripción y exploración de los datos y las distintas
variables involucradas. En la cuarta se desarrollan los diferentes modelos tanto a la máxima
granularidad, como a nivel agregado. Finalmente en la última sección se detallan las
conclusiones y las futuras líneas de investigación.

-7-
Estado del Arte Mínimo

Capítulo 2

Estado del Arte Mínimo

2.1 Técnicas Tradicionales

2.1.1 Series Temporales

Las series temporales analizan las características de los datos del presente y del pasado, para
predecir el futuro, donde se infiere que las causas que originan el comportamiento en el pasado
y en el presente, son los mismos que condicionan el comportamiento futuro (Hyndman,
Makridakis, & Wheelwright, 1997).

2.1.1.1 Objetivos de las Series Temporales

El objetivo general de las series temporales es estudiar el comportamiento evolutivo de una o


varias magnitudes en el tiempo; como objetivos particulares se enuncian los siguientes:
• Describir mediante medidas estadísticas y mediante gráficos las características
principales de la serie.
• Predecir los valores de las variables en instantes futuros.
• Explicar el efecto de los valores de una variable sobre otra en el tiempo.
• Detectar y controlar los parámetros que puedan influir en el comportamiento de la serie.

2.1.1.2 Componentes y clasificación descriptiva de las series temporales

Un pilar teórico de las mismas es descomponerlas en subcomponentes independientes para


facilitar al análisis de patrones sobre los mismos (Chatfield, 2016). Es importante destacar que
dichos componentes son indetectables para cualquier observador, pero que mediante
procedimientos matemáticos se puede desmenuzar el valor de la serie en cada momento en la
explicación por cada uno de estos.

En el análisis clásico se supone que los valores que toma la variable en observación son
consecuencia de las siguientes componentes: tendencia, ciclo, estacional y aleatoria.

-8-
Estado del Arte Mínimo

• Componente tendencia: Se identifica con movimientos suaves de la serie a largo plazo,


es decir cambios a largo plazo de la media.
• Componente ciclo: Son oscilaciones alrededor de la tendencia.
• Componente estacional: Se identifica con variaciones de cierto periodo (anual, mensual,
diario, etc.). Este elemento se caracteriza por aparecer en un periodo y desvanecerse en
el siguiente (Morales, Urrego, Perdomo, & Rosales, 2013).
• Componente aleatoria: En una serie temporal la tendencia y la estacionalidad resultan ser
de naturaleza determinística, mientras que la aleatoriedad es de naturaleza probabilística.
Son causadas por influencias impredecibles, que no son regulares y tampoco se repiten
con un patrón particular.

En resumen, de las cuatro componentes nombradas, las tres primeras son determinísticas,
mientras que la última es aleatoria. En términos formales,

𝑋𝑡 = 𝑇𝑡 + 𝐶𝑡 + 𝐸𝑡 + 𝐼𝑡 (2)

donde 𝑇𝑡 es la tendencia, 𝐶𝑡 es el ciclo, 𝐸𝑡 es la componente estacional e 𝐼𝑡 es la parte aleatoria.


Es necesario aislar de alguna manera la componente aleatoria y estudiar qué modelo
probabilístico es el más adecuado y al conocerlo se podrá predecir el comportamiento de la serie
a largo plazo.

2.1.1.3 Procesos Estocásticos

Un proceso estocástico es un conjunto de variables aleatorias {𝑧𝑡 } donde el índice 𝑡 toma valores
de un cierto conjunto 𝐶.

En nuestro caso, este conjunto es ordenado y corresponde a los instantes temporales (días,
meses, años). Para cada valor 𝑡 del conjunto 𝐶 (para cada instante temporal) está definida una
variable aleatoria 𝑧𝑡 , y los valores observados de las variables aleatorias en distintos instantes
forman una serie temporal (Peña, 2010).

-9-
Estado del Arte Mínimo

2.1.1.4 Procesos Estacionarios

Un proceso estocástico estacionario en sentido débil o de segundo orden, se define como aquel
en que su media y su varianza son constantes en el tiempo y el valor de la covarianza entre dos
periodos depende solamente de la distancia o retardo entre estos dos periodos de tiempo y no
del tiempo en el cual se ha calculado la covarianza (Gujarati, 2004). Donde,

𝐸(𝑋𝑡 ) = 𝜇 (3)

𝐶𝑜𝑣(𝑋𝑡 , 𝑋𝑡+ℎ ) = 𝛾𝑡,𝑡+ℎ = 𝛾ℎ (𝑑𝑒𝑝𝑒𝑛𝑑𝑒 𝑠ó𝑙𝑜 𝑑𝑒 ℎ) (4)

Las series temporales estacionarias son simples de predecir ya que se puede suponer que las
propiedades estadísticas futuras son las mismas o proporcionales a las propiedades estadísticas
actuales. Esto significa que las estadísticas descriptivas que estos modelos predicen (como por
ejemplo la media y la varianza) son sólo confiables si son estacionarias (Chatfield, 2016). ¿Por
qué es importante que las series temporales sean estacionarias?, porque la mayoría de los
modelos tradicionales descansan en este supuesto. Cuando no es el caso, se busca convertirla
en estacionaria, lo que se suele conseguir mediante la aplicación de ciertas transformaciones,
tales como logaritmos (para corregir heterocedasticidad), diferenciación sucesiva de la serie
(eliminar tendencia), diferenciación mediante el operador diferencia estacional (eliminar
componente estacional), etc. Entonces a partir de aquí, se intenta construir modelos estocásticos
con el objetivo de realizar predicciones sobre la serie.

2.1.1.5 Modelos Autorregresivos (AR)

Un modelo autorregresivo (AR) describe una clase particular de proceso en que las
observaciones en un momento dado son predecibles a partir de las observaciones previas del
proceso más una componente aleatoria. El caso más simple es el 𝐴𝑅(1) o de primer orden, cuya
expresión matemática es,

𝐴𝑅(1) = 𝑋𝑡 = 𝜙1 𝑋𝑡−1 + 𝜀𝑡 (5)

El proceso autorregresivo de orden 𝑝 o simplemente 𝐴𝑅(𝑝) se representa como,

- 10 -
Estado del Arte Mínimo

𝐴𝑅(𝑝) = 𝑋𝑡 = 𝜙0 + 𝜙1 𝑋𝑡−1 + 𝜙2 𝑋𝑡−2 + ⋯ + 𝜙𝑝 𝑋𝑡−𝑝 + 𝜀𝑡 (6)

Expresado mediante el operador de lags de la siguiente forma,

(1 − 𝜙1 𝐿 − 𝜙2 𝐿2 − ⋯ −𝜙𝑝 𝐿𝑝 ) ∗ 𝑋𝑡 = 𝜀𝑡 (7)

Donde 𝜀𝑡 es un proceso de ruido blanco (media cero, varianza constante e incorrelacionada) y


𝜙0 , 𝜙1 , 𝜙2 , … , 𝜙𝑝 son los parámetros del modelo. Un proceso autorregresivo siempre es invertible
en un modelo 𝑀𝐴(∞) si se cumplen las propiedades de estacionariedad en sentido débil.

2.1.1.6 Modelos de Medias Móviles (MA)

Un modelo de medias móviles (MA) describe una serie temporal estacionaria y el valor actual
puede predecirse a partir de la componente aleatoria de este momento y, en menor medida, de
los impulsos aleatorios anteriores. El modelo 𝑀𝐴(1) viene dado por la expresión,

𝑀𝐴(1) = 𝑋𝑡 = 𝜀𝑡 + 𝜃𝜀𝑡−1 (8)

El proceso de medias móviles de orden 𝑞, también llamado 𝑀𝐴(𝑞), es representado mediante la


siguiente ecuación,

𝑀𝐴(𝑞) = 𝑋𝑡 = 𝜃0 − 𝜃1 𝜀𝑡−1 − 𝜃2 𝜀𝑡−2 − ⋯ − 𝜃𝑞 𝜀𝑡−𝑞 − 𝜀𝑡 (9)

Expresado en términos del operador de retardos se tiene que:

(1 − 𝜃1 𝐿 − 𝜃2 𝐿2 − ⋯ −𝜃𝑞 𝐿𝑞 ) ∗ 𝜀𝑡 = 𝑋𝑡 (10)

Donde 𝜀𝑡 es un proceso de ruido blanco y 𝜃0 , 𝜃1 , 𝜃2 , … , 𝜃𝑞 son los parámetros del modelo. Un


proceso de medias móviles es siempre estacionario.

- 11 -
Estado del Arte Mínimo

2.1.1.7 Modelos ARMA

Una extensión natural de los modelos 𝐴𝑅(𝑝) y 𝑀𝐴(𝑞) es un tipo de modelo que incluyen tanto
términos autorregresivos como de medias móviles y se define como ARMA. Se representa por la
siguiente ecuación,

𝐴𝑅𝑀𝐴(𝑝, 𝑞) = 𝑋𝑡 = 𝜙0 + 𝜙1 𝑋𝑡−1 + 𝜙2 𝑋𝑡−2 + ⋯ + 𝜙𝑝 𝑋𝑡−𝑝 + 𝜃1 𝜀𝑡−1 + 𝜃2 𝜀𝑡−2 + ⋯ + 𝜃𝑞 𝜀𝑡−𝑞 +𝜀𝑡 (11)

Donde 𝜀𝑡 es un proceso de ruido blanco y 𝜃0 , 𝜃1 , 𝜃2 , … , 𝜃𝑞 , 𝜙0 , 𝜙1 , 𝜙2 , … , 𝜙𝑝 son los parámetros del


modelo. El proceso 𝐴𝑅𝑀𝐴(𝑝, 𝑞) es estacionario si lo es su componente autorregresiva y es
invertible si lo es su componente de medias móviles. Se puede expresar en términos del operador
de lags como sigue,

(1 − 𝜙1 𝐿 − 𝜙2 𝐿2 − ⋯ −𝜙𝑝 𝐿𝑝 ) ∗ 𝑋𝑡 = (1 − 𝜃1 𝐿 − 𝜃2 𝐿2 − ⋯ −𝜃𝑞 𝐿𝑞 ) ∗ 𝜀𝑡 (12)

𝜙𝑝 (𝐿) ∗ 𝑋𝑡 = 𝜃𝑞 (𝐿) ∗ 𝜀𝑡 (13)

Donde 𝜙𝑝 (𝐿) es el polinomio autorregresivo de orden 𝑝 en potencias de 𝐿 y 𝜃𝑞 (𝐿) es el polinomio


de medias móviles de orden 𝑞 en potencias de 𝐿.

2.1.1.8 Modelos ARIMA

Unos de los modelos clásicos más utilizados para el pronóstico de series temporales son los
modelos ARIMA, los cuales intentan describir la autocorrelación en los datos de la serie, por eso
pueden incluir términos autorregresivos (AR) y/o términos de media móvil (MA). Una serie
temporal estacionaria es aquella cuyas propiedades no dependen del momento en que se
observa la serie. Por lo tanto, las series con tendencia, o con la estacionalidad, no son
estacionarias: la tendencia y la estacionalidad afectan al valor de la serie en diferentes
momentos.

Por lo general, cuando una serie no es estacionaria, una forma de transformarla en estacionaria
es considerar los cambios de su valor en el tiempo en lugar de observar los datos en crudo, esto
es, calcular las diferencias entre observaciones consecutivas. Esto se conoce como

- 12 -
Estado del Arte Mínimo

diferenciación y puede ayudar a estabilizar la media de una serie temporal y, por lo tanto, eliminar
(o reducir) la tendencia y la estacionalidad. Una forma de determinar de manera más objetiva si
se requiere una diferenciación es utilizar un test de hipótesis de raíz unitaria. Son contrastes de
hipótesis estadísticas que verifican la estacionariedad de una serie para determinar si se requiere
o no diferenciación.

Los modelos ARIMA pueden tener una componente basada en autorregresividad: se pronostica
la variable de interés mediante una combinación lineal de valores pasados de la variable.
También pueden tener una componente basada en medias móviles: en lugar de usar valores
pasados de la variable de pronóstico en una regresión, utiliza errores de pronóstico pasados en
un modelo similar a una regresión. Si se combina la diferenciación, la autorregresividad y las
medias móviles, se obtiene un modelo ARIMA no estacional. Los modelos ARIMA. son de
carácter general, es decir, sin importar la característica de la serie existe un modelo que es capaz
de explicar el fenómeno (Mora, 2009). El modelo se puede expresar mediante la siguiente
ecuación,

𝐴𝑅𝐼𝑀𝐴(𝑝, 𝑑, 𝑞) = 𝑌𝑡𝑑 = 𝑐 + 𝜙1 𝑌𝑡−1


𝑑 𝑑
+ ⋯ + 𝜙𝑝 𝑌𝑡−𝑝 𝑑
+ 𝜃1 𝜀𝑡−1 𝑑
+ ⋯ + 𝜃𝑞 𝜀𝑡−𝑞 + 𝜀𝑡𝑑 (14)

Expresado en forma de polinomio operador de retardos el modelo 𝐴𝑅𝐼𝑀𝐴(𝑝, 𝑑, 𝑞) es:

𝜙(𝐿) ∗ (1 − 𝐿)𝑑 = 𝑐 + 𝜃(𝐿)𝜀𝑡 (15)

Donde 𝑌𝑡𝑑 es la serie de las diferencias de orden 𝑑, 𝜀𝑡𝑑 es un proceso de ruido blanco y
𝑐, 𝜃1 , , … , 𝜃𝑞 , 𝜙1 , … , 𝜙𝑝 son los parámetros del modelo.

2.1.1.9 Modelos SARIMA (ARIMA estacional)

Un modelo SARIMA se forma al incluir términos estacionales adicionales en los modelos ARIMA.
La parte estacional del modelo consiste en términos que son similares a las componentes no
estacionales del modelo, pero implican cambios en el período estacional (Hyndman &
Athanasopoulos, 2018) y se expresa en notación compacta como 𝐴𝑅𝐼𝑀𝐴(𝑝, 𝑑, 𝑞)(𝑃, 𝐷, 𝑄).

Por ejemplo, un modelo 𝐴𝑅𝐼𝑀𝐴(1,1,1)(1,1,1)4 sin una constante, es para datos trimestrales (𝑚 =
4) y puede escribirse como,

- 13 -
Estado del Arte Mínimo

(1 − 𝜙1 𝐵) (1 − 𝛷1 𝐵4 )(1 − 𝐵)(1 − 𝐵4 )𝑦𝑡 = (1 + 𝜃1 𝐵) (1 + 𝛩1 𝐵4 )𝜀𝑡 (16)

Los términos estacionales adicionales simplemente se multiplican por los términos no


estacionales.

2.1.1.10 Modelos GARCH

La volatilidad es una característica inherente a las series de tiempo. Engle introduce una nueva
clase de modelo de serie temporal denominado ARCH3, en el cual la varianza condicionada por
la información pasada no es constante, y depende del cuadrado de las innovaciones pasadas
(Engle, 1982). Bollerslev generaliza los modelos ARCH al proponer los modelos GARCH en los
cuales la varianza condicional depende no solo de los cuadrados de las perturbaciones, sino
también de las varianzas condicionales de períodos anteriores (Bollerslev, 1986). GARCH
significa modelo autorregresivo generalizado condicional heterocedástico (Generalized
AutoRegressive Conditional Heteroscedasticity)
• Generalizado porque tiene en cuenta tanto las observaciones recientes como las
históricas.
• Autorregresivo porque la variable dependiente se regresa en sí misma.
• Condicional porque la varianza futura depende de la varianza histórica.
• Heterocedástico porque la varianza varía en función de las observaciones.

El modelo GARCH y sus extensiones son utilizados por su capacidad de predecir la volatilidad a
corto y mediano plazo. El modelo 𝐺𝐴𝑅𝐶𝐻(1,1) propuesto por Bollerslev está definido mediante
la siguiente expresión,

2 2
𝜎𝑡2 = 𝜔 + 𝛼𝜀𝑡−1 + 𝛽𝜎𝑡−1 (17)

2
Donde 𝜎𝑡2 es la volatilidad condicional y 𝜀𝑡−1 son los rendimientos inesperados al cuadrado para
el período anterior. El coeficiente 𝛼 indica la reacción de la volatilidad ante cambios inesperados,
mientras que el coeficiente 𝛽 muestra la persistencia de la volatilidad.

3
Siglas de autoregressive conditional heteroscedasticity (modelo autorregresivo con heterocedasticidad condicional)

- 14 -
Estado del Arte Mínimo

2.1.2 Seasonal Naive Bayes (Bayes Ingenuo Estacional)

Un modelo Naive Bayes está fundamentado en el teorema de Bayes y algunas hipótesis


simplificadoras adicionales, las cuales se suelen resumir en la hipótesis de independencia entre
las variables predictoras, que recibe el de naive (ingenuo). Una ventaja de este modelo es que
solamente se requiere una pequeña cantidad de datos de entrenamiento para estimar los
parámetros (las medias y las varianzas de las variables) necesarias para la predicción.

Para los datos estacionales, se utiliza la estacionalidad correspondiente del último año de datos.
Por ejemplo, si desea pronosticar el volumen de ventas para el próximo mes de marzo, se
utilizaría el volumen de ventas del mes de marzo del año pasado. Por lo general, se puede
escribir un modelo estructural bayesiano con estacionalidad de la siguiente forma:

𝑌𝑡 = 𝜇𝑡 + 𝑥𝑡 𝛽 + 𝑆𝑡 + 𝑒𝑡 , 𝑒𝑡 ~𝑁(0, 𝜎𝑒2 ) (18)

𝜇𝑡+1 = 𝜇𝑡 + 𝑣, 𝑣𝑡 ~𝑁(0, 𝜎𝑣2 ) (19)

Aquí 𝑥𝑡 denota un conjunto de regresores, 𝑆𝑡 representa la estacionalidad, y 𝜇𝑡 es el término de


nivel local que define cómo evoluciona la tendencia a lo largo del tiempo.

2.1.3 Suavizado Exponencial de Holt-Winters

Este método estima que la predicción será igual a la media de los valores históricos para un
periodo dado, otorgándole una mayor ponderación a los valores más recientes temporalmente.
Además, tiene en cuenta el error de pronóstico actual en las siguientes predicciones.

El suavizado exponencial de Holt-Winters se utiliza para pronosticar datos de series de tiempo


que muestran tanto una tendencia como una variación estacional, dado que pueden adaptarse
fácilmente a cambios y tendencias, así como a patrones estacionales.

Es importante destacar que este método en sí mismo es una combinación de otros tres métodos
suavizados mucho más simples,

- 15 -
Estado del Arte Mínimo

• Suavizado exponencial simple: El suavizado exponencial simple supone que la serie de


tiempo no tiene cambios de nivel. Por lo tanto, no se puede utilizar con series que
contengan tendencia, estacionalidad o ambas.
• Suavizado exponencial de Holt: el suavizado exponencial de Holt está un paso por
encima del suavizado exponencial simple, ya que permite que los datos de la serie de
tiempo tengan una componente de tendencia. El suavizado exponencial de Holt todavía
es incapaz de hacer frente a los datos estacionales.
• Suavizado exponencial de Winter: el suavizado exponencial de Winter es una extensión
del suavizado exponencial de Holt que finalmente permite la inclusión de la
estacionalidad. El suavizado exponencial de Winter es lo que se conoce como método de
Holt-Winters.

Hay dos variaciones de este método que difieren en la naturaleza de la componente estacional.
Se prefiere el método aditivo cuando las variaciones estacionales son aproximadamente
constantes a lo largo de la serie, mientras que se adopta el multiplicativo cuando las variaciones
estacionales cambian proporcionalmente al nivel de la serie. Con el primer método, la
componente estacional se expresa en términos absolutos en la escala de la serie observada, y
en la ecuación de nivel la serie se ajusta estacionalmente restando la componente estacional.
Dentro de cada año, la componente estacional sumará aproximadamente cero. Con el segundo
método, esta última componente se expresa en términos relativos (porcentajes) y la serie se
ajusta estacionalmente dividiendo por la componente estacional.

Las siguientes ecuaciones son las del método aditivo:

𝐿𝑠 = 𝛼(𝑦𝑡 − 𝑆𝑡−𝑠 ) + (1 − 𝛼)(𝐿𝑠−1 + 𝑇𝑡 ) (20)

𝑇𝑡 = 𝛽(𝐿𝑡 − 𝐿𝑡−1 ) + (1 − 𝛽)𝑇𝑡−1 (21)

𝑆𝑡 = 𝛾(𝑦𝑡 − 𝐿𝑡 ) + (1 − 𝛾)𝑆𝑡−𝑠 (22)

𝑦̂𝑡+𝑘 = 𝐿𝑡 + 𝑘𝑇𝑡 + 𝑆𝑡+𝑘−𝑠 (23)

- 16 -
Estado del Arte Mínimo

Donde 𝐿 es el nivel suavizado de la serie, 𝑇 es la tendencia aditiva suavizada al final del período
𝑡 y 𝑆 es el índice estacional suavizado al final de período 𝑡. 𝑦̂𝑡+𝑘 es la predicción 𝑘 períodos en
adelante. Mientras que las ecuaciones del método multiplicativo son,

𝐿𝑠 = 𝛼(𝑦𝑡 /𝑆𝑡−𝑠 ) + (1 − 𝛼)(𝐿𝑠−1 + 𝑇𝑡 ) (24)

𝑇𝑡 = 𝛽(𝐿𝑡 − 𝐿𝑡−1 ) + (1 − 𝛽)𝑇𝑡−1 (25)

𝑆𝑡 = 𝛾(𝑦𝑡 /𝐿𝑡 ) + (1 − 𝛾)𝑆𝑡−𝑠 (26)

𝑦̂𝑡+𝑘 = (𝐿𝑡 + 𝑘𝑇𝑡 )𝑆𝑡+𝑘−𝑠 (27)

Las variables son las mismas salvo 𝑇 que es la tendencia multiplicativa suavizada al final del
período 𝑡. 𝛼, 𝛽, 𝛾 son parámetros del modelo. 𝛼 es el parámetro de suavizado para el nivel, 𝛽 es
el parámetro de suavizado para la tendencia y 𝛾 es el parámetro de suavizado para la
estacionalidad (Kotillová, 2021).

2.1.4 Transformada Rápida de Fourier

Otra metodología que existe para la modelización de series temporales consiste en realizar un
análisis en el dominio de las frecuencias, en vez de las variables como las metodologías
comentadas previamente. De tal manera, una señal cualquiera definida en el dominio del tiempo
puede ser transformada en una función definida en el dominio de la frecuencia, mediante el
empleo de la definición de la transformada de Fourier (Botero, 2011).

+∞
̃
𝐹(𝑤
̃) = ∫ 𝑓(𝑡)𝑒 −𝑖𝑤𝑡 𝑑𝑡 (28)
−∞

El valor de 𝑤 es variable y corresponde a la frecuencia circular de vibración de los armónicos


que componen la señal en estudio. De igual forma, una señal cualquiera que esté definida en el
dominio de la frecuencia se puede transformar al dominio del tiempo a través de la definición de
la transformada inversa de Fourier.

- 17 -
Estado del Arte Mínimo

1 +∞ ̃
𝑓(𝑡̃) = ̃)𝑓(𝑡)𝑒 −𝑖𝑤𝑡
∫ 𝑓(𝑤 𝑑𝑤 (29)
2𝜋 −∞

En palabras más simples, la Transformada de Fourier mide todos los ciclos posibles en series de
tiempo y devuelve la “receta de ciclo” general (la amplitud, el desplazamiento y la velocidad de
rotación para cada ciclo que se encontró). En la actualidad, existe un método numérico
ampliamente aceptado, conocido con el nombre de la Transformada Rápida de Fourier (Fast
Fourier Transform), fue propuesta por Cooley y Tukery (Cooley & Tukey, 1965), y se traduce en
un algoritmo eficiente que permite calcular la transformada de Fourier discreta y su inversa. Este
método requiere mucho menor esfuerzo computacional que el cálculo directo de la transformada
de Fourier discreta. Se basa en un cálculo iterativo de los coeficientes de la transformada de
Fourier discreta, de forma que se optimiza el número de operaciones a realizar y,
consecuentemente, el tiempo de cómputo de la transformada.

2.2 Técnicas de Data Mining

2.2.1 Aprendizaje Automático Automatizado (AutoML)

El AutoML consiste en automatizar el proceso de aplicación de técnicas de data mining para


resolver problemas reales. Tiende a mecanizar la mayor cantidad de pasos, y reduce la
intervención del usuario, sin comprometer el rendimiento del modelo (Pandey, 2019).

En una aplicación de data mining común, los usuarios cuentan con un conjunto de datos. A dichos
datos se le deben aplicar técnicas de preprocesamiento, realizar ingeniería de atributos,
extracción y selección de variables para hacer el conjunto de datos legible para el modelo a
aplicar. Terminada dicha etapa, sigue la selección del modelo y la optimización de
hiperparámetros para maximizar el rendimiento predictivo. AutoML simplifica drásticamente estos
pasos. AutoML incluye de manera muy amplia:
• Automatizar ciertas partes de la preparación de datos como, por ejemplo: imputación de
variables, estandarización de variables, selección de atributos, etc.
• Ser capaz de generar varios modelos de forma automática y optimizarlos
• Obtener el mejor modelo de todos los modelos generados.

- 18 -
Estado del Arte Mínimo

Figura 2.1: Pasos de un proceso de AutoML

Fuente: Diwvedi, Vall-llosera, van Bunningen, & Wosa (2020)

2.2.1.1 Ventajas y Desafíos de AutoML

Los principales beneficios de AutoML son:


• Eficiencia: acelera y simplifica el proceso de data mining y reduce el tiempo de creación
de modelos.
• Ahorro de costos: la consecuencia del paso anterior implica menor tiempo en tareas
manuales y por lo tanto un ahorro de costos.
• Accesibilidad: tener un proceso más simple permite que la aplicación de herramientas de
data mining sea alcanzable a una gama más amplia de perfiles profesionales.
• Rendimiento: los algoritmos de AutoML también tienden a ser más eficientes que los
modelos programados de forma manual.

Uno de los principales desafíos de AutoML es la tentación de verlo como un reemplazo del
conocimiento humano. AutoML no puede entender los problemas de negocio, no puede entender
los datos ni adquirirlos. AutoML está diseñado para realizar tareas de forma eficiente y con
precisión, lo que permite que los usuarios se concentren en tareas más complejas o novedosas.
Sin embargo, el usuario aún debe participar para evaluar y supervisar el modelo, pero ya sin la
necesidad de intervenir en cada paso del proceso de data mining. Otro desafío es que es un
campo relativamente nuevo y algunas de las herramientas más populares aún no están
completamente desarrolladas (Lutkevich, 2020).

- 19 -
Estado del Arte Mínimo

2.2.1.2 Librería de AutoML (H2O)

H2O es una plataforma de AutoML de código abierto (LeDell & Poirier, 2020). Está escrita en
Java y puede correrse tanto en R como en Python. Dicha librería es una herramienta útil para los
usuarios principiantes y avanzados. Permite ejecutar una gran cantidad de tareas relacionadas
con el modelado que normalmente requerirían muchas líneas de código. Es decir, esto libera
tiempo para centrarse en otros aspectos del trabajo del científico de datos, como el
preprocesamiento de datos, la ingeniería de atributos y la implementación de modelos (Pandey,
2019).

2.2.1.3 Algunos Algoritmos Implementados en H2O

En cuanto al aprendizaje supervisado (cuando la variable objetivo es conocida), se pueden


encontrar los siguientes algoritmos implementados en dicha librería entre otros (Stetsenko,
2016),
• Generalized Linear Models (GLM): Proporciona una generalización flexible de la regresión
lineal ordinaria, con modelos de distribución de errores distintos a la distribución normal.
GLM unifica varios otros modelos estadísticos, incluidos Poisson, lineal, logístico y otros;
usando métodos de regularización.
• Distributed Random Forest (DRF): Promedia varios árboles de decisión, cada uno creado
en diferentes muestras aleatorias de la base de datos. Es no lineal y proporciona
información sobre la importancia de cada predictor en el modelo, lo que lo convierte en
uno de los algoritmos más robustos.
• Gradient Boosting Machine (GBM): Es un modelo formado por un conjunto de modelos
de predicción débiles, típicamente árboles de decisión. Construye el modelo de forma
escalonada y los generaliza a partir de una función de pérdida diferenciable.
• XGBoost: es un modelo que implementa de manera optimizada el modelo de Gradient
Boosting Machine (Chen & Guestrin, 2016).

2.2.2 Redes Neuronales

Las redes neuronales artificiales son un modelo computacional inspirado en el comportamiento


observado en su homólogo biológico. Consiste en un conjunto de unidades, llamadas neuronas
artificiales, conectadas entre sí para transmitirse señales. La información de entrada atraviesa la

- 20 -
Estado del Arte Mínimo

red neuronal (dónde es sometida a diversas operaciones) produciendo unos valores de salida.
Entre varias aplicaciones de estas, cabe destacarse su utilización como métodos de pronóstico
de series temporales.

Cada neurona está conectada con otras a través de unos enlaces. En estos enlaces el valor de
salida de la neurona anterior es multiplicado por un valor de peso. Estos pesos en los enlaces
pueden incrementar o inhibir el estado de activación de las neuronas adyacentes. Del mismo
modo, a la salida de la neurona, puede existir una función limitadora o umbral, que modifica el
valor resultante o impone un límite que se debe sobrepasar antes de propagarse a otra neurona.
Esta función se conoce como función de activación (McCulloch & Pitts, 1943).

Así, se tiene la capa de entrada formada por las entradas a la red, la de salida formada por las
neuronas que constituyen la salida final de la red, y las ocultas formadas por las neuronas que
se encuentran entre los nodos de entrada y de salida. Una red neuronal puede tener varias capas
ocultas o no tener ninguna. Las conexiones sinápticas (las flechas que llegan y salen de las
neuronas) indican el flujo de la señal a través de la red, y tienen asociadas un peso sináptico
correspondiente. Si la salida de una neurona va dirigida hacia dos o más neuronas de la siguiente
capa, cada una de estas últimas recibe la salida neta de la neurona anterior. La cantidad de
capas de una red neuronal es la suma de las capas ocultas más la capa de salida. Un ejemplo
sencillo de perceptrón multicapa (red neuronal con capas ocultas) se exhibe en la siguiente
figura,

Figura 2.2: Perceptrón multicapa

Fuente: Mañas Mañas (2019), Capítulo 8

El problema habitual con este tipo de redes multicapa es proporcionar los pesos adecuados de
la red para que se obtenga una aproximación correcta de las salidas si la misma recibe
únicamente los datos de entrada.

- 21 -
Estado del Arte Mínimo

Estos sistemas aprenden y se forman a sí mismos, en lugar de ser programados de forma


explícita, y sobresalen en áreas donde la detección de soluciones o características es difícil de
expresar con la programación convencional. Para realizar este aprendizaje automático,
normalmente, se intenta minimizar una función de pérdida que evalúa la red en su totalidad. Los
valores de los pesos de las neuronas se actualizan bajo la búsqueda de reducir el valor de la
función de pérdida. Este proceso se realiza mediante la propagación hacia atrás (Back
Propagation). Históricamente, el avance clave en el desarrollo de las redes neuronales fue el
algoritmo de propagación hacia atrás que resuelve eficazmente el problema del entrenamiento
rápido de redes neuronales de múltiples capas (Werbos, 1975). El proceso de propagación hacia
atrás utiliza la diferencia entre el resultado producido y el deseado para cambiar los pesos de las
conexiones entre las neuronas artificiales. Sin embargo, para redes de múltiples capas que usan
la propagación hacia atrás se presenta el problema del Vanishing Gradient Problem4. Un caso
particular son las redes neuronales recurrentes (RNNs) que poseen la particularidad que aunque
los errores se propagan de una capa a otra, disminuyen exponencialmente con el número de
capas, y eso impide el ajuste hacia atrás de los pesos de las neuronas basado en esos errores.
Las redes profundas se ven particularmente afectadas.

2.2.3 Redes Neuronales Autorregresivas (NNAR)

Un primer acercamiento al uso de redes neuronales para predecir valores futuros es emplear una
Red Neuronal Autorregresiva.

Figura 2.3: Arquitectura NNAR básica

Fuente: Mañas Mañas (2019), Capítulo 8

4
En español, problema del desvanecimiento del gradiente. Es una dificultad encontrada para entrenar redes
neuronales mediante métodos basados en descenso estocástico de gradientes y de retropropagación.

- 22 -
Estado del Arte Mínimo

La clave para el uso de este tipo de redes es considerar los datos ordenados de la serie temporal
como entradas de la red, del mismo modo que se utilizan los valores rezagados (o desfasados)
en un modelo autorregresivo tradicional. A estos modelos se los denomina Redes Neuronales
Autorregresivas (NNAR).

Cuando se trata de pronósticos mediante este algoritmo, la red se aplica de forma iterativa. Para
pronosticar un paso adelante, simplemente utiliza las entradas históricas disponibles. Para
pronosticar dos pasos adelante, emplea el pronóstico de un paso como entrada, junto con los
datos históricos. Este proceso continúa hasta que se haya computado todos los pronósticos
requeridos.

2.2.4 Redes de Memoria Largo-Corto Plazo (LSTM5)

Las redes neuronales recurrentes (RNN) tienen la capacidad de reconocer y predecir secuencias
de datos a lo largo del tiempo y se fundamentan en bucles que permiten que la salida de la red
o de una parte de ella en un momento dado sirva como entrada de la misma en el siguiente
momento.

Figura 2.4: Arquitectura RNN básica

Fuente: Mañas Mañas (2019), Capítulo 8

Donde 𝐴 es una red neuronal, 𝑥 es la entrada y ℎ es la salida. Para entender el funcionamiento


de las RNNs, se puede considerar un perceptrón multicapa con una sola capa oculta de manera
que la salida del perceptrón es utilizada como entrada en la siguiente evaluación. Este bucle en
la arquitectura de la red es precisamente lo que le permite “recordar” información a lo largo del

5
Siglas de long short-term memory (memoria a largo y corto plazo)

- 23 -
Estado del Arte Mínimo

tiempo. En la medida en que se incorporan capas, su capacidad de modelado crecerá de manera


que será capaz de reconocer mayores secuencias cada vez con menor error.

Es importante destacar que precisamente el bucle que conecta la red consigo misma es el
mecanismo que le permite que tenga memoria. Las RNNs pueden verse también como múltiples
copias de la misma red, cada una de ellas pasando información a su sucesora.

Figura 2.5: Arquitectura RNN expandida

Fuente: Mañas Mañas (2019), Capítulo 8

Las RNNs tienen un contratiempo importante que es el problema del desvanecimiento del
gradiente; o sea, tienen dificultades para aprender dependencias de largo alcance. Cuando se
realiza la propagación hacia atrás, es decir, se mueve hacia atrás en la red y se calculan los
gradientes de pérdida (error) con respecto a los pesos, los primeros tienden a ser cada vez más
pequeños a medida que se mueven hacia atrás en la red. Esto significa que las neuronas en las
capas anteriores aprenden muy lentamente en comparación con aquellas en las capas
posteriores en la jerarquía. Las capas anteriores de la red son las más lentas de entrenar. Este
es un problema en todos los tipos de redes neuronales, pero particularmente es nocivo para
aquellas donde lo que se pretende es tener la componente de memoria necesaria para pronóstico
de series temporales.

En forma afortunada este problema fue resuelto por Hochreiter y Schmidhuber (1997) mediante
la creación de las LSTM, las cuales son un tipo especial de RNN, capaz de aprender
dependencias a largo plazo. Recordar información durante largos períodos de tiempo es
prácticamente su comportamiento predeterminado. Todas las redes neuronales recurrentes
tienen la forma de una cadena de módulos repetitivos de la misma. En las RNN estándar, este
módulo de repetición tendrá una estructura muy simple, como una sola capa de activación. Las
LSTM también tienen esta estructura tipo cadena, pero el módulo de repetición tiene una

- 24 -
Estado del Arte Mínimo

estructura diferente. En lugar de tener una sola capa de red neuronal, hay cuatro que interactúan
de una manera muy especial.

Figura 2.6: Capas de las celdas LSTM

Fuente: Mañas Mañas (2019), Capítulo 8

La clave de las redes LSTM es el estado de la célula, la línea horizontal que recorre la parte
superior del diagrama. El estado de la célula es algo así como una cinta transportadora. Corre
hacia abajo por toda la cadena, con solo algunas interacciones lineales menores. Es muy fácil
que la información fluya sin cambios. Estas redes tienen la capacidad de eliminar o agregar
información al estado de la célula, cuidadosamente regulado por estructuras denominadas
compuertas, y tienen la capacidad de permitir que la información fluya y se componen de una
capa de red neuronal sigmoidea y una operación de multiplicación puntual. La capa sigmoidea
produce números entre cero y uno, que describen la cantidad de cada componente que debe
dejarse pasar. Un valor de cero significa “no dejar pasar nada”, mientras que un valor de uno
significa “dejar pasar todo”. Una LSTM tiene tres de estas compuertas, para proteger y controlar
el estado de la celda.

2.2.5 Prophet

Prophet es la popular herramienta de pronóstico desarrollada por Facebook para predecir series
de tiempo basado en un modelo aditivo en el que las tendencias no lineales se ajustan a la
estacionalidad. Una de las particularidades es que se adapta mejor a series de tiempo que
poseen fuertes efectos estacionales y varias temporadas de datos históricos. Asimismo, soporta
datos faltantes y cambios en la tendencia, y normalmente maneja bien los valores atípicos. En

- 25 -
Estado del Arte Mínimo

esencia, el procedimiento es un modelo de regresión aditivo de tres funciones de tiempo


(crecimiento, estacionalidad y días festivos / eventos) más un término de error (Taylor et al.,
2017),

𝑦(𝑡) = 𝑔(𝑡) + 𝑠(𝑡) + ℎ(𝑡) + 𝜀𝑡 (30)

Siendo 𝑔(𝑡) el crecimiento, 𝑠(𝑡) la estacionalidad, ℎ(𝑡) los días festivos / eventos y 𝜀𝑡 el término
de error.

2.2.5.1 La función de crecimiento

La función de crecimiento modela la tendencia general de los datos. La novedad incorporada en


Prophet es que la tendencia de crecimiento puede estar presente en todos los puntos de los
datos o puede modificarse en los "puntos de cambio", que representan momentos donde los
datos cambian de dirección. La función de crecimiento tiene tres opciones principales,
• Crecimiento lineal: esta es la configuración predeterminada (o default). Utiliza un conjunto
de ecuaciones lineales con diferentes pendientes entre los puntos de cambio. Asume que
el término de crecimiento se exhibirá similar al clásico (𝑦 = 𝑚𝑥 + 𝑏).
• Crecimiento logístico: esta configuración es útil cuando la serie de tiempo tiene un techo
o un piso en el que los valores a modelizar se saturan y no pueden superar un valor
máximo o mínimo. Cuando se utiliza el crecimiento logístico, el término correspondiente
se exhibirá en forma similar a una ecuación típica para una curva logística.
• Constante: por último, se puede elegir una tendencia constante cuando no hay
crecimiento en el tiempo (pero aún puede existir estacionalidad). La función de
crecimiento será un valor constante.

2.2.5.2 La función de estacionalidad

La función de estacionalidad es simplemente una serie de Fourier en función del tiempo. Una
manera fácil de interpretarla es considerarla como la suma de muchas funciones senos y cosenos
sucesivas. Cada término de seno y coseno se multiplica por algún coeficiente. Esta suma puede
aproximarse a casi cualquier curva o, en el caso de este algoritmo, a la estacionalidad de los
datos.

- 26 -
Estado del Arte Mínimo

2.2.5.3 La función de días festivos / eventos

La función de días festivos o eventos permite al algoritmo ajustar el pronóstico cuando un día
festivo o un evento importante puede cambiar la serie cronológica.

2.2.6 Neural Prophet

Neural Prophet es una red neuronal fuertemente inspirada en el algoritmo mencionado en el


apartado anterior. El objetivo de la librería es combinar el poder de las redes neuronales y la
interpretabilidad de los modelos autorregresivos tradicionales. Estos últimos tienen la ventaja de
que son interpretables e intuitivos, lo que significa que se puede exhibir cómo se ponderan los
valores pasados y cómo esa entrada influye en las predicciones. La desventaja es que estos
modelos son paramétricos (demasiado rígidos), no pueden tener en cuenta ninguna
característica fuera de la autocorrelación y hacen un mal trabajo al escalar conjuntos de datos
con un mayor número de regresores autocorrelacionados (Hyndman & Athanasopoulos, 2018).

Las redes neuronales, por otro lado, no son paramétricas, lo que es importante para las series
de tiempo dado que rara vez siguen una forma estándar única. Por lo general, pueden mapear
cualquier función no lineal para aproximarse a cualquier expresión de índole continua. Para la
librería en cuestión, la red neuronal se la conoce como AR-Net. Esta es una red de una sola capa
que está entrenada para imitar el proceso autorregresivo en una señal de serie temporal, pero a
una escala mucho mayor que los modelos autorregresivos tradicionales. Las entradas para los
modelos autorregresivos clásicos y AR-Net son las mismas, pero AR-Net puede trabajar con
mucha mayor cantidad de variables de entrada (Triebe, Laptev & Rajagopal, 2019).

Por otro lado, Prophet es conocido por sus hiperparámetros intuitivos y componentes
interpretables, y Neural Prophet continúa con ambas características. Es importante destacar que
pretende mejorar los cálculos que realiza por detrás, AR-Net maneja la autorregresividad para
acomodar una mayor cantidad de entradas, lo que permite una representación más precisa de la
señal de la serie temporal. Asimismo, Neural Prophet utiliza las tendencias lineales por partes
del Prophet original y la serie de Fourier para dar cuenta de múltiples estacionalidades, pero la
incorporación de regresores adicionales se actualiza en mediante el uso de redes neuronales
adicionales. Neural Prophet tiene una serie de características adicionales con respecto al
algoritmo original,

- 27 -
Estado del Arte Mínimo

• Utilización de la técnica de descenso del gradiente para la optimización.


• Modelado de autocorrelación de series de tiempo usando AR-Net.
• Modelado de los retardos utilizando una red neuronal Feed-Forward separada.
• Capas profundas no lineales configurables.
• Ajustable a horizontes de pronóstico específicos (mayores que 1).

2.3 Trabajos Relacionados

A modo introductorio, (Benítez et al., 2017) realizan una síntesis sobre la importancia de las
proyecciones de ventas para el área de abastecimiento, y listan una serie de métodos cualitativos
y cuantitativos existentes. Luego realizan predicciones mediante un algoritmo simple de data
mining.

En (Chandra, Jain, & Menom, 2014) proponen un modelo más complejo a través del algoritmo
de data mining XGBoost para una de las más importantes cadenas de farmacias de Europa.
Dicho modelo fue comparado con otros algoritmos como regresión lineal y Random Forests, y se
concluye que no fue superado por estos en cuanto a la precisión. En (El Afia, & Sarhani, 2014)
aplicaron un algoritmo de soporte vectorial (SVM).

De forma similar (Carbonneau, Laframboise, & Vahidov, 2008) compararon técnicas de


proyección de la demanda tradicionales como series de tiempo y regresión lineal, con otras de
data mining como redes neuronales (NN), redes neuronales recurrentes (RNN) y SVM. Ellos
obtuvieron mejores resultados con los algoritmos de SVM y RNN, respecto de las técnicas
tradicionales (no habiendo diferencias significativas entre SVM y RNN).

A diferencia del trabajo anterior en la que se usaron dos fuentes de datos, (Makridakis, Spiliotis,
& Assimakopoulos, 2018) trabajaron con 1045 series de tiempo con datos mensuales, y alegaron
que generalmente se sacan conclusiones en base al análisis de unas pocas series temporales y
que además dichas series suelen tener una ventana temporal acotada. En el mencionado trabajo
utilizaron ocho métodos de data mining y ocho métodos estadísticos tradicionales. Uno de los
aspectos concluyentes del trabajo es que los métodos estadísticos poseen mayor precisión y,
que además son computacionalmente menos costosos. No obstante, aclaran que como la
mayoría de las series utilizadas son de naturaleza económico – financiera, entonces pueden

- 28 -
Estado del Arte Mínimo

sesgarse las conclusiones dado que, para otro tipo de series, las técnicas de data mining quizás
sean más precisas.

Mientras que (Kilimci et al., 2019) tuvieron un enfoque distinto en el que hicieron un ensamble de
técnicas estadísticas de series temporales, con otras de data mining como SVM y NN. De esta
forma crearon un modelo híbrido que lo testearon con datos reales de uno de los supermercados
más importante de Turquía (SOK Market), y obtuvieron una mejor precisión que si utilizaban las
técnicas de forma separada. En la misma sintonía (Aburto & Weber, 2005) propusieron un
modelo híbrido de series temporales (ARIMA) y NN para una cadena de supermercados chilena
(Economax), teniendo la combinación de ambas una mejor performance que los modelos por
separado.

En la propuesta del presente trabajo se analizaron tanto los métodos de data mining existentes,
como los estadísticos. De lo explicitado anteriormente, parece no haber un modelo mejor que
otro a priori, sino que la elección de un modelo dependerá de aquel que mejor se ajuste a los
datos de este.

- 29 -
Metodología y Análisis de los Datos

Capítulo 3

Metodología y Análisis de los Datos

3.1 Metodología

Respecto a los métodos y técnicas, se utilizó la metodología CRISP-DM (Chapman et al., 2000)
para el modelo de data mining, la cual fue creada por un grupo de empresas (SPSS, NCR y
Daimer Chrysler). Esta metodología consta de seis fases: comprensión del negocio, comprensión
de los datos, preparación de los datos, modelado, evaluación e implementación.

La primera fase es la comprensión del negocio. Esta fase inicial se centra en el entendimiento de
los objetivos y requisitos del proyecto desde la perspectiva del cliente. Este conocimiento servirá
en la definición del problema de data mining y del plan preliminar para alcanzar los objetivos.

La segunda fase es la comprensión de los datos. En esta fase se colectan los datos. Se realiza
un análisis exploratorio para familiarizarse con los mismos y comprenderlos. Se evalúa la calidad
de los datos.

La tercera fase es la de preparación de los datos. Es una de las fases de trabajo más intensas.
Comprende el análisis de los datos y selección de características para construir la base final con
la que se va a trabajar. Las tareas incluyen la selección de tablas, registros y atributos, así como
la transformación y limpieza de datos para los modelos de data mining.

La cuarta fase es la de modelación. Se seleccionan y aplican las técnicas apropiadas de


modelización. Se deben calibrar los parámetros del modelo para optimizar los resultados. Se
debe volver a la fase de preparación de los datos en caso de que el modelo de data mining lo
requiera.

La quinta fase es la de evaluación. En esta etapa del proyecto, se cuenta con uno o varios
modelos que parecen alcanzar una calidad suficiente. Se debe determinar qué modelo logra el
mejor resultado en alcanzar los objetivos establecidos en la fase de comprensión del negocio.

- 30 -
Metodología y Análisis de los Datos

Por último, la sexta fase es la de implementación. Luego de la selección y evaluación del modelo,
se debe transformar el conocimiento obtenido en acciones concretas para el negocio.
Generalmente un proyecto de data mining no culmina en la implementación del modelo. Se
deben documentar y presentar los resultados para que los mismos sean comprensibles para el
usuario. Por otro lado, debe planificarse un seguimiento y mantenimiento del modelo.
Dependiendo de los requisitos, la fase de desarrollo puede ser tan simple como la generación de
un informe o tan compleja como la realización periódica y quizás automatizada de un proceso de
análisis de datos en la organización.

En cuanto al modelado mediante series temporales, se utilizó la metodología Box-Jenkins (Box


& Jenkins, 1973), caracterizada por una iteratividad que, principalmente, busca ajustar un modelo
a una serie de tiempo con el fin de que este sea el que mejor se amolde. La misma se compone
de tres etapas, la primera es la identificación y selección del modelo la cual se basa en el análisis
de los diagramas de función de autocorrelación (FAC) y autocorrelación parcial (FACP). Se busca
que el comportamiento de la variable sea estacionario y sin estacionalidad.

La segunda etapa consistirá en la estimación de los parámetros mediante algoritmos de cálculo


para tener los coeficientes que mejor ajusten al modelo seleccionado. Los métodos más comunes
usan estimaciones de máxima verosimilitud o mínimos cuadrados ordinarios. Por último, la
tercera etapa consiste en la validación y ajuste del modelo. En particular, los residuos deben ser
independientes el uno del otro y, además, la media y la varianza deben ser constantes en el
tiempo. Para identificar esto mismo, es útil graficar la media y la varianza de los residuos a través
del tiempo y realizar una prueba de Ljung-Box o bien trazar los gráficos de FAC y FACP de los
residuos. Si la estimación es inadecuada, se debe volver a la primera etapa e intentar buscar un
modelo mejor.

3.2 Descripción de los Sistemas

Este apartado consiste en una descripción general de la arquitectura de los sistemas que
intervienen en el área de abastecimiento de la empresa.

- 31 -
Metodología y Análisis de los Datos

Figura 3.1: Diagrama de los sistemas de la empresa

Fuente: Elaboración propia

Oracle HLPSP es un clon diario de la base de datos transaccional (OLTP6). Esto se hace debido
al gran volumen de la base OLTP y para no sobrecargar al sistema transaccional. Uno de los
datos más importantes que se extrae son los datos de las ventas.

Planning es donde los planificadores cargan sus predicciones.

Oracle HMS es el ERP7 principal de la empresa que abastece a distintos sistemas de la empresa.

Oracle ASCP hace el desglose de las predicciones de producto terminado para generar los
requerimientos de materias primas.

TAKE es la herramienta utilizada por los proveedores (internos y externos) para administrar y
abastecer dichos requerimientos de materia prima. Esto queda formalizado en las órdenes de
compra mediante el módulo de Oracle Purchasing.

6
Siglas de OnLine Transaction Processing (Procesamiento de Transacciones En Línea)
7
Siglas de Enterprise Resource Planning (Planificación de Recursos Empresariales)

- 32 -
Metodología y Análisis de los Datos

Estas herramientas también abastecen otras bases de datos y un ERP denominado Oracle MFG
que se enfoca principalmente en lo que es manufactura y producción. Allí se reciben las órdenes
de compra, se generan y administran los requerimientos, se establece el plan de producción, se
asegura el abastecimiento y se define el transporte a los distintos centros de distribución.

PAIRS, es una aplicación web que brinda información sobre la disponibilidad de productos e
inventario.

La aplicación AUTO BLOCK se encarga de bloquear los productos con niveles bajos de stock de
los portales donde se pueden realizar pedidos y, a su vez, automáticamente desbloquear un
producto que recuperó su stock.

La aplicación CONNECT establece un puente entre los dos ERP de Oracle y le permite al usuario
visualizar información de ambas plataformas.

3.3 Descripción de los Datos

A partir de la comunión de las bases de datos y aplicaciones anteriores, se cuenta con una base
con más de 50 millones de registros y una cantidad de variables superiores a 250. La base hace
referencia a más de 96.000 ítems, 9 regiones, 90 países y más de 290 organizaciones. Debido
a la magnitud y al trabajo de procesamiento que implicaría trabajar con la totalidad de la base,
se seleccionó un extracto de esta. Para ello, se filtraron los datos desde enero de 2016, hasta
enero de 2021 y se definió trabajar con la organización más importante de la empresa, ubicada
en Los Ángeles, Ciudad del Estado de California de los Estados Unidos de América. A su vez se
filtraron ítems que no tenían ventas, porque correspondían a entidades auxiliares que se usan
en el sistema y no representan ítems físicos. La máxima granularidad de la base es a nivel ítem
– mes. Con las consideraciones anteriores, la base de trabajo pasó a tener 217.512 filas. A su
vez, a partir del conocimiento del negocio, se realizó una limpieza de atributos y se redujeron a
88 campos (ver apéndice 1 con la descripción de cada uno).

La variable objetivo es la predicción de la venta para cuatro meses en adelante (Sales Units 4ML
Forward). Además, se procedió a ofuscar todas las variables con información del negocio
considerada sensible. Para todas las operaciones de limpieza y agregaciones para dejar la base

- 33 -
Metodología y Análisis de los Datos

lista en la granularidad necesaria, se utilizó como ETL8 la herramienta denominada Tableau Prep
Builder. Dicho software permite realizar tareas de limpieza, uniones, creación de variables,
transformaciones, agregaciones, etc. de manera intuitiva para el usuario mediante un esquema
de flujograma. En esta imagen se observa parte del flujo de trabajo construido,

Figura 3.2: Flujograma para la preparación de los datos (Tableau Prep Builder)

Fuente: Elaboración propia

3.4 Adición de Variables Internas y Externas y Creación de Variables

Asimismo, se adicionaron algunas variables internas provenientes de otras fuentes de datos


dentro de la organización, otras de origen externo (fuentes no relacionadas a la firma) y algunas
creadas.

3.4.1 Variables Internas


Tabla 3.1: Variables Internas

Nombre Variable Descripción


Total DS Cantidad de Distribuidores (vendedores)
Total SP Cantidad de Supervisores (rango superior al de distribuidor)
DS + SP Supervisores + Distribuidores
New DS Nuevos Distribuidores
New SP Nuevos Supervisores
Diferencia de la totalidad de distribuidores y supervisores respecto al mes
Diff Prev Month (DS + SP)
anterior
Fuente: Elaboración propia

8
Siglas de Extract, Transform and Load (extraer, transformar y cargar) es el proceso que permite a las organizaciones
mover datos desde múltiples fuentes, reformatearlos y limpiarlos, y cargarlos en otra base de datos, data mart, o data
warehouse para analizar, o en otro sistema operacional para dar soporte a un proceso de negocio

- 34 -
Metodología y Análisis de los Datos

3.4.2 Variables Externas


Tabla 3.2: Variables Externas

Nombre Variable Descripción Fuente


Google Trends Popularidad de búsqueda de la empresa en Google Google Trends
Federal Reserve
Inflation Tasa de Inflación Mensual
Economic Data
Federal Reserve
Unemployment Tasa de Desempleo Mensual
Economic Data
Federal Reserve
GDP Producto Bruto Interno
Economic Data
Tasa de interés de la Reserva Federal de Estados Federal Reserve
Interest Rate
Unidos Economic Data
Stock Price Precio de la acción bursátil al comienzo del mes Yahoo Finance
Competitor 1 Popularidad de búsqueda de un competidor en Google Google Trends
Competitor 2 Popularidad de búsqueda de un competidor en Google Google Trends
Competitor 3 Popularidad de búsqueda de un competidor en Google Google Trends
Índice de Gastos de Consumo Personal. Índice 2012 = Federal Reserve
Consumption Index
100 Economic Data
Ingresos Personales Reales disponibles en miles de Federal Reserve
Income
millones de USD de 2012 Economic Data
Expectativas Comerciales: % de crecimiento de los Federal Reserve
Business Expectations
ingresos Economic Data
Ventas minoristas para tiendas de salud y cuidado Federal Reserve
Retail Sales
personal en millones de USD Economic Data
Fuente: Elaboración propia

3.4.3 Variables Creadas


Tabla 3.3: Variables Creadas

Nombre Variable Descripción


Abs Diferencia entre las ventas reales y la predicción actual de ventas hace 4 meses
Feature1 Cociente entre las ventas reales y la predicción actual de ventas hace 4 meses
Sales Units -1 Ventas 1 período anterior
Sales Units -2 Ventas 2 períodos anteriores
Sales Units -3 Ventas 3 períodos anteriores
Sales Units -4 Ventas 4 períodos anteriores
Sales Units -5 Ventas 5 períodos anteriores
Sales Units -6 Ventas 6 períodos anteriores
Sales Units -7 Ventas 7 períodos anteriores
Sales Units -8 Ventas 8 períodos anteriores
Fuente: Elaboración propia

- 35 -
Metodología y Análisis de los Datos

3.5 Exploración de los Datos

Para realizar el análisis exploratorio de la base en su mayor granularidad (ítem – mes) se


utilizaron distintas librerías de AutoEDA (Análisis Exploratorio Automatizado) en Python. La
primera que se utilizó se denomina Autoviz y realiza un análisis visual y gráfico de la base de
datos. Luego se emplearon otras dos (Pandas Profiling y Sweetviz) que elaboran un informe tanto
gráfico, como numérico sobre el análisis exploratorio. Estas bibliotecas tienen la ventaja de que
permiten realizar una observación preliminar de forma rápida.

Para estudiar la serie agregada (serie temporal) se utilizaron diversas librerías en R,


especialmente para el análisis gráfico de FAC (función de autocorrelación) y FACP (función de
autocorrelación parcial) y los distintos tests de raíces unitarias.

3.5.1 Análisis a Nivel Ítem

Si se considera la base de datos completa formada por las variables originales, las creadas y las
agregadas; se obtienen los siguientes datos:

Tabla 3.4: Características Generales

Cantidad de Registros 217.512


Cantidad de Variables 117
Variables Categóricas 44
Variables Numéricas 73
Valores Faltantes 5.547.981
Valores Faltantes (%) 21,80%
Fuente: Elaboración propia

La variable objetivo (la venta cuatro meses en adelante) tiene las siguientes características:

Tabla 3.5: Características Variable Objetivo

Valores Distintos 6.275


Valores Distintos (%) 2,90%
Valores Faltantes 0
Media 338,5
Desvío Estándar 4.143
Varianza 17.164.449

- 36 -
Metodología y Análisis de los Datos

Mínimo 0
Máximo 302.000
Kurtosis 2.045
Asimetría 38,4
Cantidad de nulos 198.207
Cantidad de nulos (%) 91,10%
Fuente: Elaboración propia

Se grafica el histograma de la variable ojetivo y el histograma con la exclusión de los nulos ya


que, como se exhibe anteriomente, es el valor predominante de la base (91,1%).

Figura 3.3: Histograma de la Variable Objetivo Figura 3.4: Histograma de la Variable Objetivo
excluyendo los nulos

La variable objetivo tiene asimetría positiva, la cola de la distribución se alarga (a la derecha)


para valores superiores a la media. A continuación, se presentan los valores que más se repiten
y los valores extremos (más pequeños y más grande):

Tabla 3.6: Valores más Frecuentes Tabla 3.7: Valores más Pequeños Tabla 3.8: Valores más Grandes

Valores más frecuentes Valores más pequeños Valores más grandes


Valor Cantidad % Valor Cantidad % Valor Cantidad %
0 198.207 91,10% 0 198.207 91,10% 302.000 1 <0,1%
1 742 0,30% 1 742 0,30% 288.000 1 <0,1%
2 481 0,20% 2 481 0,20% 286.000 1 <0,1%
4 465 0,20% 3 327 0,20% 284.000 1 <0,1%
3 327 0,20% 4 465 0,20% 283.000 1 <0,1%
8 319 0,10% 5 259 0,10% 278.000 1 <0,1%
5 259 0,10% 6 197 <0,1% 273.000 1 <0,1%

- 37 -
Metodología y Análisis de los Datos

6 197 <0,1% 7 170 <0,1% 271.000 1 <0,1%


10 190 <0,1% 8 319 0,001 270.000 1 <0,1%
7 170 <0,1% 9 136 <0,1% 262.000 1 <0,1%
12 163 <0,1% 10 190 <0,1% 256.000 1 <0,1%
40 151 <0,1% 11 102 <0,1% 255.000 1 <0,1%
20 141 <0,1% 12 163 <0,1% 254.000 1 <0,1%
9 136 <0,1% 13 92 <0,1% 249.000 1 <0,1%
16 107 <0,1% 14 98 <0,1% 240.000 1 <0,1%
Fuente: Elaboración propia

La librería Sweetviz identifica como se relaciona la variable objetivo con el resto de las variables
(numéricas y categóricas):

Tabla 3.9: Asociación Numérica Tabla 3.10: Asociación Categórica

Asociación Numérica (Pearson -1 a 1) Asociación Categórica (Coef. de Correlación 0 a 1)


Sales Units 0,95 Segment OF 0,35
Last 3 Months Sales Units 0,95 Planner Code Description OF 0,33
Last 6 Months Sales Units 0,94 Planner Code OF 0,33
Sales Units -1 0,94 Supplied orgs 0,33
4 ML Forecast Units 4ML Forward 0,94 Item Tax Category OF 0,33
Last 12 Months Sales Units 0,93 Standard Supplier OF 0,33
5 ML Forecast Units 4ML Forward 0,93 Planning Category OF 0,32
Sales Units -2 0,93 Source Org Vendor OF 0,31
7 ML Forecast Units 4ML Forward 0,93 Sourcing Rule OF 0,30
6 ML Forecast Units 4ML Forward 0,93 Product Type Desc OF 0,28
8 ML Forecast Units 4ML Forward 0,92 Default Buyer OF 0,27
Sales Units -3 0,92 Preprocessing Lead Time 0,25
9 ML Forecast Units 4ML Forward 0,92 Planning Time Fence Days 0,25
Avg of 13 Weeks 0,92 Country Of Origin 0,24
Fuente: Elaboración propia

Además, se adjunta en el apéndice 2 la correlación de Spearman de la variable objetivo con


respecto al resto de las variables numéricas. En los siguientes gráficos, se ejemplifica el
comportamiento de la variable objetivo frente a tres variables numéricas y categóricas elegidas
de las tablas anteriores para ver su relación,

- 38 -
Metodología y Análisis de los Datos

Figura 3.5: Tres Variables Numéricas vs Variable Objetivo

Figura 3.6: Tres Variables Categóricas vs Variable Objetivo

3.5.3 Análisis a Nivel Agregado (Serie Temporal)

Para obtener la serie de tiempo agregada, se suman las ventas en unidades de todos los items
por mes. A continuación se grafica la serie de tiempo correspondiente a las ventas reales, como
así también la serie de tiempo obtenida con el sistema actual de pronósticos (sistema experto):

Figura 3.7: Ventas Reales Figura 3.8: Ventas Reales (negro) y Pronóstico
del Sistema Experto (azul)
Ventas
Ventas

Año Año

En los siguientes gráficos se muestra la evolución de la serie por mes, para cada año. También
graficamos la densidad de la distribución de la serie por año:

- 39 -
Metodología y Análisis de los Datos

Figura 3.9: Evolución de la Serie por Mes Figura 3.10: Distribución de las Ventas por Año

Densidad
Ventas

Mes del Año Distribución de las Ventas por Año

Por el comportamiento de la serie, se puede identificar la posible existencia de estacionalidad.


Esta suposición, concuerda con la experiencia y conocimiento del negocio. Por otro lado, vemos
que el nivel de ventas se comporta de manera similar en todos los años excepto en los años
2016 y 2020, donde se aprecia un incremento considerable. A continuación, detallamos las
características de la variable objetivo a nivel agregado:

Tabla 3.11: Características Variable Objetivo

Media 1.313.337
Desvío Estándar 207.794
Mínimo 917.110
Primer Cuartil (25%) 1.173.200
Segundo Cuartil (50%) 1.258.801
Tercer Cuartil (75%) 1.424.419
Máximo 1.862.770
Fuente: Elaboración propia

3.5.2.1 Descomposición de la serie

El método de descomposición clásico se originó en la década de 1920. Es un procedimiento


relativamente simple y constituye el punto de partida para la mayoría de los otros métodos de
descomposición de series de tiempo (Hyndman, & Athanasopoulos, 2018). Hay dos formas de
descomposición clásica: una descomposición aditiva y una descomposición multiplicativa. En el
siguiente caso describiremos los pasos para la descomposición aditiva:

- 40 -
Metodología y Análisis de los Datos

Figura 3.11: Descomposición Aditiva de la Serie

Serie Original

Componente Aleatoria

Estacionalidad

Tendencia

3.5.2.2 Función de Autocorrelación (FAC) y Autocorrelación Parcial (FACP)

Así como la correlación mide el alcance de una relación lineal entre dos variables, la
autocorrelación mide la relación lineal entre los valores rezagados de una serie de tiempo
(Hyndman, & Athanasopoulos, 2018). La autocorrelación y la autocorrelación parcial son medidas
de asociación entre valores actuales y pasados e indican cuáles son los valores pasados más
útiles para predecir valores futuros. Hay varios coeficientes de autocorrelación correspondientes
a la relación con cada retardo, pero en líneas generales se puede escribir como,

∑𝑇𝑡=𝑘+1(𝑦𝑡 − 𝑦̅)(𝑦𝑡−𝑘 − 𝑦̅)


𝑟𝑘 = (31)
∑𝑇𝑡=1(𝑦𝑡 − 𝑦̅)2

Dónde T es la longitud de la serie temporal.

• Función de autocorrelación (FAC): en el retardo 𝑘, es la autocorrelación entre los valores


de las series que se encuentran a 𝑘 intervalos de distancia.

- 41 -
Metodología y Análisis de los Datos

• Función de autocorrelación parcial (FACP): en el retardo 𝑘, es la autocorrelación entre


los valores de las series que se encuentran a 𝑘 intervalos de distancia, teniendo en cuenta
los valores de los intervalos intermedios.

Cuando los datos tienen una tendencia, las autocorrelaciones para pequeños retardos tienden a
ser grandes y positivas porque las observaciones cercanas en el tiempo también son influyentes.
Por lo tanto, la FAC de las series de tiempo con tendencia tienden a tener valores positivos que
disminuyen lentamente a medida que aumentan los lags. Cuando los datos son estacionales, las
autocorrelaciones serán mayores para los retardos estacionales (en múltiplos de la frecuencia
estacional) que para otros. Cuando los datos tienen tendencias y son estacionales, se ve una
combinación de estos efectos. A continuación, se observa la gráfica de FAC y FACP para la serie
en cuestión:

Figura 3.12: Función de Autocorrelación (FAC) Figura 3.13: Función de Autocorrelación Parcial (FACP)

Retardo Retardo

Como se observa de las gráficos parece existir tanto una componente de tendencia, como una
componente de estacionalidad, lo que implica que se trataría de una serie no estacionaria.

3.5.2.3 Test de Raíces Unitarias

Más allá de la inspección visual, a fin de verificar la existencia o no de estacionariedad sobre la


serie se efectuaron algunos tests para comprobar la presencia de raíces unitarias. Un proceso
estocástico lineal tiene una raíz unitaria si el valor de la raíz de la ecuación característica del
proceso es igual a uno, entonces tal proceso no es estacionario. De ahí la relación entre
estacionariedad y la presencia de raíces unitarias.

- 42 -
Metodología y Análisis de los Datos

Los tests más frecuentemente utilizados para evaluar la presencia de una raíz unitaria
corresponden a variantes de los tests propuestos por Dickey y Fuller (Dickey & Fuller, 1979). En
su versión más general, el test más popular corresponde al test de Dickey y Fuller aumentado
(ADF) que estima mediante mínimos cuadrados ordinarios la evaluación de la hipótesis nula
𝐻0 : 𝜌 = 1 contra la hipótesis alternativa 𝐻1 : 𝜌 < 1 donde 𝑗 es escogido de modo tal que ε sea ruido
blanco:

𝑧𝑡 = 𝛼 + 𝛿𝑡 + 𝜌𝑧𝑡−1 + ∑ ∅𝑖 ∆𝑧𝑡−𝑖 + 𝜀𝑡 (32)


𝑖=1

Un problema operacional importante que se encuentra en este test corresponde a la elección de


𝑗 (número de retardos incluidos) dado que el test puede ser no sólo sensible a esta selección,
sino también a la exclusión de retardos que no resulten ser significativos. Una variante del test
de ADF propuesta por Phillips y Perron (Phillips & Perron, 1988) es la de estimar donde se
excluyen los retardos de las primeras diferencias de la variable:

𝑧𝑡 = 𝛼 + 𝛿𝑡 + 𝑝𝑧𝑡−1 + 𝜀𝑡 (33)

En este caso, los residuos resultantes no serán necesariamente ruido blanco. Es importante
destacar que tanto los tests ADF como los de Phillips y Perron realizan inferencia tomando como
hipótesis nula la estacionariedad en diferencia de la serie. El test denominado KPSS toma en
cuenta que la varianza de la suma parcial de residuos de un modelo auxiliar como:

𝑧𝑡 = 𝛼 + 𝛿𝑡 + 𝜀𝑡 (34)

debiera ser baja en el caso que la serie en cuestión sea estacionaria en tendencia y alta en el
caso que la serie sea estacionaria en diferencia (Kwiatkowski et al.,1992).

Un problema es que impone el período de quiebre a un episodio en particular, por lo que puede
incurrir en sesgos previos a la estimación. Zivot y Andrews derivan tests similares a los de ADF,
pero ahora tratan al período de eventual quiebre en nivel o tendencia como una variable latente
(Zivot & Andrews, 1992).

A continuación, se presentan los resultados de los distintos tests para la serie temporal analizada:

- 43 -
Metodología y Análisis de los Datos

Tabla 3.12: Tests de Raíces Unitarias

Augmented Dickey-Fuller Test


p-value 0,05925 No rechazo H0, no estacionario.
KPSS con nivel
p-value 0,1 No rechazo H0, estacionario.
KPSS con tendencia
p-value 0,01027 Rechazo H0, no estacionario.
Phillips-Perron
p-value 0,3164 No rechazo H0, no estacionario.
Zivot-Andrews
Estadístico T -4,0181 Estadístico mayor que valores críticos (no rechazo H0), no estacionario.
Valores Críticos (0.05) -5,08
Fuente: Elaboración propia

Se puede concluir que la serie original no es estacionaria. En el próximo capítulo, se aplican las
trasformaciones necesarias para convertirla en estacionaria y así poder aplicar distintos modelos
de predicción.

- 44 -
Modelado y Análisis de Resultados

Capítulo 4

Modelado y Análisis de Resultados

4.1 Modelado a Nivel Ítem

En primera instancia, se busca encontrar un modelo de data mining que mejore la precisión del
modelo actual. De acuerdo con lo mencionado en el apartado 1.4, la precisión se calcula como:

𝑽𝒆𝒏𝒕𝒂𝒔 − 𝑫𝒊𝒇𝒆𝒓𝒆𝒏𝒄𝒊𝒂 𝑨𝒃𝒔𝒐𝒍𝒖𝒕𝒂 𝒆𝒏𝒕𝒓𝒆 𝑽𝒆𝒏𝒕𝒂𝒔 𝒚 𝑷𝒓𝒆𝒅𝒊𝒄𝒄𝒊𝒐𝒏𝒆𝒔


(35)
𝑽𝒆𝒏𝒕𝒂𝒔

Para poder comparar el modelo actual con los nuevos modelos, se separó la base completa en
una base de entrenamiento y una de testeo. La base de entramiento comprende desde enero de
2016 hasta septiembre 2019, y la base de testeo desde enero 2020 en adelante. Luego se
comparó la precisión sobre la base de testeo que tiene el modelo propuesto, frente a la precisión
que actualmente se posee con el modelo vigente (sistema experto), donde esta última representa
lo siguiente,
Tabla 4.1: Precisión (Modelo Actual)

Ventas 12.417.657
Sumatoria de las Diferencias absoluta entre
5.031.289
Ventas y Predicciones (por ítem - mes)
Precisión 59,48%
Fuente: Elaboración propia

4.1.1 Modelo Base (H2O)

Se definió como primer enfoque a emplear las librerías de AutoML por su simplicidad y poder de
síntesis que tienen para desarrollar y aplicar un modelo de data mining. El entorno de trabajó que
se utilizó corresponde a Google Colab. Este es un entorno gratuito de Jupyter Notebook que no
requiere configuración y que se ejecuta completamente en la nube y se dispone de Python como
lenguaje de programación. En el siguiente enlace se podrá acceder al repositorio para poder ver
el código. En primer lugar, se utilizó la librería Pycaret. Es importante mencionar que con dicha
librería no se tuvo una buena performance respecto a la utilización de memoria del entorno.
También se utilizó la librería TPOT, pero se hizo muy engorroso el preprocesamiento de la base

- 45 -
Modelado y Análisis de Resultados

para que pudiese funcionar. Finalmente, se optó por la librería H2O. Para la primera prueba, se
configuró un máximo de 5 modelos, 2 minutos como tiempo máximo de entrenamiento por
modelo, sin validación cruzada (K-Fold Cross Validation) y se lo entrenó con la base sin variables
externas (que posteriormente se van a adicionar). Luego de la ejecución, se obtuvieron los
siguientes resultados:

Tabla 4.2: Modelos Ganadores (Modelo Base)


Desvío Residual
Nombre del Modelo RMSE MSE MAE RMSLE
Medio
DRF_1_AutoML_7_20211211_20730 2.888.540 1.700 2.888.540 159 1,1
XGBoost_2_AutoML_7_20211211_20730 3.449.150 1.857 3.449.150 172 nan
GLM_1_AutoML_7_20211211_20730 3.901.920 1.975 3.901.920 321 nan
XGBoost_1_AutoML_7_20211211_20730 4.104.100 2.026 4.104.100 177 nan
GBM_1_AutoML_7_20211211_20730 4.382.890 2.094 4.382.890 196 nan
Fuente: Elaboración propia

El modelo ganador corresponde a un Distributed Random Forest (DRF). Para identificar el


modelo ganador, se usaron diversas métricas de evaluación para problemas de regresión. Las
mismas tienen la siguiente definición,

• Desvío Residual Medio: Si la distribución es gaussiana, entonces es igual a MSE, y


cuando no lo es, generalmente da una estimación más útil del error.

• RMSE (Root Mean Squared Error): Evalúa qué tan bien un modelo puede predecir un
valor continuo. Las unidades de medida son las mismas que la variable objetivo, lo que
es útil para comprender el tamaño del error. Cuanto más pequeño sea el RMSE, mejor
será el rendimiento del modelo. Dicha métrica es sensible a valores atípicos.

𝑁
1
𝑅𝑀𝑆𝐸 = √ ∑(𝑦𝑖 − 𝑦̂𝑖 )2 (36)
𝑁
𝑖=1

Donde 𝑦𝑖 es la variable objetivo, 𝑦̂𝑖 es la predicción y 𝑁 es el total de filas (observaciones)


de la base.

- 46 -
Modelado y Análisis de Resultados

• MSE (Mean Squared Error): Es la métrica que mide el promedio de los cuadrados de los
errores o desviaciones. Esta toma las distancias desde los puntos hasta la línea de
regresión (estas distancias son los errores) y las eleva al cuadrado para eliminar cualquier
signo negativo. Además, incorpora tanto la varianza, como el sesgo del predictor y es
sensible a valores atípicos. El MSE también da más peso a diferencias más grandes.
Cuanto mayor es el error, más se penaliza. Cuanto más pequeño sea el MSE, mejor será
el rendimiento del modelo.
𝑁
1
𝑀𝑆𝐸 = ∑(𝑦𝑖 − 𝑦̂𝑖 )2 (37)
𝑁
𝑖=1

• MAE (Mean Absolute Error): El error absoluto medio es un promedio de los errores
absolutos. Las unidades del MAE son las mismas que la variable objetivo, lo que es útil
para comprender si el tamaño del error es significativo. Cuanto menor sea el MAE, mejor
será el rendimiento del modelo. Además, es robusto frente a los valores atípicos.

𝑁
1
𝑀𝐴𝐸 = ∑|𝑥𝑖 − 𝑥| (38)
𝑁
𝑖=1

Donde |𝑥𝑖 − 𝑥| son los errores absolutos.

• RMSLE (Root Mean Squared Logarithmic Error): El RMSLE evalúa qué tan bien un
modelo puede predecir un valor continuo. Las unidades de la métrica son las mismas que
la variable objetivo. Cuanto más pequeño sea el RMSE, mejor será el rendimiento del
modelo. Es sensible a valores atípicos.

𝑁
1 𝑦𝑖 + 1 2
𝑅𝑀𝑆𝐿𝐸 = √ ∑(𝑙𝑛 ( )) (39)
𝑁 𝑦̂𝑖 + 1
𝑖=1

Una vez definido el modelo ganador, se calcula la precisión del modelo en la base de testeo,

- 47 -
Modelado y Análisis de Resultados

Tabla 4.3: Precisión (Modelo Base)

Ventas 12.417.657
Sumatoria de las Diferencias absoluta entre
5.457.237
Ventas y Predicciones (por ítem - mes)
Precisión 56,05%
Fuente: Elaboración propia

Como se observa en la tabla anterior, aún no se superó la precisión del modelo vigente (59,48%)
para la base de testeo. Una ventaja de los modelos formados por árboles de decisión (como el
DRF) es que luego de que se construyen los árboles, se puede recuperar la importancia de cada
atributo. Esta indica qué tan útil o valiosa fue cada variable en la construcción de los árboles de
decisión. Se calcula como la medida en que cada atributo mejor divide el conjunto de elementos,
ponderado por el número de observaciones o filas contenidas en el nodo. Existen varios criterios
para elegir la mejor forma de dividir el conjunto de datos. En general, estos miden la
homogeneidad de la variable objetivo dentro de los subconjuntos en los que se dividió el nodo.
Una medida a tener en consideración puede ser la pureza (índice de Gini) u otra función de error
más específica. Luego, la importancia de estos atributos se promedia para todos los árboles de
decisión dentro del modelo (Hastie, Tibshirani & Friedman, 2009). A continuación, se listan las
20 variables más importantes seleccionadas por el modelo ganador:

Tabla 4.4: Importancia de las Variables

Variable Importancia Relativa Importancia en Escala Porcentaje


Sales Units 30.024.150.000.000 1,000000 24,2%
Last 12 Months Sales Units 28.740.550.000.000 0,957248 23,2%
Last 3 Months Sales Units 16.546.690.000.000 0,551113 13,3%
7 ML Forecast Units 4ML Forward 12.426.690.000.000 0,413890 10,0%
4 ML Forecast Units 4ML Forward 8.946.678.000.000 0,297983 7,2%
Last 6 Months Sales Units 8.062.369.000.000 0,268529 6,5%
5 ML Forecast Units 4ML Forward 4.209.841.000.000 0,140215 3,4%
6 ML Forecast Units 4ML Forward 4.176.930.000.000 0,139119 3,4%
9 ML Forecast Units 4ML Forward 2.508.957.000.000 0,083565 2,0%
Total Units for 13 Weeks 1.946.103.000.000 0,064818 1,6%
8 ML Forecast Units 4ML Forward 1.417.988.000.000 0,047228 1,1%
DS + SP 481.288.500.000 0,016030 0,4%
Avg of 13 Weeks 386.995.700.000 0,012889 0,3%
Sales Units -4 292.705.700.000 0,009749 0,2%
Sales Units -7 284.947.200.000 0,009491 0,2%
Sales Units -6 262.544.800.000 0,008744 0,2%
Total Units for 05 Weeks 258.996.500.000 0,008626 0,2%

- 48 -
Modelado y Análisis de Resultados

Selling Sku Description OF 231.435.500.000 0,007708 0,2%


Avg of 05 Weeks 226.895.000.000 0,007557 0,2%
Abs 206.663.700.000 0,006883 0,2%
Fuente: Elaboración propia

Como se observa, tiene sentido que las ventas reales (Sales Units) y el promedio de ventas los
últimos tres y doce meses (Last 3 Months Sales Units y Last 12 Months Sales Units) , sean las
variables con más peso dentro del modelo.

SHAP proviene de “Shapley Additive exPlanation” y está basado en la Teoría de Juegos para
explicar cómo cada uno de los jugadores que intervienen en un juego colaborativo contribuyen
en el éxito de la partida (Lundberg & Lee, 2017). Con esto se puede comprender una predicción
y cómo impacta cada variable. De manera muy sencilla se puede imaginar a un grupo de
jugadores que trabajan en conjunto para llegar a un resultado y se desea saber cuánto contribuye
cada uno en su producción. Teniendo en cuenta lo comentado previamente, lo que se realizó es
intercalar a los participantes en diversos órdenes de aparición (ejemplo: ABCD, ABDC, ADBC,
etc.) y medir la contribución marginal de cada participante cada vez. Con ello sacar el promedio
de cada uno y se poseerán los valores Shapley que indican cuánto contribuye cada jugador a
conseguir el resultado obtenido.

Figura 4.1: Importancia de las Variables (SHAP)

- 49 -
Modelado y Análisis de Resultados

• El eje vertical indica el nombre de la variable.


• El valor SHAP en el eje horizontal muestra si el efecto de ese valor provocó una predicción
mayor o menor. Las contribuciones aumentan a medida que el valor se aleja del cero.
• El color muestra si esa característica fue alta o baja para esa fila del conjunto de datos.
• Cada punto del gráfico representa un registro del conjunto de datos original.

Por ejemplo, valores altos de la variable “4 ML Forecast Units 4ML Forward” contribuyen a valores
altos en la predicción de las ventas. Esto tiene sentido ya que dicha variable es la predicción
actual de las ventas para 4 meses en adelante.

4.1.2 Modelo Base con Mejoras

Se podría pensar que al aumentar el número de variables explicativas se mejora la capacidad


predictiva de los modelos. Lo cual podría ser cierto si los predictores fuesen de utilidad para
explicar la respuesta. Sin embargo, al aumentar el número de dimensiones se pueden agravar
notablemente muchos de los problemas que ya pueden aparecer en dimensiones menores, esto
es lo que se conoce como la maldición de la dimensionalidad (Bellman, 1961). De allí que se
resolvió trabajar con las 20 mejores variables definidas en el modelo anterior, además de la
variable objetivo, el ítem y el mes. Luego de la ejecución, se obtuvieron los siguientes resultados:

Tabla 4.5: Modelos Ganadores (Modelo Base con Mejoras)


Desvío
Nombre del Modelo RMSE MSE MAE RMSLE
Residual Medio
GLM_1_AutoML_9_20211211_22037 2.842.980 1.686 2.842.980 238 nan
DRF_1_AutoML_9_20211211_22037 2.895.380 1.702 2.895.380 160 1,4
XGBoost_2_AutoML_9_20211211_22037 2.922.030 1.709 2.922.030 168 nan
XGBoost_1_AutoML_9_20211211_22037 3.300.020 1.817 3.300.020 172 nan
GBM_1_AutoML_9_20211211_22037 3.464.790 1.861 3.464.790 191 nan
Fuente: Elaboración propia

El modelo ganador corresponde a un Generalized Linear Models (GLM). A continuación, se


calcula la precisión del modelo en la base de testeo:

- 50 -
Modelado y Análisis de Resultados

Tabla 4.6: Precisión (Modelo Base con Mejoras)

Ventas 12.417.657
Sumatoria de la Diferencia absoluta
8.158.960
entre Ventas y Predicciones
Precisión 34,30%
Fuente: Elaboración propia

No se observa una mejoría en la precisión respecto del modelo base (56,05%), por lo que para
el próximo modelo se resolvió trabajar con la totalidad de la base y la adición de las variables
externas.

4.1.3 Modelo con Variables Externas

En este caso se tomó la base completa con la incorporaron de variables externas (ver tabla 3.2).
Se estableció un máximo de 5 modelos, 2 minutos como tiempo máximo de entrenamiento por
modelo, sin validación cruzada (K-Fold Cross Validation). Luego de correr los modelos, se
consiguieron los siguientes resultados:

Tabla 4.7: Modelos Ganadores (Modelo con Variables Externas)


Desvío
Nombre del Modelo RMSE MSE MAE RMSLE
Residual Medio
DRF_1_AutoML_10_20211211_22522 2.385.960 1.545 2.385.960 159 1,2
XGBoost_2_AutoML_10_20211211_22522 2.786.780 1.669 2.786.780 165 nan
XGBoost_1_AutoML_10_20211211_22522 3.160.960 1.778 3.160.960 168 nan
GBM_1_AutoML_10_20211211_22522 4.023.060 2.006 4.023.060 194 nan
GLM_1_AutoML_10_20211211_22522 4.382.190 2.093 4.382.190 375 4,8
DRF_1_AutoML_10_20211211_22522 2.385.960 1.545 2.385.960 159 1,2
Fuente: Elaboración propia

El modelo ganador es un Distributed Random Forest (DRF). A continuación, se calcula la


precisión del modelo en la base de testeo:

Tabla 4.8: Precisión (Modelo con Variables Externas)

Ventas 12.417.657
Sumatoria de la Diferencia absoluta
4.842.903
entre Ventas y Predicciones
Precisión 56,25%
Fuente: Elaboración propia

- 51 -
Modelado y Análisis de Resultados

Dicha precisión es la más altas de todos los modelos probado, sin embargo supera al modelo
que actualmente está vigente en la empresa.

4.1.4 Resumen de Resultados a Nivel Ítem

Tabla 4.9: Resumen - Precisión de los Modelos

Modelo Actual 59,48%


Modelo Base 56,05%
Modelo Base con Mejoras 34,30%
Modelo con Variables Externas 56,25%
Fuente: Elaboración propia

4.2 Modelado a Nivel Agregado (Serie Temporal)

En el siguiente apartado se desarrolló el modelado a nivel agregado. Para ello se realizó la


sumatoria de la totalidad de las ventas por mes, constituyendo una serie de tiempo. Luego, se le
aplicaron diversos modelos usando tanto Python, como R. Para poder verificar la performance
del modelo, se dividió a la serie en entrenamiento y testeo, siendo el entrenamiento de enero de
2016 hasta junio de 2020 y el testeo de julio de 2020 a enero de 2021. En el siguiente gráfico se
observa dicha categorización:

Figura 4.2: Serie de Entrenamiento y Testeo


Ventas

Año

A continuación, se presenta la parte de testeo (en negro), junto con las predicciones del modelo
actual (en azul):

- 52 -
Modelado y Análisis de Resultados

Figura 4.3: Ventas (Test) y Predicción (Modelo Actual)

Ventas

Mes - Año

La precisión de dicho modelo para la base de testeo es la siguiente:

Tabla 4.10: Precisión (Modelo Actual)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.189.772
entre Ventas y Predicciones
Precisión 88,76%
Fuente: Elaboración propia

Por otra parte, y de acuerdo con lo expuesto en el apartado 3.5.2.3, algunos modelos estadísticos
requieren de la condición de estacionariedad de la serie para poder ser exitosos. La serie en
cuestión no cumple con dicho supuesto. Por esta razón, se realizaron una serie de
transformaciones para llevarla a su forma estacionaria. Como se mencionó anteriormente, la
serie presenta una estacionalidad mensual. Para desestacionalizarla, se le resta el retardo
número 12 a cada período. Siendo la serie y los gráficos de FAC y FACP los siguientes:

Figura 4.4: Serie Desestacionalizada

Año
- 53 -
Modelado y Análisis de Resultados

Figura 4.5: Función de Autocorrelación (FAC) Figura 4.6: Función de Autocorrelación Parcial (FACP)

Retardo Retardo

A continuación, se efectúan los test de raíces unitarias para la serie en cuestión:

Tabla 4.11: Tests de Raíces Unitarias

Augmented Dickey-Fuller Test


p-value 0,3442 No rechazo H0, no estacionario.
KPSS con nivel
p-value 0,01 Rechazo H0, no estacionario.
KPSS con tendencia
p-value 0,1 No rechazo H0, estacionario.
Phillips-Perron
p-value 0,4241 No rechazo H0, no estacionario.
Zivot-Andrews
Estadístico T -3,3412 Estadístico mayor que valores críticos (no rechazo H0), no estacionario.
Valores Críticos (0.05) -5,08
Fuente: Elaboración propia

Aún no existe estacionariedad. Por lo que se procede a realizar la primera diferencia de la serie
anterior. Siendo la serie y los gráficos de FAC y FACP los siguientes:

Figura 4.7: Serie Diferenciada

Año
- 54 -
Modelado y Análisis de Resultados

Figura 4.8: Función de Autocorrelación (FAC) Figura 4.9: Función de Autocorrelación Parcial (FACP)

Retardo Retardo

A continuación, se efectúan los test de raíces unitarias para la serie en cuestión:

Tabla 4.12: Tests de Raíces Unitarias

Augmented Dickey-Fuller Test


p-value 0,04395 Rechazo H0, estacionario.
KPSS con nivel
p-value 0,1 No rechazo H0, estacionario.
KPSS con tendencia
p-value 0,1 No rechazo H0, estacionario.
Phillips-Perron
p-value 0,01 Rechazo H0, estacionario.
Zivot-Andrews
Estadístico T -8,4761 Estadístico menor que valores críticos (rechazo H0), estacionario.
Valores Críticos (0.05) -5,08
Fuente: Elaboración propia

De los gráficos y los tests se desprende que la serie transformada es finalmente estacionaria.

4.2.1 Modelo con Variables Externas

Como primer modelo, se tomaron las predicciones del mejor modelo a nivel ítem (Modelo con
Variables Externas) pero agregadas a nivel mensual. Luego se calcula la precisión del modelo:

- 55 -
Modelado y Análisis de Resultados

Tabla 4.13: Precisión (Modelo con Variables Externas)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
2.233.700
entre Ventas y Predicciones
Precisión 78,89%
Fuente: Elaboración propia

4.2.2 Prophet

Se calculan las predicciones usando la librería Prophet en Python. En negro se puede observar
el conjunto de entrenamiento, en rojo el de testeo y la línea azul indica las predicciones con dicho
modelo con el intervalo de confianza sombreado.

Figura 4.10: Ventas y Predicción


Ventas

Año

Se calcula la precisión del modelo:

Tabla 4.14: Precisión (Modelo Prophet)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.772.061
entre Ventas y Predicciones
Precisión 83,25%
Fuente: Elaboración propia

4.2.3 Neural Prophet

Se utiliza la librería Neural Prophet en Python. Como fue explicado anteriormente, esta librería
se basa en la librería Prophet y le incorpora un modelo de redes neuronales. En la siguiente
figura se puede ver en rojo el conjunto de testeo y en línea azul la predicción del modelo.

- 56 -
Modelado y Análisis de Resultados

Ventas Figura 4.11: Ventas y Predicción Actual para Testeo

Mes - Año
Se calcula la precisión del modelo:

Tabla 4.15: Precisión (Modelo Neural Prophet)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.463.515
entre Ventas y Predicciones
Precisión 86,17%
Fuente: Elaboración propia

4.2.4 Suavizado Exponencial

En el siguiente paso se aplica el modelo de Suavizado Exponencial de Holt-Winters en Python.


Siendo los resultados los siguientes:

Figura 4.12: Ventas y Predicción Figura 4.13: Ventas (Test) y Predicción


Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:

- 57 -
Modelado y Análisis de Resultados

Tabla 4.16: Precisión (Modelo Suavizado Exponencial)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
651.608
entre Ventas y Predicciones
Precisión 93,84%
Fuente: Elaboración propia

4.2.5 Modelo ARIMA (Librería Darts)

Se aplica el modelo estadístico ARIMA de la librería Darts en Python:

Figura 4.14: Ventas y Predicción Figura 4.15: Ventas (Test) y Predicción

Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:

Tabla 4.17: Precisión (Modelo ARIMA - Darts)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
920.976
entre Ventas y Predicciones
Precisión 91,30%
Fuente: Elaboración propia

4.2.6 Modelo ARIMA (Librería Forecast)

Se aplica el modelo estadístico ARIMA de la librería Forecast en R a la serie estacionaria:

- 58 -
Modelado y Análisis de Resultados

Figura 4.16: Ventas y Predicción Figura 4.17: Ventas (Test) y Predicción

Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:

Tabla 4.18: Precisión (Modelo ARIMA - Forecast)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.353.268
entre Ventas y Predicciones
Precisión 87,21%
Fuente: Elaboración propia

4.2.7 Modelo SARIMA

Se utilizó el modelo SARIMA en R, el cual incorpora componentes estacionales al modelo


ARIMA, donde en los siguientes gráficos se exhiben las predicciones,

Figura 4.18: Ventas y Predicción Figura 4.19: Ventas (Test) y Predicción


Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:

- 59 -
Modelado y Análisis de Resultados

Tabla 4.19: Precisión (Modelo SARIMA)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.569.027
entre Ventas y Predicciones
Precisión 85,17%
Fuente: Elaboración propia

4.2.8 Modelo GARCH

Asimismo, se trabajó con un modelo GARCH en R. A continuación, se presentan los gráficos,

Figura 4.20: Ventas y Predicción Figura 4.21: Ventas (Test) y Predicción


Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:

Tabla 4.20: Precisión (Modelo GARCH)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.885.075
entre Ventas y Predicciones
Precisión 82,19%
Fuente: Elaboración propia

4.2.9 Redes Neuronales LSTM (Librería Darts)

Se pasa a un modelo de Redes Neuronales LSTM de la librería Darts en Python.

- 60 -
Modelado y Análisis de Resultados

Figura 4.22: Ventas y Predicción Figura 4.23: Ventas (Test) y Predicción

Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:


Tabla 4.21: Precisión (Modelo LSTM - Darts)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
974.857
entre Ventas y Predicciones
Precisión 90,79%
Fuente: Elaboración propia

4.2.10 Redes Neuronales LSTM (Librería Keras)

Se repite el modelo anterior, pero en este caso mediante la utilización de la librería Keras en R:
Figura 4.24: Ventas y Predicción Figura 4.25: Ventas (Test) y Predicción
Ventas
Ventas

Mes - Año
Año

Se calcula la precisión del modelo:

- 61 -
Modelado y Análisis de Resultados

Tabla 4.22: Precisión (Modelo LSTM - Keras)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.532.828
entre Ventas y Predicciones
Precisión 85,51%
Fuente: Elaboración propia

4.2.11 Redes Neuronales NNAR

En este caso se utilizaron Redes Neuronales Autorregresivas en R:

Figura 4.26: Ventas y Predicción Figura 4.27: Ventas (Test) y Predicción


Ventas

Ventas

Año Mes - Año

Se calcula la precisión del modelo:

Tabla 4.23: Precisión (Modelo NNAR)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
2.869.977
entre Ventas y Predicciones
Precisión 72,88%
Fuente: Elaboración propia

4.2.12 Bayes Ingenuo

A posteriori, se aplicó el modelo de Bayes Ingenuo:

- 62 -
Modelado y Análisis de Resultados

Figura 4.28: Ventas y Predicción Figura 4.29: Ventas (Test) y Predicción


Ventas

Ventas
Año Mes - Año

Se calcula la precisión del modelo:

Tabla 4.24: Precisión (Modelo Bayes Ingenuo)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.308.143
entre Ventas y Predicciones
Precisión 87,64%

4.2.13 Transformadas Rápidas de Fourier

Finalmente se usó un modelo de Transformadas Rápidas de Fourier:

Figura 4.30: Ventas y Predicción Figura 4.31: Ventas (Test) y Predicción


Ventas
Ventas

Año Mes - Año

Se calcula la precisión del modelo:

- 63 -
Modelado y Análisis de Resultados

Tabla 4.25: Precisión (Modelo Transformadas Rápidas de Fourier)

Ventas 10.581.822
Sumatoria de la Diferencia absoluta
1.498.233
entre Ventas y Predicciones
Precisión 85,84%
Fuente: Elaboración propia

4.2.14 Resumen de Resultados a Nivel Agregado (Serie Temporal)

Tabla 4.26: Resumen - Precisión de los Modelos

Redes Neuronales NNAR 72,88%


Modelo con Variables Externas 78,89%
GARCH 82,19%
Prophet 83,25%
SARIMA 85,17%
Redes Neuronales LSTM (Librería Keras) 85,51%
Transformadas Rápidas de Fourier 85,84%
Neural Prophet 86,17%
ARIMA (Librería Forecast) 87,21%
Bayes Ingenuo 87,64%
Modelo Actual 88,76%
Redes Neuronales LSTM (Librería Darts) 90,79%
ARIMA (Librería Darts) 91,30%
Suavizado Exponencial 93,84%
Fuente: Elaboración propia

A partir de los resultados obtenidos, en el próximo capítulo veremos las conclusiones y las futuras
líneas de trabajo e investigación a desarrollar en el futuro.

- 64 -
Conclusiones y Trabajos Futuros

Capítulo 5

Conclusiones y Trabajos Futuros

5.1 Conclusiones:

Teniendo en cuenta el objetivo de este trabajo (apartado 1.4), no se superó la precisión del
modelo vigente a nivel ítem mediante el uso de AutoML. La precisión del mejor modelo estuvo
aproximadamente tres puntos porcentuales por debajo. Para el caso del modelo a nivel agregado
se consiguió superar la precisión actual, obteniéndose el mejor resultado con un modelo de
suavizado exponencial. En el caso de los datos a nivel ítem, la precisión del modelo actual para
la base de testeo fue de 59,48%, mientras que el mejor modelo de AutoML propuesto tuvo
56,25%. En el caso de los datos agregados, el modelo actual tuvo una precisión de 88,76% y el
modelo de suavizado exponencial, 96,81%.

Se experimentaron con diversas librerías de AutoML (TPOT, Pycaret, H2O), y se obtuvo el mejor
resultado con la librería H2O, la cual contempla diversos algoritmos de data mining conocidos,
como ser: Generalized Linear Models (GLM), Distributed Random Forest (DRF), Gradient
Boosting Machine (GBM) y XGBoost. En el caso del análisis a nivel agregado, se emplearon
modelos estadísticos clásicos: ARIMA, SARIMA, GARCH, Bayes ingenuo, transformadas rápidas
de Fourier y suavizado exponencial; y modelos de data mining: Facebook Prophet, Neural
Prophet, Redes Neuronales NNAR y Redes Neuronales LSTM. Los modelos que superaron el
modelo actual a nivel agregado fueron las Redes Neuronales LSTM, el modelo ARIMA y el
modelo de suavizado exponencial (todos de la librería Darts).

Otro aspecto analizado fue la inclusión de variables internas mediante la ingeniería de atributos
y variables externas de índole macroeconómicas (inflación, desempleo, PBI, tasa de interés,
ingresos y expectativas del mercado), como propias del negocio (precio de la acción bursátil,
ventas minoristas y popularidad de la búsqueda en Google de la empresa y sus competidores).
Para el caso del modelo de AutoML a nivel ítem, se comprobó que la precisión de los modelos
mejora con la incorporación de variables externas relevantes para el modelo y el negocio, pero
tampoco de manera significativa.

- 65 -
Conclusiones y Trabajos Futuros

5.2 Trabajos Futuros:

Dado que no se alcanzó a superar la precisión del modelo actual a nivel ítem, se podría analizar
la incorporación de nuevas variables a la base de entrenamiento, ya sean variables internas,
externas o variables creadas. Otro de los aspectos a estudiar para poder mejorar la precisión, es
la aplicación de una validación mediante ventanas de tiempo. Podrían ser ventanas de tiempo
con amplitud constante (respetando el orden temporal) o bien que se expandan progresivamente
con cada nuevo período de tiempo incorporado.

De acuerdo con lo expuesto en el apartado 3.3, por una cuestión de practicidad y poder de
cómputo, se trabajó con un extracto de la totalidad de los datos de la empresa. Como siguiente
paso podría probarse el entrenamiento y performance del modelo ganador mediante la utilización
de todos los datos. Para mejorar el tiempo de procesamiento podría plantearse un modelo de
procesamiento distribuido (con librerías como Dask o Spark).

En el caso de los datos a nivel agregado, se analizó únicamente la serie temporal de las ventas.
Podrían incorporarse los datos de otras series temporales mediante un modelo de vectores
autorregresivos (VAR). La aplicación del modelo VAR a series temporales permite la predicción
conjunta de varias series que pueden estar relacionadas entre sí y reflejar posibles relaciones de
interdependencia o causalidad.

También podría haberse analizado un modelo con cambio de regímenes (Regime Switching
Models), que implican múltiples estructuras que pueden describir el comportamiento de series de
tiempo en diferentes regímenes. Al permitir el cambio entre estas estructuras, son capaces de
capturar patrones dinámicos más complejos. Esto puede ser útil para poder incorporar cambios
en la serie de tiempo ante eventos excepcionales, como por ejemplo la pandemia de COVID-19.
Por último, también podrían incorporarse mayor cantidad de variables internas o externas (por
ejemplo: redes sociales) a los datos y comprobar si dicha adición mejora la precisión del modelo.

- 66 -
Referencias Bibliográficas

Referencias Bibliográficas

Aburto, Luis & Weber, Richard. (2007). Improved supply chain management based on hybrid
demand forecasts. Applied Soft Computing. 7. 136-144. 10.1016/j.asoc.2005.06.001.
Agrawal, A., Khavin, M., & Slonim, J. (13 de Marzo de 2020). McKinsey & Company. Obtenido
de Bringing a real-world edge to forecasting: https://www.mckinsey.com/business-
functions/strategy-and-corporate-finance/our-insights/bringing-a-real-world-edge-to-
forecasting
Bellman, Richard Ernest (1961). Adaptive control processes: a guided tour. Princeton University
Press. ISBN 9780691079011.
Berttram, P., Schneider, J., & Münch, M. (15 de Enero de 2018). Strategy+business. Obtenido de
https://www.strategy-business.com/article/The-Magic-of-Predicting-Demand-from-Data
Bollerslev, Tim, 1986. "Generalized autoregressive conditional heteroskedasticity," Journal of
Econometrics, Elsevier, vol. 31(3), pages 307-327, April.
Boone, Tonya & Ganeshan, Ram & Jain, Aditya & Sanders, Nada R., 2019. "Forecasting sales in
the supply chain: Consumer analytics in the big data era," International Journal of
Forecasting, Elsevier, vol. 35(1), pages 170-180.
<https://ideas.repec.org/a/eee/intfor/v35y2019i1p170-180.html>
Botero, Juan Carlos. Dinámica de estructuras. Sistemas de un grado de libertad. Medellín:
Universidad EAFIT, 2011. 244p. ISBN 978-958-720-085-0
Box, G. E. P., & Jenkins, G. M. (1973). Some comments on a paper by Chatfield and Prothero
and on a review by Kendall. Journal of the Royal Statistical Society. Series A (General),
136(3), 337-352.
Carbonneau, Réal & Laframboise, Kevin & Vahidov, Rustam. (2008). Application of machine
learning techniques for supply chain demand forecasting. European Journal of
Operational Research. 184. 1140-1154. 10.1016/j.ejor.2006.12.004.
Chapman, P.; Clinton, J.; Kerber, R.; Khabaza, T.; Reinartz, T.; Shearer, C. & Wirth, R. (2000).
CRISPDM 1.0 step-by-step data mining guide. Technical report, CRISP-DM
Chatfield, C. (2016). The Analysis of Time Series. CRC Press.
Chen, T., & Guestrin, C. (2016, August). Xgboost: A scalable tree boosting system. In
Proceedings of the 22nd acm sigkdd international conference on knowledge discovery
and data mining (pp. 785-794).

- 67 -
Referencias Bibliográficas

Cooley, J., & Tukey, J. (1965). An algorithm for the machine calculation of complex Fourier series.
Mathematics of Computation, 19, 297-301.
Dickey, D. y W. Fuller (1979). “Distribution of the Estimators for Autoregressive Time Series with
a Unit Root,” Journal of the American Statistical Association 74, 427-31.
Diwvedi, V., Vall-llosera, G., van Bunningen, T., & Wosa, G. (13 de October de 2020). Ericsson.
Obtenido de https://www.ericsson.com/en/blog/2020/10/democratizing-ai
Engle, R. (1982). Autoregressive Conditional Heteroscedasticity with Estimates of the Variance
of United Kingdom Inflation. Econometrica, 50(4), 987-1007. doi:10.2307/1912773
Föbus, N., Lange, T., Leopoldseder, M., & Kar-Hendrik, M. (23 de Agosto de 2019). McKinsey &
Company. Obtenido de The invisible hand: On the path to autonomous planning in food
retail: https://www.mckinsey.com/industries/retail/our-insights/the-invisible-hand-on-the-
path-to-autonomous-planning-in-food-retail
Gujarati, D. N. (2004). Econometria. México DF: McGraw-Hill Interamericana
Hastie, T., Tibshirani, R., & Friedman, J. (2009). The elements of statistical learning: data mining,
inference, and prediction. Springer Science & Business Media.
Hochreiter, Sepp, and Jürgen Schmidhuber. 1997. “Long Short-Term Memory.” Neural
Computation 9 (8). MIT Press: 1735–80.
Hyndman , R., Makridakis , S., & Wheelwright, S. (1997). Forecasting: Methods and Applications.
Wiley.
Hyndman, R.J., & Athanasopoulos, G. (2018) Forecasting: principles and practice, 2nd edition,
OTexts: Melbourne, Australia. OTexts.com/fpp2
Kilimci, Zeynep & Akyuz, A. & Uysal, Mitat & Akyokus, Selim & Uysal, Merve & Bulbul, Berna &
Ekmis, Mehmet. (2019). An Improved Demand Forecasting Model Using Deep Learning
Approach and Proposed Decision Integration Strategy for Supply Chain. Complexity.
2019. 1-15. 10.1155/2019/9067367.
Kotillová, Alexandra. (2021). Very short-term load forecasting using exponential smoothing and
ARIMA models. 9.
Kwiatkowski, D., P. Phillips, P. Schmidt, and Y. Shin (1992). “Testing the Null Hypothesis of
Stationarity Against the Alternative of a Unit Root: How Sure are We that Economic Time
Series have a Unit Root?,” Journal of Econometrics 54, 159-78.
LeDell, E., & Poirier, S. (2020, July). H2o automl: Scalable automatic machine learning. In
Proceedings of the AutoML Workshop at ICML (Vol. 2020).
Lundberg, S., & Lee, S. I. (2017). A unified approach to interpreting model predictions. arXiv
preprint arXiv:1705.07874.

- 68 -
Referencias Bibliográficas

Lutkevich, B. (Octubre de 2020). Tech Target. Auto machine learning (AutoML). Obtenido de
https://searchenterpriseai.techtarget.com/definition/automated-machine-learning-AutoML
Makridakis S, Spiliotis E, Assimakopoulos V (2018) Statistical and Machine Learning forecasting
methods: Concerns and ways forward. PLoS ONE 13(3): e0194889. https://doi.org/
10.1371/journal.pone.0194889
Mañas Mañas, Andrés. (2019). Notas sobre pronóstico del flujo de tráfico en la ciudad de
Madrid Master Thesis, Universidad Nacional de Educación a Distancia (España). Escuela
Técnica Superior de Ingeniería Informática. Departamento de Inteligencia Artificial
McCann, D. (Agosto de 2014). CFO Magazine. Obtenido de Forecasting Error Cost Walgreen’s
CFO His Job: https://www.cfo.com/people/2014/08/forecasting-error-cost-walgreens-cfo-
job/
McCulloch, W.S., Pitts, W. A logical calculus of the ideas immanent in nervous activity. Bulletin of
Mathematical Biophysics 5, 115–133 (1943). https://doi.org/10.1007/BF02478259
Mora, Luis Alberto - Gutiérrez. 2009. Pronósticos de Demanda e Inventarios. Envigado,
Colombia: Editorial AMG, 2009. 978-958-44-0233-2.
Morales, C. A., Urrego, J., Perdomo, J. A., & Rosales, R. (2013). Fundamentos de Econometria
Intermedia. Bogotá: Ediciones Uniandes.
Pandey, P. (14 de Otubre de 2019). Towards Data Science. Obtenido de
https://towardsdatascience.com/a-deep-dive-into-h2os-automl-4b1fe51d3f3e
Peña, D. (2010). Análisis de Series Temporales. Alianza Editorial.
Phillips, P. y P. Perron (1988). “Testing for a Unit Root in Time Series Regression,” Biometrika
75, 335-46.
Benítez, R.; Garcete, A.; Pinto-Roa, D.; Vázquez, A. Técnica De Pronóstico De La Demanda
Basada En Business Intelligence Y Machine Leaming. In: Simposio Argentino Sobre
Tecnología Y Sociedad, 2017, P. 193-202.
Taylor SJ, Letham B. 2017. Forecasting at scale. PeerJ Preprints 5:e3190v2
https://doi.org/10.7287/peerj.preprints.3190v2
Triebe, Oskar & Laptev, Nikolay & Rajagopal, Ram. (2019). AR-Net: A simple Auto-Regressive
Neural Network for time-series.
Sankur, A., & Wijpkema, J. (18 de Abril de 2017). McKinsey & Company. Obtenido de Supply
chain analytics: Harness uncertainty with smarter bets:
https://www.mckinsey.com/business-functions/operations/our-insights/supply-chain-
analytics-harness-uncertainty-with-smarter-bets

- 69 -
Referencias Bibliográficas

Sarhani, Malek & El Afia, Abdellatif. (2014). Intelligent system based support vector regression
for supply chain demand forecasting. 2014 2nd World Conference on Complex Systems,
WCCS 2014. 10.1109/ICoCS.2014.7060941.
Stetsenko, P. (2016). Machine Learning with Python and H2O.
Werbos, P.J. 1975. Beyond Regression: New Tools for Prediction and Analysis in the Behavioral
Sciences. Harvard University. https://books.google.es/books?id=z81XmgEACAAJ.
Worthen, B. (Julio de 2003). CIO Magazine. Obtenido de Beware the Promises of Demand
Forecasting Systems.
Zivot, E. y D. Andrews (1992). “Further Evidence on the Great Crash, the OilPrice Shock, and the
Unit Root Hypothesis,” Journal of Business and Economic Statistics 10, 251-70.

- 70 -
Apéndices

Apéndices
Apéndice 1: Descripción de los campos

Campos Descripción Campos Descripción


4 ML Forecast Units Predicción de ventas para 4 meses Mrp Saftey Stock
% de stock de seguridad
4ML Forward en adelante, hecha hace 4 meses Percent
5 ML Forecast Units Predicción de ventas para 4 meses
Operating Unit OF Unidad de negocio que la opera
4ML Forward en adelante, hecha hace 5 meses
6 ML Forecast Units Predicción de ventas para 4 meses
Pallet Size Tamaño del pallet
4ML Forward en adelante, hecha hace 6 meses
7 ML Forecast Units Predicción de ventas para 4 meses Planner Code
Descripción del planificador
4ML Forward en adelante, hecha hace 7 meses Description OF
8 ML Forecast Units Predicción de ventas para 4 meses
Planner Code OF Planificador
4ML Forward en adelante, hecha hace 8 meses
9 ML Forecast Units Predicción de ventas para 4 meses
Planner Name OF Planificador
4ML Forward en adelante, hecha hace 9 meses
Promedio de ventas de las últimas 5
Avg of 05 Weeks Planning Category OF Categoría de Planificación
semanas
Promedio de ventas de las últimas Planning Time Fence Ventana de días para la
Avg of 13 Weeks
13 semanas Days planificación
Position in the Supply Posición en la cadena de
Business OF Línea de Negocio
chain suministro
La cantidad de unidades de Post Processing Lead Tiempo de espera de post-
Case Quantity
producto por caja cerrada Time procesamiento
Preprocessing Lead Tiempo de espera de pre-
Category Código Categoría del negocio
Time procesamiento
Tiempo de espera de
Country País Processing Lead Time
procesamiento
Product Brand Desc Descripción de la categoría del
Country Of Origin De qué país viene el ítem
OF producto
Código de configuración del
Created By OF Persona que do de alta el ítem Product Config Code
producto
Product Config Desc Descripción de la configuración
Currency Code Moneda
OF del producto
Default Buyer OF Comprador Product Group OF Grupo de Producto
Cantidad de días que se quiere
Fixed Days Supply Product Line Code Línea de Producto
cubrir con la orden de producción
Lead time de productos producidos
Fixed Lead Time Product Line Desc OF Descripción Línea de Producto
por un tercero
Tamaño de cada lote de producción
Fixed Lot Multiplier Product Type Code Tipo de producto
para redondear las ordenes
Product Type Desc
Formulation OF Fórmula de producto Descripción Tipo de producto
OF
Costo Estándar en la moneda local Purchasing Category
Frozen/Landed Cost Categoría de compra
del país OF
Full Lead Time Tiempo de espera total Region Región geográfica
Inventory Category Safety Stock Bucket Cantidad de días del stock de
Categoría de inventario
OF Days seguridad
Item Category Key Categoría de Item Safety Stock Method Tipo de stock de seguridad
Item Description OF Descripción Sales Units Cantidad de unidades vendidas
Sales Units 4ML Target. Son las ventas para 4
Item OF Item
Forward meses adelante
Item Status Estado del ítem Segment OF Segmento
Item Tax Category
Categoría impositiva del ítem Selling Item OF Código de venta
OF
Selling Sku
Item Type Tipo de ítem Descripción de código de venta
Description OF

- 71 -
Apéndices

Last 12 Months
Últimos 12 meses de ventas Shelf Life Days Días de vida útil
Sales Units
Last 3 Months Sales
Últimos 3 meses de ventas Shipping Method OF Tipo de flete
Units
Last 6 Months Sales
Últimos 6 meses de ventas Source Org Organización de origen
Units
Source Org Vendor
Last Updated By OF Usuario de la última actualización Proveedor
OF
Line OF Línea de Producto Sourcing Rule OF Tipo de reabastecimiento
Cantidad de días a retirar antes de
Lot Expiry Offset Standard Cost Costo Estándar
que venza un producto
Indica si se fabrica internamente o
Make Buy Standard Supplier OF Nombre del Proveedor
se compra a un tercero
Max Inv Coverage Cantidad máxima de días de
Supplied orgs Organizaciones suministradas
Days cobertura de inventario
Total Units for 05 Unidades vendidas las últimas 5
Maximum Order Qty Máxima cantidad para ordenar
Weeks semanas
Min Inv Coverage Cantidad mínima de días de Total Units for 13 Unidades vendidas las últimas 13
Days cobertura de inventario Weeks semanas
Min Order Qty Mínima cantidad para ordenar Transfer Price Precio de transferencia
Cantidad de días en tránsito del
Month - Year Fecha Transit Time
ítem
Mrp Planning Code Código de planificación Unit Cost Costo unitario del ítem
Mrp Planning Desc Descripción del tipo de planificación Unit Volume Points Puntos de Volumen
Mrp Planning
Tipo de planificación Unit Weight Peso del ítem
Method
Fuente: Elaboración propia

- 72 -
Apéndices

Apéndice 2: Correlación de las variables numéricas con la variable


objetivo

- 73 -

También podría gustarte