Construyendo una plataforma de ML en el sector minorista y el comercio electrónico
'Plataforma de ML en el sector minorista y el comercio electrónico'
Lograr que el aprendizaje automático resuelva algunos de los problemas más difíciles de una organización es genial. Y las empresas de comercio electrónico tienen una gran cantidad de casos de uso en los que el aprendizaje automático puede ayudar. El problema es que, con más modelos y sistemas de aprendizaje automático en producción, es necesario configurar más infraestructura para administrar todo de manera confiable. Y debido a eso, muchas empresas deciden centralizar este esfuerzo en una plataforma interna de aprendizaje automático.
Pero ¿cómo construirlo?
En este artículo, compartiré mis aprendizajes sobre cómo funcionan las plataformas de aprendizaje automático exitosas en un comercio electrónico y cuáles son las mejores prácticas que un equipo debe seguir durante el proceso de construcción.
Pero primero, discutamos los casos de uso principales de aprendizaje automático en el comercio minorista / comercio electrónico que su plataforma de aprendizaje automático puede y debe admitir.
¿Qué tipos de modelos puede admitir una plataforma de aprendizaje automático en el comercio electrónico?
Aunque hay cosas que todas las plataformas internas de aprendizaje automático tienen en común, hay tipos de modelos particulares que tienen más sentido para un comercio electrónico, como:
- Cómo construir un pipeline de entrenamiento de modelos de ML
- Cómo utilizar los valores SHAP para optimizar y depurar modelos de ML
- Acme Un nuevo marco de trabajo para el aprendizaje por refuerzo dis...
-
1
Búsqueda de productos -
2
Personalización y recomendación -
3
Optimización de precios -
4
Pronóstico de demanda
Búsqueda de productos
La búsqueda de productos es la base de cualquier negocio de comercio electrónico. Los clientes expresan su intención a través de la plataforma de búsqueda. Si la plataforma de búsqueda de productos no es óptima, mucha demanda de los clientes puede quedar insatisfecha.
La plataforma de aprendizaje automático puede utilizar datos históricos de interacción con el cliente, también llamados “datos de seguimiento de clics”, y transformarlos en características esenciales para el éxito de la plataforma de búsqueda. Desde una perspectiva algorítmica, Learning To Rank (LeToR) y Elastic Search son algunos de los algoritmos más populares utilizados para construir un sistema de búsqueda.
Personalización y recomendación
La recomendación de productos en el comercio electrónico es la puerta de entrada para proporcionar sugerencias relevantes y valiosas para satisfacer las necesidades de los clientes. Un sistema de recomendación de productos en el comercio electrónico, si se implementa correctamente, ofrece una mejor experiencia al cliente, genera más participación del cliente y produce mejores ingresos.
Podemos recopilar y utilizar datos históricos de interacción entre usuarios y productos para entrenar algoritmos del sistema de recomendación. Los algoritmos tradicionales de filtrado colaborativo o filtro colaborativo neuronal que se basan en el compromiso pasado de los usuarios con los productos se utilizan ampliamente para resolver problemas de personalización y recomendación.
Optimización de precios
La optimización de precios es un problema empresarial fundamental en el comercio minorista. Las empresas de comercio electrónico deben encontrar un equilibrio entre “mantener un artículo sin vender en el almacén” y “promover la venta del artículo ofreciendo un descuento atractivo”.
Debido a esto, los desarrolladores pueden tener que optimizar la estrategia de precios con mucha frecuencia. Para respaldar este desarrollo incremental del modelo, es necesario construir una plataforma de aprendizaje automático con soporte de CI/CD/CT para mover la aguja más rápido.
Pronóstico de demanda
La estimación de la demanda futura ayuda a una empresa de comercio electrónico a administrar mejor las decisiones de adquisición y reposición. Hay algunos productos que son estacionales y su demanda fluctúa durante todo el año. Ropa de verano, ropa de invierno, decoraciones navideñas, disfraces de Halloween, humectantes, etc., son algunos ejemplos.
Un modelo de aprendizaje automático que utiliza algoritmos de pronóstico populares como SARIMAX, AIRMA, etc. puede tener en cuenta todos estos factores para calcular una mejor estimación de la demanda y ayudar a tomar mejores decisiones de comercio electrónico sobre su catálogo e inventario.
¿Cómo configurar una plataforma de aprendizaje automático en el comercio electrónico?
El objetivo de una plataforma de aprendizaje automático es automatizar tareas repetitivas y optimizar los procesos desde la preparación de datos hasta la implementación y el monitoreo del modelo. Una plataforma de aprendizaje automático ayuda a acelerar la iteración del ciclo de vida de un proyecto de aprendizaje automático.
El siguiente diagrama esquemático muestra los componentes principales de una plataforma de aprendizaje automático.

Es posible que se le dé un nombre diferente a un componente, pero los principales componentes de una plataforma de aprendizaje automático son los siguientes:
-
1
Plataforma de datos -
2
Procesamiento de datos -
3
Integración continua / implementación continua / entrenamiento continuo -
4
Servicio de modelos -
5
Monitoreo del rendimiento
Estos son los componentes que encontraremos en cualquier plataforma de aprendizaje automático, pero ¿qué tiene de especial una plataforma de aprendizaje automático en el comercio minorista? Se trata de cómo diseñamos cada uno de estos componentes. En las siguientes secciones, discutiremos cómo se formulan cada uno de estos componentes para admitir casos de uso minorista.
Consideraciones para la plataforma de datos
Configurar la Plataforma de Datos de la manera correcta es clave para el éxito de una Plataforma de Aprendizaje Automático. Cuando observas el viaje de principio a fin de una plataforma de comercio electrónico, encontrarás que hay muchos componentes donde se genera datos. Como se muestra en el siguiente diagrama, para entregar un artículo desde un proveedor hasta un consumidor, el artículo pasa por varias capas en la red de la cadena de suministro.
Cada una de estas capas genera un volumen alto de datos, y es esencial capturar estos datos ya que juegan un papel crucial en la optimización. A veces se vuelve desafiante manejar un volumen tan grande de datos provenientes de múltiples fuentes.

Fuentes de datos
- Datos de navegación: El viaje de los clientes comienza con la búsqueda de un artículo escribiendo una consulta. A medida que los clientes continúan interactuando con el portal de comercio electrónico, se genera un flujo de datos de clics. La interacción de los clientes se captura para mejorar el sistema de búsqueda y recomendación mediante el análisis del comportamiento pasado de los clientes.
- Catálogo de productos: Los datos del catálogo de productos son la única fuente de verdad para que cualquier algoritmo conozca un producto. Una empresa de comercio electrónico adquiere productos de varios proveedores y fabricantes. Consolidar los datos provenientes de múltiples canales y mantener un catálogo de productos enriquecido es un desafío.
- Datos de gestión de la cadena de suministro: Otra fuente de datos es el Sistema de Gestión de la Cadena de Suministro. A medida que un artículo viaja a través de la red de la cadena de suministro, genera datos en cada capa, y es importante persistir estos datos para optimizar la red de la cadena de suministro.
El objetivo de la plataforma de datos es persistir los datos de manera que sea fácil procesarlos para el desarrollo de modelos de aprendizaje automático. En las siguientes secciones, discutiremos las mejores prácticas al configurar una Plataforma de Datos para el comercio minorista.

Mantener el historial de datos
Al construir una Plataforma de Datos para el comercio electrónico, preservar los datos de interacción pasada de los clientes es crucial, ya que los sistemas de recomendación utilizan datos históricos de interacción de los clientes para construir mejores algoritmos. Mantener un historial largo de datos a nivel de sesión puede ser complicado. Veamos esto con un ejemplo.
Los datos de navegación generalmente contienen <IdSesión, Usuario, Consulta, Artículo, Clic, ATC, Pedido>. Mantener datos a nivel de sesión para cada usuario a lo largo de un historial largo puede ser excesivo, y el desarrollo de modelos de aprendizaje automático no siempre requiere ese nivel de detalle.
Por lo tanto, una mejor arquitectura de base de datos sería mantener múltiples tablas donde una de las tablas mantenga los últimos 3 meses de historial con detalles a nivel de sesión, mientras que otras tablas pueden contener datos agregados semanalmente de clics, ATC y pedidos.
Versionado de conjunto de datos
Durante el desarrollo de un algoritmo, un científico de datos puede tener que realizar múltiples experimentos. Hacer un seguimiento de qué datos se utilizaron para ejecutar un experimento a veces se vuelve complicado para un científico de datos. Por lo tanto, el versionado de datos ayuda a realizar un mejor seguimiento de los cambios en los datos a lo largo del tiempo.
Como ejemplo, en el comercio electrónico, los datos del catálogo de productos cambian con el tiempo. A veces se agregan nuevos productos al catálogo, mientras que los productos inactivos también se eliminan. Por lo tanto, al construir un modelo, es importante realizar un seguimiento de qué versión de los datos del catálogo se utilizó para construir el modelo, ya que la inclusión o eliminación de productos podría llevar a predicciones inconsistentes.
Selección de la plataforma de almacenamiento de datos adecuada
En el comercio electrónico, un científico de datos trabaja con todo tipo de datos. Es esencial seleccionar una plataforma de almacenamiento en función del tipo de datos y el tipo de aplicación.
- La Plataforma de Datos debe tener integración con BigQuery, plataformas de almacenamiento de archivos en la nube (como Amazon S3, GCP bucket, etc.) a través de conectores de datos.
- Puede haber múltiples fuentes de datos al mismo tiempo, que pueden estar disponibles en diferentes formas como imágenes, texto y formato tabular. Es posible que se desee utilizar una plataforma de ML Ops lista para usar para mantener diferentes versiones de datos.
- Para almacenar datos de imágenes, opciones como Amazon S3 y los buckets de GCP, Azure Blob Storage son algunas de las mejores opciones, mientras que uno podría querer utilizar Hadoop + Hive o BigQuery para almacenar datos de flujo de clics y otros tipos de datos de texto y tabulares.
¿Cómo configurar una plataforma de procesamiento de datos?
Todos sabemos cómo el preprocesamiento de datos juega un papel crucial en el ciclo de vida de un proyecto de aprendizaje automático. Los desarrolladores pasan más del 70% del tiempo preparando los datos en el formato correcto. En esta sección, hablaré sobre las mejores prácticas para construir la plataforma de procesamiento de datos.
El objetivo de esta plataforma es preprocesar, preparar y transformar los datos para que estén listos para el entrenamiento del modelo. Esta es la capa ETL (Extracción, Transformación y Carga) que combina datos de múltiples fuentes, elimina el ruido de los datos, organiza los datos en bruto y los prepara para el entrenamiento del modelo.
Verificación de datos
Como se discutió anteriormente, el comercio electrónico maneja datos de diferentes naturalezas, y los datos podrían provenir de múltiples fuentes de datos. Por lo tanto, antes de combinar los datos provenientes de múltiples fuentes, debemos verificar la calidad de los datos.
Como ejemplo para los datos del catálogo, es importante verificar si el conjunto de campos obligatorios como el título del producto, la imagen principal, los valores nutricionales, etc. están presentes en los datos. Por lo tanto, debemos construir una capa de verificación que se ejecute en función de un conjunto de reglas para verificar y validar los datos antes de prepararlos para el entrenamiento del modelo.
Análisis exploratorio de datos
El propósito de tener una capa de análisis exploratorio de datos es descubrir cualquier error u valor atípico obvio en los datos. En esta capa, debemos configurar un conjunto de visualizaciones para monitorear los parámetros estadísticos de los datos.
Procesamiento de características
Esta es la capa final en la unidad de procesamiento de datos que transforma los datos en características y los almacena en un repositorio de características. Un repositorio de características es un repositorio que almacena características que se pueden utilizar directamente para el entrenamiento del modelo.
Por ejemplo, un modelo utiliza la cantidad de veces que un usuario ha pedido un artículo como una de las características. Los datos de flujo de clics que obtenemos en su formato en bruto tienen datos a nivel de sesión de la interacción de los usuarios con los productos. Necesitamos agregar estos datos de flujo de clics a nivel de usuario y artículo para crear la característica y almacenar esa característica en el repositorio centralizado de características.
Construir este tipo de Repositorio de Características tiene varias ventajas:
-
1
Permite la reutilización fácil de características en múltiples proyectos. -
2
También ayuda a estandarizar las definiciones de características en equipos.
Consideración para la plataforma CI/CD/CT
Configuración de una plataforma para el desarrollo continuo
Es una plataforma donde los desarrolladores ejecutan experimentos y encuentran la arquitectura de modelo más óptima. Es el banco de pruebas para experimentos donde un desarrollador ejecuta múltiples experimentos y prueba diferentes arquitecturas de modelos, intenta encontrar funciones de pérdida apropiadas y experimenta con los hiperparámetros de los modelos.
JupyterLabs ha sido una de las herramientas interactivas más populares para el desarrollo de ML con Python. Por lo tanto, esta plataforma puede aprovechar el entorno de JupyterLab para escribir y ejecutar código. Esta plataforma necesita acceso a la Plataforma de Datos y debe tener soporte para todo tipo de Conectores de Datos para obtener datos de fuentes de datos.
Configuración de una plataforma para el entrenamiento continuo
Una plataforma de ML para comercio electrónico tiene la necesidad de una variedad de modelos: pronósticos, sistemas de recomendación, aprendizaje para clasificar, clasificación, regresión, investigación operativa, etc. Para respaldar el desarrollo de este conjunto diverso de modelos, necesitamos ejecutar varios experimentos de entrenamiento para encontrar el mejor modelo y seguir reentrenando el modelo obtenido cada vez que obtenemos nuevos datos. Por lo tanto, la plataforma de ML debe tener soporte para el entrenamiento continuo junto con CI/CD.
El entrenamiento continuo se logra configurando un flujo de trabajo que obtiene datos del repositorio de características, entrena el modelo utilizando la arquitectura del modelo preestimada por la plataforma de desarrollo continuo, calcula métricas de evaluación y registra el modelo en el registro de modelos si las métricas de evaluación progresan en la dirección correcta. Una vez que el nuevo modelo se registra en el registro de modelos, se crea una nueva versión y se utiliza la misma versión para obtener el modelo durante la implementación.
Pero, ¿qué es un Registro de Modelos y qué son estas métricas de evaluación?
Registro de modelos
- Un registro de modelos es una plataforma centralizada que almacena y gestiona modelos de ML entrenados. Almacena los pesos del modelo y mantiene un historial de versiones del modelo. Un registro de modelos es una herramienta muy útil para organizar diferentes versiones del modelo.
- Además de los pesos del modelo, un registro de modelos también almacena metadatos sobre los datos y los modelos.
- Un registro de modelos debe tener soporte para una amplia variedad de tipos de modelos como modelos basados en TensorFlow, modelos basados en sklearn, modelos basados en transformers, etc.
- Herramientas como neptune.ai tienen un soporte fantástico para un registro de modelos para agilizar este proceso.
- Cada vez que se registra un modelo, se genera un ID único para ese modelo y se utiliza para realizar un seguimiento del modelo para la implementación.
Con neptune.ai puedes guardar tus modelos listos para producción en un registro centralizado. Esto te permitirá versionar, revisar y acceder a tus modelos y metadatos asociados en un solo lugar.
- Consulta una descripción general completa del registro de modelos en la documentación
Selección de las mejores métricas de evaluación
Las métricas de evaluación nos ayudan a decidir el rendimiento de una versión del algoritmo. En comercio electrónico, para sistemas de recomendación u cualquier otro algoritmo que afecte directamente la experiencia del cliente, existen dos métodos para evaluar esos modelos, “evaluación fuera de línea” y “evaluación en línea”.
En el caso de la “evaluación fuera de línea”, el rendimiento del modelo se evalúa en función de un conjunto de métricas predefinidas que se calculan en un conjunto de datos predefinido. Este método es más rápido y fácil de usar, pero estos resultados no siempre están correlacionados con el comportamiento real del usuario, ya que estos métodos no logran capturar el sesgo del usuario.
Los diferentes usuarios que viven en diferentes ubicaciones geográficas introducen su sesgo de selección y sesgo cultural en la plataforma de comercio electrónico. A menos que capturemos dicho sesgo a través de la interacción directa de los usuarios con la plataforma, es difícil evaluar una nueva versión del modelo.
Por lo tanto, utilizamos métodos como la prueba A/B y/o la interleaved para evaluar un algoritmo implementando esa solución en la plataforma y luego capturando cómo los usuarios interactúan con el sistema antiguo y el nuevo.
Prueba A/B
En comercio electrónico, se realiza una prueba A/B para comparar dos versiones de sistemas de recomendación o algoritmos considerando el algoritmo anterior como control y la nueva versión del algoritmo como experimento.
Los usuarios con características demográficas, intereses, necesidades dietéticas y preferencias similares se dividen en dos grupos para reducir el sesgo de selección. Un grupo de usuarios interactúa con el sistema antiguo, mientras que otro grupo de usuarios interactúa con el nuevo sistema.
Se capturan y comparan un conjunto de métricas de conversión, como el número de pedidos, el valor bruto de la mercancía (GMV), ATC/pedido, etc., formulando una prueba de hipótesis para concluir con significación estadística.
Puede ser necesario ejecutar un experimento de prueba A/B durante 3-4 semanas para obtener evidencia concluyente con significación estadística. El tiempo depende del número de usuarios que participan en los experimentos.
Interleaved
La interleaved es una alternativa a la prueba A/B donde se logra un objetivo similar pero en menos tiempo. En la interleaved, en lugar de dividir a los usuarios en 2 grupos, se crea una lista combinada de clasificaciones mezclando alternativamente los resultados de 2 versiones del algoritmo de recomendación.

Para evaluar un algoritmo de sistema de recomendación, necesitamos tanto métodos de evaluación en línea como fuera de línea. Donde la evaluación fuera de línea utilizando métricas como NDCG (Ganancia acumulativa descontada normalizada), Tau de Kendall, Precisión y Recuperación ayuda a un desarrollador a ajustar y probar un algoritmo en un marco de tiempo muy rápido, la evaluación en línea proporciona una evaluación más realista pero lleva más tiempo.
Una vez que se realizan las evaluaciones en línea y/o fuera de línea, las métricas de evaluación se almacenan en una tabla y se compara el rendimiento del modelo para decidir si el nuevo modelo supera a otros modelos. Si es así, el modelo se registra en un registro de modelos.
Framework de servicio de modelos
Una vez que se desarrolla un modelo de aprendizaje automático, el siguiente desafío es servir el modelo en el sistema de producción. Servir un modelo de aprendizaje automático a veces es un desafío debido a las restricciones operativas.
Principalmente, existen dos tipos de servicio de modelos:
- Implementación en tiempo real: En este tipo de sistemas, el modelo se implementa en un sistema en línea donde se obtiene la salida del modelo en una fracción muy pequeña de tiempo. Este conjunto de modelos es muy sensible a la latencia y requiere optimización para cumplir con los requisitos de latencia. La mayoría de los sistemas críticos para el negocio en el mundo real requieren procesamiento en tiempo real.
- Implementación por lotes: En este tipo de sistemas, la salida del modelo se infiere en un lote de muestras. Típicamente, se programa una tarea para ejecutar la salida del modelo. En este tipo de implementación, hay relativamente menos atención a los problemas de latencia.
Necesitamos lograr baja latencia para el modo en tiempo real o en lotes pequeños. El proceso de servicio y optimización está sujeto a la elección del marco de trabajo y el tipo de modelo. En las siguientes secciones, discutiremos algunas de las herramientas populares que ayudan a lograr baja latencia para servir modelos de ML en el sistema de producción.
Open neural network exchange (ONNX)
La optimización del tiempo de inferencia de un modelo de aprendizaje automático es difícil porque se necesita optimizar los parámetros y la arquitectura del modelo y también ajustarlos para la configuración del hardware. Dependiendo de si se ejecuta el modelo en GPU/CPU o en la nube/edge, este problema se vuelve desafiante. Es inabordable optimizar y ajustar el modelo para diferentes tipos de plataformas de hardware y entornos de software. Aquí es donde ONNX entra en juego.
ONNX es un estándar abierto para representar modelos de aprendizaje automático. Un modelo construido en TensorFlow, Keras, PyTorch, scikit-learn, etc., se puede convertir a un formato ONNX estándar para que el modelo ONNX se ejecute en una variedad de plataformas y dispositivos. ONNX tiene soporte tanto para redes neuronales profundas como para modelos de aprendizaje automático clásicos. Por lo tanto, tener ONNX como parte de la plataforma de ML ahorra mucho tiempo para iterar rápidamente.
Servidor de inferencia Triton
Los modelos de visión por computadora y los modelos de lenguaje pueden tener muchos parámetros y, por lo tanto, requieren mucho tiempo durante la inferencia. A veces, se requiere realizar un conjunto de optimizaciones para mejorar el tiempo de inferencia del modelo. Triton Inference Server, desarrollado por NVIDIA AI Platform, ofrece desplegar, ejecutar y escalar un modelo de ML entrenado en cualquier tipo de infraestructura.
Tiene soporte para TensorFlow, NVIDIA® TensorRT™, PyTorch, MXNet, Python, ONNX, XGBoost, scikit-learn, RandomForest, OpenVINO, etc. Triton Inference Server también tiene soporte para el modelo de lenguaje grande, donde se divide un modelo grande en varios archivos y se ejecuta en múltiples GPUs en lugar de solo una.
Aquí hay algunos enlaces útiles relacionados con esto: triton-inference, guía sobre triton-server.
Monitoreo del modelo
El rendimiento de un modelo de ML puede deteriorarse con el tiempo debido a factores como el cambio de concepto, el cambio de datos y el cambio de covariables. Consideremos el ejemplo de un sistema de recomendación de productos en comercio electrónico.
¿Crees que un modelo que fue entrenado utilizando datos del período anterior a la pandemia funcionaría igual de bien después de la pandemia? Debido a este tipo de circunstancias imprevistas, el comportamiento del usuario ha cambiado mucho.
-
1
Ahora muchos usuarios se centran en comprar artículos de primera necesidad en lugar de dispositivos caros. -
2
Además, muchos productos podrían estar agotados debido a problemas en la cadena de suministro. -
3
Sin mencionar que en el comercio electrónico, el patrón de compra de un usuario cambia con la edad del usuario.
Por lo tanto, los sistemas de recomendación para tu comercio electrónico podrían volverse irrelevantes después de un tiempo debido a tales cambios.
Algunas personas creen que el monitoreo del modelo no es necesariamente necesario ya que la reentrenamiento periódico del modelo de todos modos se encarga de cualquier forma de cambio. Esto es cierto, pero esta idea solo es útil si el modelo no es demasiado grande. Gradualmente nos estamos moviendo hacia modelos más grandes. El reentrenamiento de tales modelos es costoso y podría implicar costos enormes. Por lo tanto, establecer un sistema de monitoreo del modelo te ayuda a navegar por estas dificultades.
Mejores prácticas para construir una plataforma MLOps para el comercio minorista
Un equipo de ML en el comercio minorista resuelve una variedad de problemas, desde la previsión hasta los sistemas de recomendación. Configurar la plataforma MLOps de la manera correcta es esencial para el éxito del equipo. A continuación se muestra una lista no exhaustiva de prácticas a las que se debe adherir para construir un sistema MLOps eficiente para el comercio electrónico.

Versionamiento de modelos
Mientras se desarrolla un modelo de ML en el comercio electrónico, un equipo realiza muchos experimentos. En el proceso, el equipo crea múltiples modelos. Se vuelve difícil gestionar tantas versiones de modelos.
La mejor práctica es mantener un registro de modelos donde se registra un modelo junto con sus métricas de rendimiento y metadatos específicos del modelo. Por lo tanto, cada vez que se crea un nuevo modelo, se adjunta un identificador de versión al modelo y se almacena en el registro de modelos.
Durante la implementación, un modelo se extrae del registro de modelos y se implementa en el dispositivo objetivo. Al mantener un registro de modelos, se puede optar por volver a versiones anteriores de los modelos según sea necesario.
Mantener un almacén de características
Los científicos de datos pasan mucho tiempo convirtiendo datos sin procesar en características. Diría que aproximadamente ~70% del esfuerzo de un científico de datos se destina a preparar el conjunto de datos. Por lo tanto, automatizar el proceso de preprocesamiento y postprocesamiento de los datos para crear características reduce los esfuerzos redundantes.
Un almacén de características es una plataforma centralizada para almacenar, administrar y distribuir características. Este repositorio centralizado ayuda a acceder a las características de varios equipos, permite la colaboración cruzada y facilita el desarrollo de modelos más rápidos.
Seguimiento de métricas de rendimiento
Muchos modelos de aprendizaje automático en el comercio electrónico maduran con el tiempo. A través de un proceso iterativo, gradualmente mejora el rendimiento de un modelo a medida que obtenemos mejores datos y encontramos una mejor arquitectura. Una de las mejores prácticas es estar pendiente del progreso de las métricas de evaluación. Por lo tanto, es una buena práctica crear paneles de control con métricas de evaluación de algoritmos y monitorear si el equipo está progresando en la dirección correcta.
Construcción de una canalización de CI/CD
CI/CD es absolutamente necesario para cualquier sistema de MLOps. Permite una entrega más rápida y eficiente de los cambios de código a producción. La canalización de CI/CD agiliza el proceso desde la confirmación del código hasta la generación de la compilación. Ejecuta un conjunto de pruebas automatizadas cada vez que se confirma un código y proporciona comentarios al desarrollador sobre los cambios. Esto da confianza a los desarrolladores para escribir código de calidad.
Monitoreo de cambios en los datos y en el concepto
Configurar una alerta para identificar cambios significativos en la distribución de los datos (para capturar cambios en los datos) o cambios significativos en el rendimiento del modelo (para capturar cambios en el concepto) a menudo no se tiene en cuenta, pero es esencial.
Plataforma de prueba A/B robusta
La prueba A/B es el método para evaluar algoritmos basados en la participación de los clientes. Pero a menudo lleva mucho tiempo converger. Por lo tanto, un equipo debe dedicar tiempo a encontrar métodos de evaluación más rápidos, como la intercalación, para construir métodos robustos para probar algoritmos.
Reflexiones finales
Este artículo cubrió los componentes principales de una plataforma de aprendizaje automático y cómo construirlos para un negocio de comercio electrónico. También discutimos la necesidad de una plataforma de aprendizaje automático y resumimos las mejores prácticas a seguir al construirla.
Debido a los avances frecuentes en el campo del aprendizaje automático, en el futuro, algunos de estos componentes y prácticas podrían requerir cambios. Es importante mantenerse al tanto de los últimos avances para asegurarse de hacerlo correctamente. Este artículo fue un intento en una dirección similar y espero que, después de leerlo, encuentre un poco más fácil preparar una plataforma de aprendizaje automático para su negocio minorista.
Referencias
- https://cloud.google.com/architecture/mlops-continuous-delivery-and-automation-pipelines-in-machine-learning
- https://learn.microsoft.com/en-us/azure/machine-learning/concept-onnx
- https://kreuks.github.io/machine%20learning/onnx-serving/
- https://developer.nvidia.com/nvidia-triton-inference-server
- https://www.run.ai/guides/machine-learning-engineering/triton-inference-server