Blog de Amazon Web Services (AWS)

Midiendo la precisión de modelos de forecast para optimizar sus objetivos de negocio con Amazon Forecast

Por Namita Das y Danielle Robinson

 

Nos complace anunciar que ahora se puede medir la precisión de su modelo de forecast para optimizar los trade-offs entre los costos de under-forecasting y over-forecasting, lo que brinda flexibilidad en la experimentación. Los costos asociados al under-forecasting y al over-forecasting difieren. Por lo general, el over-forecasting conduce a altos costos de carga de inventario y desperdicios, mientras que el under-forecasting conduce a agotamiento de existencias, demanda no satisfecha y oportunidades de ingresos perdidas. Amazon Forecast permite optimizar estos costos para su objetivo de negocio, proporcionando un forecast promedio así como una distribución de forecasts que captura la variabilidad de demanda desde un valor mínimo a un valor máximo. Con este lanzamiento, Forecast ahora proporciona métricas de precisión para múltiples puntos de distribución al entrenar un modelo, lo que le permite optimizar rápidamente para under-forecasting y para over-forecasting sin necesidad de calcular métricas manualmente.

Los retailers confían en el forecast probabilístico para optimizar su cadena de suministro a fin de equilibrar el costo de under-forecasting, que los lleva a agotar existencias, con el costo de over-forecasting, que lleva a costos de transporte de inventario y desperdicios. Dependiendo de la categoría de producto, los retailers pueden elegir generar pronósticos sobre diferentes puntos de distribución. Por ejemplo, los minoristas de comestibles optan por abastecerse de alimentos básicos como leche y huevos para satisfacer la demanda variable. Si bien estos alimentos básicos tienen costos de transporte relativamente bajos, el agotamiento de existencias no solo puede conducir a una venta perdida, sino también a un completo abandono del carro. Al mantener altas tasas en stock, los minoristas pueden mejorar la satisfacción y la lealtad del cliente. Por el contrario, los minoristas pueden optar por subexistencias de productos sustituibles con altos costos de transporte cuando el costo de las rebajas y de la eliminación de inventarios supera la venta perdida ocasional. La capacidad de pronosticar en diferentes puntos de distribución permite a los minoristas optimizar estas prioridades en disputa cuando la demanda es variable.

Anaplan Inc., una plataforma nativa en la nube para orquestar el desempeño de negocio, ha integrado Forecast en su solución PlanIQ para llevar pronósticos predictivos y planificación ágil de escenarios a clientes empresariales. Evgy Kontorovich, director de Product Management, dice: “Cada cliente con el que trabajamos tiene un modelo operativo y de cadena de suministro único que impulsa diferentes prioridades de negocio. Algunos clientes pretenden reducir el exceso de inventario haciendo previsiones más prudentes, mientras que otros se esfuerzan por mejorar las tasas de disponibilidad en stock para satisfacer de manera coherente la demanda de los clientes. Con los cuantiles de forecast, los planificadores pueden evaluar la exactitud de estos modelos, evaluar la calidad del modelo y ajustarlos en función de sus objetivos de negocio. La capacidad de evaluar la precisión de modelos de forecast a múltiples niveles de cuantiles personalizados permite a nuestros clientes tomar decisiones altamente informadas y optimizadas para su negocio”.

Aunque Forecast ya proveia la capacidad de pronosticar en toda la distribución de variabilidad para gestionar los trade-offs de subexistencias y sobreexistencias, las métricas de precisión solo se proporcionaban para la demanda mínima, mediana y máxima prevista, proporcionando una banda de confianza del 80% centrada en la mediana. Para evaluar la métrica de precisión en un punto de distribución determinado de interés, primero se debía crear un forecast en ese punto, y luego calcular manualmente las métricas de precisión por su cuenta.

Con este lanzamiento, usted puede evaluar las fortalezas de sus modelos de forecasting en cualquier punto de distribución dentro de Forecast, sin necesidad de generar pronósticos y calcular métricas manualmente. Esta capacidad le permite experimentar de forma más rápida, y llegar a un punto de distribución para las necesidades de su negocio de forma más costo-eficiente.

Para utilizar esta nueva capacidad, seleccione los tipos de pronósticos (o puntos de distribución) de interés al crear el predictor. Forecast divide los datos de entrada en conjuntos de datos de entrenamiento y test, entrena y prueba el modelo creado y genera métricas de precisión para estos puntos de distribución. Usted puede seguir experimentando para optimizar aún más los tipos de previsión sin necesidad de crear pronósticos en cada paso.

 

Entendiendo las métricas de precisión de Forecast

Forecast proporciona diferentes métricas de precisión de modelos para que pueda evaluar la solidez de sus modelos de forecasting. Proporcionamos la métrica de weighted quantile loss (wQL) para cada punto de distribución seleccionado, así como weighted absolute percentage error (WAPE) y root mean square error (RMSE), calculados sobre la media del pronóstico. Para cada métrica, un valor inferior indica un error menor y, por lo tanto, un modelo más preciso. Todas estas métricas de precisión son no-negativas.

Tomemos un ejemplo de un dataset de minorista como se muestra en la siguiente tabla para entender estas diferentes métricas de precisión. En este dataset, se están pronosticando tres elementos para 2 días.

Item ID Observaciones Fecha Demanda real Pronóstico medio Pronóstico P75

Error P75

(Pronóstico P75 – Real)

Error absoluto medio

|Real – Pronóstico medio|

Error cuadrático medio

(Real – Pronóstico Medio)2

Item1 Item 1 es un ítem popular con mucha demanda de productos Día 1 200 195 220 20 5 25
Día 2 100 85 90 -10 15 225
Item2 Con una baja demanda de productos, Item 2 está en la cola larga de la demanda Día 1 1 2 3 2 1 1
Día 2 2 3 5 3 1 1
Item3 El ítem 3 está en la cola larga de la demanda y observa un pronóstico con una gran desviación de la demanda real Día 1 5 45 50 45 40 1600
Día 2 5 35 40 35 30 900
Demanda total = 313 Usado en wQL [0.75] Utilizado en WAPE Utilizado en RMSE

En la siguiente tabla se resumen las métricas de precisión calculadas para el caso de uso del dataset comercial.

Métrica Valor
wQL [0.75] 0.21565
WAPE 0.29393
RMSE 21.4165

En las siguientes secciones, explicamos cómo se calculó cada métrica y entregamos recomendaciones para el mejor caso de uso para cada métrica.

 

Weighted quantile loss (wQL)

La métrica wQL mide la precisión de un modelo sobre puntos de distribución específicos denominados cuantiles. Esta métrica ayuda a capturar el sesgo inherente a cada cuantil. Para un minorista de comestibles que prefiere sobreexistencias de alimentos básicos como la leche, elegir un cuantil mayor como 0.75 (P75) captura mejor los peaks de demanda y, por lo tanto, es más informativo que el pronóstico sobre el cuantil mediano de 0.5 (P50).

En este ejemplo, se hace más hincapié en el over-forecasting que en el under-forecasting y sugiere que se necesita una mayor cantidad de existencias para satisfacer la demanda de los clientes con un 75% de probabilidad de éxito. En otras palabras, la demanda real es menor o igual a la demanda prevista el 75% del tiempo, lo que permite al comercio mantener tasas in-stock objetivo con menos stock de seguridad.

Recomendamos utilizar la medida wQL sobre diferentes cuantiles cuando los costos de under-forecasting y over-forecasting difieran. Si la diferencia en estos costos es insignificante, puede considerar el forecasting sobre el cuantil mediano de 0.5 (P50) o utilizar la métrica WAPE, que se evalúa utilizando el pronóstico medio. La siguiente figura ilustra la probabilidad de satisfacer la demanda en función del cuantil.

 

 

Para el caso de uso del dataset minorista, el pronóstico P75 indica que queremos priorizar el over-forecasting y penalizar el under-forecasting. Para calcular el wQL [0.75], sume los valores de los términos positivos en la columna Error P75 y multiplíquelos por un peso menor de 1-0.75 = 0.25, y sume los valores absolutos de los términos negativos en la columna Error P75 y multiplíquelos por un peso mayor de 0.75 para penalizar el under-forecasting. El wQL [0.75] es el siguiente:

 

 

Weighted absolute percentage error (WAPE)

La métrica WAPE es la suma del error absoluto normalizado por la demanda total. WAPE penaliza igualmente under-forecasting u over-forecasting, y no favorece ninguno de los escenarios. Utilizamos el valor esperado promedio (medio) del forecast para calcular el error absoluto. Recomendamos utilizar la métrica WAPE cuando la diferencia en los costos de under-forecasting u over-forecasting sea insignificante, o si desea evaluar la precisión del modelo sobre el pronóstico medio. Por ejemplo, para predecir la cantidad de efectivo necesaria en un momento dado en un cajero automático, un banco puede optar por satisfacer la demanda media porque hay menos preocupación por perder un cliente o tener exceso de efectivo en el cajero automático. En este ejemplo, puede optar por pronosticar sobre la media y elegir WAPE como la métrica para evaluar la precisión del modelo.

La normalización o ponderación ayuda a comparar modelos de diferentes datasets. Por ejemplo, si el error absoluto sumado en todo el conjunto de datos es 5, es difícil interpretar la calidad de esta métrica sin conocer la escala de la demanda total. Una alta demanda total de 1000 da como resultado un WAPE bajo (0.005) y una pequeña demanda total de 10 resulta en un WAPE alto (0.5). La ponderación en WAPE y en wQL permite comparar estas métricas entre datasets con diferentes escalas.

La normalización o ponderación también ayuda a evaluar los datasets que contienen una mezcla de ítems con demandas grandes y pequeñas. La métrica WAPE pone énfasis en la precisión para ítems con mayor demanda. Puede utilizar WAPE para datasets en los que el pronóstico de un pequeño número de SKUs impulsa la mayoría de las ventas. Por ejemplo, un minorista puede preferir utilizar la métrica WAPE para poner menos énfasis en los errores de pronóstico relacionados con artículos de edición especial, y priorizar los errores de pronóstico para artículos estándar con la mayoría de las ventas.

En nuestro caso de uso de dataset minorista, el WAPE es igual a la suma de la columna de error absoluto dividida por la suma de la columna de demanda real (demanda total).

 

 

Debido a que la suma de la demanda total está impulsada principalmente por Item1, el WAPE da más importancia a la precisión del Item1 más popular.

Muchos clientes minoristas trabajan con datasets dispersos, donde la mayoría de sus SKUs se venden con poca frecuencia. Para la mayoría de los datos históricos, la demanda es 0. Para estos datasets, es importante tener en cuenta la escala de la demanda total, haciendo que wQL y WAPE sean una mejor métrica que RMSE para evaluar datasets dispersos. La métrica RMSE no toma en cuenta la escala de la demanda total y devuelve un valor RMSE más bajo considerando el número total de puntos de datos históricos y el número total de SKUs, dando una falsa sensación de seguridad de que se tiene un modelo preciso.

 

Root mean square error (RMSE)

La métrica RMSE es la raíz cuadrada de la suma de los errores cuadráticos (diferencias entre los valores pronosticados medios y valores reales) dividida por el producto del número de ítems y el número de puntos de tiempo. El RMSE tampoco penaliza por under-forecasting u over-forecasting, y se puede utilizar cuando los trade-offs entre under-forecasting y over-forecasting son insignificantes o si se prefiere pronosticar sobre la media. Debido a que el RMSE es proporcional al cuadrado de los errores, es sensible a grandes desviaciones entre la demanda real y los valores pronosticados.

Sin embargo, se debe usar RMSE con precaución, ya que algunas desviaciones grandes en los errores de pronóstico pueden castigar severamente un modelo que, de otra forma, sería preciso. Por ejemplo, si un ítem en un gran dataset está muy under-forecasted u over-forecasted, el error en ese ítem distorsiona drásticamente toda la métrica RMSE y puede hacer que se rechace de forma prematura un modelo que sí puede ser preciso para el resto de los ítems. Para casos de uso donde algunas desviaciones grandes no son importantes, considere el uso de wQL o WAPE.

En nuestro ejemplo de dataset minorista, el RMSE es igual a la raíz cuadrada de la suma de la columna de error cuadrado dividida por el número total de puntos (3 ítems * 2 días = 6).

 

 

El RMSE da más importancia a la gran desviación del error de pronóstico del Item3, lo que resulta en un valor de RMSE más alto.

Recomendamos utilizar la métrica RMSE cuando unas pocas predicciones incorrectas grandes de un modelo en algunos artículos pueden ser muy costosas para el negocio. Por ejemplo, un fabricante que predice fallas de máquinas puede preferir utilizar la métrica RMSE. Debido a que la operación de la maquinaria es fundamental, cualquier desviación grande de la demanda real y pronosticada, incluso poco frecuente, debe tener mayor énfasis al evaluar la precisión del modelo.

La siguiente tabla resume nuestra discusión sobre la selección de una métrica de precisión dependiendo de su caso de uso.

Caso de uso wQL WAPE RMSE
Optimizar para under-forecasting u over-forecasting, los que pueden tener diferentes implicancias X
Priorizar artículos populares o artículos con alta demanda es más importante que los artículos de baja demanda X X
Enfatizar los costos para el negocio relacionados con grandes desviaciones en los errores de pronóstico X
Evaluación de datasets dispersos con 0 demanda para la mayoría de los elementos en datos históricos X X

 

Seleccionando puntos de distribución personalizados para evaluar la precisión del modelo en Forecast

Se puede medir la precisión de un modelo en Forecast mediante la API CreatePredictor y la API GetAccuracyMetrics o mediante la consola de Forecast. En esta sección, recorremos los pasos para usar la consola.

  1. En la consola de Forecast, cree un grupo de dataset.

 

 

2. Cargue su dataset.

 

 

3. En el panel de navegación, elija Predictors.

4. Elija Train predictor.

 

 

5. En Predictor Setting, para Forecast types, puede introducir hasta cinco puntos de distribución de su elección. La media también es aceptada.

Si no se especifican, se usan los cuantiles predeterminados de 0.1, 0.5 y 0.9 para entrenar un predictor y calcular métricas de precisión.

6. Para Algorithm selection, seleccione Automatic (AutoML).

AutoML optimiza un modelo para los cuantiles especificados.

7. Opcionalmente, en Number of backtest windows, puede seleccionar hasta cinco ventanas de backtest para evaluar la fortaleza del modelo.

 

 

8. Después de entrenar el predictor, elija su predictor en la página Predictors para ver los detalles de las métricas de precisión.

 

 

En la página de detalles del predictor, puede ver las métricas generales de precisión del modelo y las métricas de cada ventana de backtest especificada. Las métricas generales de precisión del modelo se calculan promediando las métricas individuales de cada ventana de backtest.

 

 

9. Ahora que su modelo está entrenado, elija Forecasts en el panel de navegación.

10. Elija Create a forecast.

11. Seleccione su predictor entrenado para crear un pronóstico.

Se generan pronósticos para los puntos de distribución utilizados durante el entrenamiento de un predictor. También se tiene la opción de especificar diferentes puntos de distribución para generar pronósticos.

 

 

Consejos y mejores prácticas

En esta sección, compartimos algunos consejos y mejores prácticas para el uso de Forecast:

  • Antes de experimentar con Forecast, defina su problema de negocio en relación a los costos de under-forecasting y over-forecasting. Evalúe los trade-offs y priorice si prefiere pronosticar por encima o por debajo.
  • Experimente con distintos puntos de distribución para optimizar su modelo de forecast y equilibrar los costos asociados con under-forecasting y over-forecasting.
  • Si está comparando diferentes modelos, utilice la métrica wQL sobre el mismo cuantil para la comparación. Cuanto menor sea el valor, más preciso será el modelo de forecast.
  • Forecast le permite seleccionar hasta cinco ventanas de backtest. Forecast utiliza backtesting para ajustar los predictores y producir métricas de precisión. Para realizar backtesting, Forecast divide automáticamente los datasets de series de tiempo en dos conjuntos: entrenamiento y test. El dataset de entrenamiento se utiliza para entrenar su modelo, y el dataset de test para evaluar la precisión predictiva del modelo. Recomendamos elegir más de una ventana de backtest para minimizar el sesgo de selección que puede hacer que una ventana sea más o menos precisa por azar. Evaluar la precisión general del modelo sobre múltiples ventanas de backtest proporciona una mejor medida de la fortaleza del modelo.

 

Conclusión

Ahora puede medir la precisión de su modelo de forecast sobre múltiples puntos de distribución de su preferencia con Forecast. Esto brinda mayor flexibilidad para alinear Forecast con su negocio, ya que el impacto del over-forecasting a menudo difiere del under-forecasting. Puede utilizar esta funcionalidad en todas las regiones donde Forecast esté disponible públicamente. Para obtener más información acerca de la disponibilidad de regiones, consulte Tabla de regiones. Para más información sobre las API que especifican puntos de distribución personalizados al crear un predictor y acceder a métricas de precisión, consulte la documentación de CreatePredictor API y GetAccuracyMetrics API. Para obtener más detalles sobre la evaluación de la precisión de un predictor para varios puntos de distribución, consulte Evaluación de la precisión del predictor.

 

Este artículo fue traducido del Blog de AWS en Inglés.

 


Sobre las Autoras

Namita Das es Sr. Product Manager para Amazon Forecast. Su foco actual es democratizar el machine learning mediante la creación de servicios ML sin código o de bajo código. En paralelo, ella frecuentemente aconseja startups y está criando a un cachorro llamado Imli.

 

 

 

 

Danielle Robinson es Applied Scientist en el equipo de Amazon Forecast. Su investigación se refiere al pronóstico de series de tiempo y, en particular, cómo podemos aplicar nuevos algoritmos basados en redes neuronales dentro de Amazon Forecast. Su investigación de tesis se centró en el desarrollo de modelos numéricos nuevos, robustos y físicamente precisos para dinámica de fluidos computacional. Sus pasatiempos incluyen cocinar, nadar y hacer senderismo.

 

 

Revisor

Rodrigo Alarcón es Sr. Solutions Architect en AWS. En su rol, ayuda a empresas de distinto tamaño a generar valor para su negocio mediante tecnologías de computación en la nube. Sus intereses incluyen machine learning y ciberseguridad.