Implementación de Amazon Forecast en la industria minorista: un viaje desde POC hasta producción PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Implementación de Amazon Forecast en la industria minorista: un viaje desde el POC hasta la producción

Pronóstico del Amazonas es un servicio totalmente administrado que utiliza algoritmos estadísticos y de aprendizaje automático (ML) para ofrecer pronósticos de series temporales de alta precisión. Recientemente, basándonos en el pronóstico de Amazon, ayudamos a uno de nuestros clientes minoristas a lograr un pronóstico de demanda preciso en 8 semanas. La solución mejoró el pronóstico manual en un promedio de 10% con respecto al WAPE métrico. Esto conduce a un ahorro directo de 16 horas de mano de obra mensuales. Además, estimamos que al cumplir con la cantidad correcta de artículos, las ventas podrían aumentar hasta en un 11.8%. En esta publicación, presentamos el flujo de trabajo y los elementos críticos para implementar, desde la prueba de concepto (POC) hasta la producción, un sistema de pronóstico de demanda con Amazon Forecast, enfocado en los desafíos de la industria minorista.

Antecedentes y retos actuales de la previsión de la demanda en la industria del retail

El objetivo de la previsión de la demanda es estimar la demanda futura a partir de datos históricos y ayudar a la reposición de tiendas y la asignación de capacidad. Con el pronóstico de la demanda, los minoristas pueden colocar la cantidad correcta de inventario en cada ubicación de su red para satisfacer la demanda. Por lo tanto, un sistema de pronóstico preciso puede generar una amplia gama de beneficios en diferentes funciones comerciales, como:

  • Aumentar las ventas a partir de una mejor disponibilidad de productos y reducir el esfuerzo de desperdicio de transferencia entre tiendas
  • Brindar información más confiable para mejorar la utilización de la capacidad y evitar de manera proactiva los cuellos de botella en el aprovisionamiento de capacidad
  • Minimizar los costos de inventario y producción y mejorar la rotación de inventario
  • Presentar una mejor experiencia del cliente en general

Las técnicas de ML demuestran un gran valor cuando hay presente un gran volumen de datos de buena calidad. Hoy en día, la gestión de reabastecimiento basada en la experiencia o el pronóstico de la demanda sigue siendo la corriente principal para la mayoría de los minoristas. Con el objetivo de mejorar la experiencia del cliente, cada vez más minoristas están dispuestos a reemplazar los sistemas de pronóstico de demanda basados ​​en la experiencia con pronósticos basados ​​en ML. Sin embargo, los minoristas enfrentan múltiples desafíos al implementar sistemas de pronóstico de demanda basados ​​​​en ML en producción. Resumimos los diferentes desafíos en tres categorías: desafíos de datos, desafíos de ML y desafíos operativos.

Desafíos de datos

Un gran volumen de datos limpios y de calidad es un requisito clave para impulsar predicciones precisas basadas en ML. Los datos de calidad, incluidas las ventas históricas y los datos relacionados con las ventas (como inventario, precios de artículos y promociones), deben recopilarse y consolidarse. La diversidad de datos de múltiples recursos requiere una plataforma de datos moderna para unir los silos de datos. Además, el acceso a los datos de manera oportuna es necesario para los pronósticos de demanda frecuentes y detallados.

Desafíos de aprendizaje automático

El desarrollo de algoritmos de ML avanzados requiere experiencia. La implementación de los algoritmos correctos para el problema correcto necesita tanto un conocimiento profundo del dominio como competencias de ML. Además, aprender de grandes conjuntos de datos disponibles requiere una infraestructura de ML escalable. Además, mantener los algoritmos de ML en producción requiere competencias de ML para analizar la causa raíz de la degradación del modelo y volver a entrenar correctamente el modelo.

Para resolver problemas comerciales prácticos, producir pronósticos precisos es solo una parte de la historia. Los tomadores de decisiones necesitan pronósticos probabilísticos en diferentes cuantiles para tomar decisiones importantes sobre la relación entre la experiencia del cliente y los resultados financieros. También deben explicar las predicciones a las partes interesadas y realizar análisis hipotéticos para investigar cómo los diferentes escenarios podrían afectar los resultados de las previsiones.

Desafíos operacionales

Reducir el esfuerzo operativo de mantener un sistema de pronóstico rentable es el tercer desafío principal. En un escenario común de previsión de la demanda, cada artículo en cada ubicación tiene su propia previsión. Se requiere un sistema que pueda gestionar cientos de miles de pronósticos en cualquier momento. Además, los usuarios finales comerciales necesitan que el sistema de pronóstico se integre en los sistemas posteriores existentes, como las plataformas de administración de la cadena de suministro existentes, para que puedan usar sistemas basados ​​​​en ML sin modificar las herramientas y los procesos existentes.

Estos desafíos son especialmente agudos cuando las empresas son grandes, dinámicas y en crecimiento. Para abordar estos desafíos, compartimos una historia de éxito de un cliente que reduce los esfuerzos para validar rápidamente la ganancia comercial potencial. Esto se logra mediante la creación de prototipos con Amazon Forecast, un servicio completamente administrado que brinda resultados de pronóstico precisos sin la necesidad de administrar algoritmos y recursos de infraestructura subyacentes.

Creación rápida de prototipos para un sistema de pronóstico basado en ML con Amazon Forecast

Según nuestra experiencia, a menudo vemos que los clientes minoristas están dispuestos a iniciar una prueba de concepto sobre sus datos de ventas. Esto se puede hacer dentro de un rango de unos pocos días a algunas semanas para la creación rápida de prototipos, según la complejidad de los datos y los recursos disponibles para iterar a través del proceso de ajuste del modelo. Durante la creación de prototipos, sugerimos usar sprints para administrar el proceso de manera efectiva y separar el POC en fases de exploración de datos, mejora iterativa y automatización.

Exploración de datos

La exploración de datos a menudo implica una discusión intensa con científicos de datos o analistas de inteligencia comercial para familiarizarse con el conjunto de datos de ventas históricas y las fuentes de datos disponibles que pueden afectar potencialmente los resultados de pronóstico, como el inventario y los eventos promocionales históricos. Una de las formas más eficientes es consolidar los datos de ventas, como el conjunto de datos de destino, desde el almacén de datos en la etapa inicial del proyecto. Esto se basa en el hecho de que los resultados del pronóstico a menudo están dominados por los patrones del conjunto de datos de destino. Los almacenes de datos a menudo almacenan datos comerciales del día a día, y una comprensión exhaustiva en un corto período de tiempo es difícil y requiere mucho tiempo. Nuestra sugerencia es concentrarse en generar el conjunto de datos de destino y asegurarse de que este conjunto de datos sea correcto. Estos resultados de exploración de datos y línea de base a menudo se pueden lograr en unos pocos días, y esto puede determinar si los datos de destino se pueden pronosticar con precisión. Discutimos la capacidad de pronóstico de los datos más adelante en esta publicación.

Iteración

Una vez que tengamos los resultados de referencia, podemos continuar agregando más datos relacionados para ver cómo pueden afectar la precisión. Esto a menudo se hace a través de una inmersión profunda en conjuntos de datos adicionales; para obtener más información, consulte Uso de conjuntos de datos de series temporales relacionadas y Uso de conjuntos de datos de metadatos de elementos.

En algunos casos, es posible mejorar la precisión en Amazon Forecast entrenando los modelos con subconjuntos del conjunto de datos que se comporten de manera similar o eliminando los datos escasos del conjunto de datos. Durante esta fase de mejora iterativa, la parte desafiante, cierta para todos los proyectos de ML, es que la iteración actual depende de los hallazgos y conocimientos clave de la iteración anterior, por lo que el análisis y la generación de informes rigurosos son clave para el éxito.

El análisis se puede hacer cuantitativa y empíricamente. El aspecto cuantitativo se refiere a la evaluación durante el backtesting y la comparación de la métrica de precisión, como WAPE. El aspecto empírico se refiere a visualizar la curva de predicción y los datos objetivo reales, y usar el conocimiento del dominio para incorporar factores potenciales. Estos análisis lo ayudan a iterar más rápido para cerrar la brecha entre los resultados pronosticados y los datos objetivo. Además, presentar dichos resultados a través de un informe semanal a menudo puede brindar confianza a los usuarios finales comerciales.

Automatización

El paso final a menudo implica la discusión de POC para el procedimiento de producción y la automatización. Debido a que el proyecto ML está limitado por la duración total del proyecto, es posible que no tengamos suficiente tiempo para explorar todas las posibilidades. Por lo tanto, indicar el área potencial a lo largo de los hallazgos durante el proyecto a menudo puede generar confianza. Además, la automatización puede ayudar a los usuarios finales de negocios a evaluar Forecast por un período más largo, ya que pueden usar un predictor existente para generar pronósticos con los datos actualizados.

Los criterios de éxito se pueden evaluar con los resultados generados, tanto desde la perspectiva técnica como comercial. Durante el período de evaluación, podemos estimar los beneficios potenciales para lo siguiente:

  • Aumento de la precisión del pronóstico (técnico) – Calcule la precisión de la predicción con respecto a los datos de ventas reales y compárela con el sistema de pronóstico existente, incluidos los pronósticos manuales.
  • Reducción de residuos (negocio) – Reducir la previsión excesiva para reducir los residuos
  • Mejora de las tasas de existencias (negocios) – Reducir la previsión insuficiente para mejorar las tasas de existencias
  • Estimación del aumento de la ganancia bruta (negocio) – Reducir el desperdicio y mejorar las tasas de existencias para aumentar la ganancia bruta

Resumimos el flujo de trabajo de desarrollo en el siguiente diagrama.

En las siguientes secciones, discutimos los elementos importantes a tener en cuenta durante la implementación.

Flujo de trabajo paso a paso para desarrollar un sistema de pronóstico

Generación de conjuntos de datos de destino

El primer paso es generar el conjunto de datos objetivo para Forecast. En la industria minorista, esto se refiere a la demanda histórica de series temporales y los datos de ventas de artículos minoristas (SKU). Al preparar el conjunto de datos, un aspecto importante es la granularidad. Debemos considerar la granularidad de los datos tanto de los requisitos comerciales como de los requisitos técnicos.

El negocio define cómo resulta el pronóstico en el sistema de producción:

  • horizonte – El número de pasos de tiempo que se pronostican. Esto depende del problema de negocio subyacente. Si queremos reponer el nivel de existencias cada semana, entonces parece apropiado un pronóstico semanal o un pronóstico diario.
  • granularidad – La granularidad de sus pronósticos: frecuencia de tiempo como diaria o semanal, diferentes ubicaciones de tiendas y diferentes tamaños del mismo artículo. Al final, la predicción puede ser una combinación de cada SKU de tienda, con puntos de datos diarios.

Si bien el horizonte de pronóstico y la granularidad antes mencionados deben definirse para priorizar el requisito comercial, es posible que debamos hacer concesiones entre los requisitos y la viabilidad. Tome el negocio del calzado como un ejemplo. Si queremos predecir las ventas de cada talla de zapato en cada nivel de tienda, los datos pronto se vuelven escasos y el patrón es difícil de encontrar. Sin embargo, para reponer existencias, necesitamos estimar esta granularidad. Para hacer esto, las soluciones alternativas pueden requerir estimar una relación entre diferentes tamaños de zapatos y usar esta relación para calcular resultados detallados.

A menudo necesitamos equilibrar los requisitos comerciales y el patrón de datos que se puede aprender y utilizar para la previsión. Para proporcionar una calificación cuantitativa de los patrones de datos, proponemos utilizar la capacidad de previsión de datos.

Previsibilidad de datos y clasificación de patrones de datos

Una de las ideas clave que podemos recopilar del conjunto de datos de destino es su capacidad para producir pronósticos de calidad. Esto se puede analizar en la fase inicial del proyecto ML. El pronóstico brilla cuando los datos muestran estacionalidad, tendencias y patrones cíclicos.

Para determinar la capacidad de previsión, existen dos coeficientes principales: la variabilidad en el momento de la demanda y la variabilidad en la cantidad de la demanda. La variabilidad en el tiempo de la demanda significa el intervalo entre dos instancias de la demanda y mide la regularidad de la demanda en el tiempo. La variabilidad en la cantidad de demanda significa variación en las cantidades. La siguiente figura ilustra algunos patrones diferentes. La precisión del pronóstico depende en gran medida de la capacidad de pronóstico del producto. Para obtener más información, consulte Clasificación de la demanda: por qué es importante la previsibilidad.

Implementación de Amazon Forecast en la industria minorista: un viaje desde POC hasta producción PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.Vale la pena señalar que este análisis de previsión es para cada elemento detallado (por ejemplo, SKU-Tienda-Color-Tamaño). Es bastante común que en un sistema de producción de pronóstico de demanda, diferentes artículos sigan diferentes patrones. Por lo tanto, es importante separar los elementos siguiendo diferentes patrones de datos. Un ejemplo típico son los artículos de movimiento rápido y lento; otro ejemplo sería datos densos y dispersos. Además, un artículo de grano fino tiene más posibilidades de producir un patrón grumoso. Por ejemplo, en una tienda de ropa, las ventas de un artículo popular pueden ser bastante uniformes todos los días, pero si separamos aún más las ventas del artículo para cada color y tamaño, pronto se vuelven escasas. Por lo tanto, reducir la granularidad de SKU-Store-Color-Size a SKU-Store puede cambiar el patrón de datos de grumoso a fluido y viceversa.

Además, no todos los artículos contribuyen por igual a las ventas. Hemos observado que la contribución de los artículos a menudo sigue la distribución de Pareto, en la que los artículos principales contribuyen con la mayor parte de las ventas. Las ventas de estos artículos principales suelen ser fluidas. Los artículos con un registro de ventas más bajo a menudo son irregulares y erráticos y, por lo tanto, difíciles de estimar. Agregar estos artículos podría disminuir la precisión de los artículos más vendidos. Con base en estas observaciones, podemos separar los artículos en diferentes grupos, entrenar el modelo de Pronóstico en los artículos de mayor venta y manejar los artículos de menor venta como casos de esquina.

Enriquecimiento de datos y selección de conjuntos de datos adicionales

Cuando queremos utilizar conjuntos de datos adicionales para mejorar el rendimiento de los resultados de las previsiones, podemos confiar en conjuntos de datos de series temporales y conjuntos de datos de metadatos. En el dominio minorista, con base en la intuición y el conocimiento del dominio, las características como el inventario, el precio, la promoción y las temporadas de invierno o verano podrían importarse como series temporales relacionadas. La forma más sencilla de identificar la utilidad de las funciones es a través de la importancia de las funciones. En Forecast, esto se hace mediante el análisis de explicabilidad. Pronóstico Explicabilidad del predictor nos ayuda a comprender mejor cómo los atributos en los conjuntos de datos afectan los pronósticos para el objetivo. Forecast utiliza una métrica llamada puntajes de impacto para cuantificar el impacto relativo de cada atributo y determinar si aumentan o disminuyen los valores de pronóstico. Si uno o más atributos tienen una puntuación de impacto de cero, estos atributos no tienen un impacto significativo en los valores de pronóstico. De esta manera, podemos eliminar rápidamente las funciones que tienen menos impacto y agregar las posibles de forma iterativa. Es importante tener en cuenta que las puntuaciones de impacto miden el impacto relativo de los atributos, que se normalizan junto con las puntuaciones de impacto de todos los demás atributos.

Como todos los proyectos de ML, mejorar la precisión con características adicionales requiere experimentos iterativos. Debe experimentar con múltiples combinaciones de conjuntos de datos, mientras observa el impacto de los cambios incrementales en la precisión del modelo. Puede intentar ejecutar varios experimentos de pronóstico a través de la consola de pronóstico o con Cuadernos de Python con API de pronóstico. Además, puede embarcarse con Formación en la nube de AWS, que implementa soluciones preparadas proporcionadas por AWS para casos de uso comunes (por ejemplo, el Mejora de la precisión de las previsiones con la solución de aprendizaje automático). Forecast separa automáticamente el conjunto de datos y produce métricas de precisión para evaluar los predictores. Para más información, ver Evaluación de la precisión del predictor. Esto ayuda a los científicos de datos a iterar más rápido para lograr el modelo de mejor rendimiento.

Mejora avanzada y manejo de casos de esquina.

Mencionamos que los algoritmos de pronóstico pueden aprender la estacionalidad, las tendencias y las características cíclicas de los datos. Para artículos con estas características, y la densidad y el volumen de datos adecuados, podemos usar Forecast para generar estimaciones. Sin embargo, cuando nos enfrentamos a patrones de datos irregulares, especialmente cuando el volumen de datos es pequeño, es posible que debamos manejarlos de manera diferente, como con una estimación empírica basada en un conjunto de reglas.

Para los SKU densos, mejoramos aún más la precisión del pronóstico entrenando los modelos con subconjuntos del conjunto de datos de series temporales que se comportan de manera similar. Las estrategias de separación de subconjuntos que utilizamos son la lógica comercial, el tipo de producto, la densidad de datos y los patrones aprendidos por el algoritmo. Después de generar los subconjuntos, podemos entrenar varios modelos de pronóstico para los diferentes subconjuntos. Para un ejemplo de este tipo, consulte Datos de series temporales de clústeres para usar con Amazon Forecast.

Hacia la producción: Actualización del conjunto de datos, monitoreo y reentrenamiento

Exploremos una arquitectura de ejemplo con Forecast, como se muestra en el siguiente diagrama. Cada vez que un usuario final consolida un nuevo conjunto de datos en Servicio de almacenamiento simple de Amazon (Amazon S3), activa Funciones de paso de AWS para organizar diferentes componentes, incluida la creación del trabajo de importación del conjunto de datos, la creación de un predictor automático y la generación de pronósticos. Una vez que se generan los resultados de la previsión, el paso Crear exportación de previsión los exporta a Amazon S3 para los consumidores intermedios. Para obtener más información sobre cómo aprovisionar esta canalización automatizada, consulte Automatización con AWS CloudFormation. Utiliza una pila de CloudFormation para implementar automáticamente conjuntos de datos en un depósito de S3 y desencadenar una canalización de pronóstico. Puede usar la misma pila de automatización para generar pronósticos con sus propios conjuntos de datos.

Implementación de Amazon Forecast en la industria minorista: un viaje desde POC hasta producción PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Hay dos formas de incorporar tendencias recientes en el sistema de pronóstico: actualizar los datos o volver a entrenar al predictor.

Para generar el pronóstico con datos actualizados que reflejen las tendencias recientes, debe cargar el archivo de datos de entrada actualizado en un depósito S3 (los datos de entrada actualizados aún deben contener todos sus datos existentes). Forecast no vuelve a entrenar automáticamente un predictor cuando importa un conjunto de datos actualizado. Puedes generar pronósticos como sueles hacer. Pronóstico predice el horizonte de pronóstico a partir del último día en los datos de entrada actualizados. Por lo tanto, las tendencias recientes se incorporan a cualquier inferencia nueva producida por Forecast.

Sin embargo, si desea que su predictor se entrene a partir de los nuevos datos, debe crear un nuevo predictor. Es posible que deba considerar volver a entrenar el modelo cuando cambien los patrones de datos (estacionalidad, tendencias o ciclos). Como se menciona en Supervise continuamente la precisión del predictor con Amazon Forecast, el rendimiento de un predictor fluctuará con el tiempo debido a factores como cambios en el entorno económico o en el comportamiento del consumidor. Por lo tanto, es posible que sea necesario volver a entrenar el predictor o que se deba crear un nuevo predictor para garantizar que se sigan realizando predicciones muy precisas. Con la ayuda de monitoreo predictor, Forecast puede realizar un seguimiento de la calidad de sus predictores, lo que le permite reducir los esfuerzos operativos y, al mismo tiempo, ayudarlo a tomar decisiones más informadas sobre el mantenimiento, el reentrenamiento o la reconstrucción de sus predictores.

Conclusión

Amazon Forecast es un servicio de pronóstico de series temporales basado en ML y creado para el análisis de métricas comerciales. Podemos integrar la predicción de la previsión de la demanda con gran precisión mediante la combinación de ventas históricas y otra información relevante, como el inventario, las promociones o la temporada. En 8 semanas, ayudamos a uno de nuestros clientes minoristas a lograr un pronóstico de demanda preciso: una mejora del 10 % en comparación con el pronóstico manual. Esto conduce a un ahorro directo de 16 horas de mano de obra mensuales y un aumento estimado de las ventas de hasta un 11.8%.

Esta publicación compartió prácticas comunes para llevar su proyecto de pronóstico de prueba de concepto a producción. Comience ahora con Pronóstico del Amazonas para lograr pronósticos altamente precisos para su negocio.


Acerca de los autores

Implementación de Amazon Forecast en la industria minorista: un viaje desde POC hasta producción PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.Yanwei Cui, PhD, es un arquitecto de soluciones especializado en aprendizaje automático en AWS. Comenzó la investigación de aprendizaje automático en IRISA (Instituto de Investigación de Ciencias de la Computación y Sistemas Aleatorios) y tiene varios años de experiencia en la construcción de aplicaciones industriales impulsadas por inteligencia artificial en visión por computadora, procesamiento de lenguaje natural y predicción de comportamiento de usuarios en línea. En AWS, comparte la experiencia del dominio y ayuda a los clientes a desbloquear el potencial comercial y a generar resultados procesables con el aprendizaje automático a escala. Fuera del trabajo, le gusta leer y viajar.

Implementación de Amazon Forecast en la industria minorista: un viaje desde POC hasta producción PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.gordon wang es científico de datos sénior en el equipo de servicios profesionales de Amazon Web Services. Apoya a los clientes en muchas industrias, incluidos los medios de comunicación, la fabricación, la energía, el comercio minorista y la atención médica. Le apasiona la visión por computadora, el aprendizaje profundo y MLOps. En su tiempo libre, le encanta correr y caminar.

Sello de tiempo:

Mas de Aprendizaje automático de AWS