[ad_1]
Esta es una publicación invitada en coautoría de Rama Badrinath, Divay Jindal y Utkarsh Agrawal en Meesho.
Meesho es la empresa de comercio electrónico de más rápido crecimiento en la India con la misión de democratizar el comercio en línea para todos y hacerlo accesible a los próximos mil millones de usuarios en la India. Fundada en 2015, Meesho hoy se centra en compradores y vendedores de toda la India. Meesho Marketplace brinda a las micro, pequeñas y medianas empresas y a los propietarios únicos acceso a millones de clientes, una selección de más de 30 categorías y más de 900 subcategorías, logística en toda la India, servicios de pago y funciones de atención al cliente para realizar sus negocios de manera eficiente.
Como plataforma de comercio electrónico, Meesho tiene como objetivo mejorar la experiencia del usuario a través de recomendaciones de productos relevantes y personalizadas. Queríamos crear un clasificador de feeds general que tenga en cuenta las preferencias individuales y el comportamiento histórico para mostrar productos de forma eficaz en el feed de cada usuario. A través de esto, nuestro objetivo era aumentar la participación de los usuarios, las tasas de conversión y el crecimiento general del negocio adaptando la experiencia de compra a las necesidades únicas de cada cliente y ofreciéndoles la mejor relación calidad-precio.
Aprovechamos los servicios de aprendizaje automático (ML) de AWS, como Amazon SageMaker, para desarrollar un potente clasificador de feeds generalizado (GFR). En esta publicación, analizamos los componentes clave de GFR y cómo esta solución impulsada por ML optimiza el ciclo de vida de ML y garantiza una gestión eficiente de la infraestructura, escalabilidad y confiabilidad dentro del ecosistema.
Descripción general de la solución
Para personalizar los feeds de los usuarios, analizamos datos históricos extensos y obtuvimos información sobre características que incluyen patrones e intereses de navegación. Estas valiosas funciones se utilizan para crear modelos de clasificación. El GFR personaliza el feed de cada usuario en tiempo real, teniendo en cuenta diversos factores como la geografía, el comportamiento de compra anterior, los canales de adquisición y más. También se utilizan varias funciones basadas en interacción para capturar la afinidad del usuario por un artículo, categoría de artículo o características del artículo, como precio, calificación o descuento.
También se utilizan varias funciones independientes del usuario y calificaciones a nivel de elemento. Esto incluye una puntuación de popularidad del artículo y una puntuación de propensión a comprar el artículo. Todas estas características fluyen como entrada al modelo Learning to Rank (LTR), que intenta determinar la probabilidad de clic (PCTR) y la probabilidad de compra (PCVR).
Para obtener recomendaciones diversas y relevantes, GFR obtiene productos candidatos de múltiples canales, incluidos Exploit (preferencias de usuario conocidas), Explore (productos novedosos y potencialmente interesantes), Popularity (artículos de tendencia) y Recent (últimas incorporaciones).
El siguiente diagrama ilustra la arquitectura GFR.
La arquitectura se puede dividir en dos componentes diferentes: entrenamiento de modelos e implementación de modelos. En las siguientes secciones entraremos en más detalles sobre los componentes individuales y los servicios de AWS utilizados.
Entrenamiento modelo
Meesho utilizó Amazon EMR con Apache Spark para procesar cientos de millones de puntos de datos, según la complejidad del modelo. Uno de los mayores desafíos fue brindar capacitación distribuida a escala. Usamos Dask, un marco informático distribuido de ciencia de datos que se integra de forma nativa con las bibliotecas de Python, en Amazon EMR para escalar los trabajos de capacitación en todo el clúster. La capacitación distribuida del modelo ayudó a reducir el tiempo de capacitación de días a horas y nos permitió programar trabajos de Spark de manera eficiente y rentable. Utilizamos un almacén de funciones fuera de línea para mantener un registro histórico de todos los valores de funciones utilizados para el entrenamiento del modelo. Los artefactos del modelo de capacitación se almacenan en Amazon Simple Storage Service (Amazon S3), lo que brinda acceso conveniente y administración de versiones.
Utilizamos una estrategia de muestreo de tiempo para crear conjuntos de datos de capacitación, validación y prueba para la capacitación de modelos. Realizamos un seguimiento de varias métricas para evaluar el rendimiento del modelo; las más importantes son el área bajo la curva ROC y el área bajo la curva de recuperación de precisión. También buscamos calibrar el modelo para evitar problemas de exceso o falta de confianza al predecir los valores de probabilidad.
Implementación del modelo
Meesho utilizó puntos finales de inferencia de SageMaker con escalado automático habilitado para implementar el modelo entrenado. SageMaker ofreció una implementación sencilla con soporte para varios marcos de aprendizaje automático, lo que permitió implementar modelos con baja latencia. Aunque AWS ofrece imágenes de inferencia estándar adecuadas para la mayoría de los casos de uso, creamos una imagen de inferencia personalizada específica para nuestras necesidades y la enviamos a Amazon Elastic Container Registry (Amazon ECR).
Hemos creado una plataforma de pruebas A/B interna que permite el monitoreo en vivo de las métricas A/B y nos permite tomar decisiones oportunas basadas en datos. También utilizamos la función de prueba A/B de SageMaker para implementar múltiples variantes de producción en un punto final. A través de experimentos A/B, observamos un aumento en la tasa de conversión de la plataforma de alrededor del 3,5% y un aumento en la cantidad de veces que los usuarios abren la aplicación, destacando la efectividad de este enfoque.
Realizamos un seguimiento de varias desviaciones, como la desviación de características y la desviación anterior, varias veces al día después de la implementación del modelo para evitar la degradación del rendimiento del modelo.
Usamos AWS Lambda para configurar varias automatizaciones y activadores necesarios durante el reentrenamiento de modelos, las actualizaciones de puntos finales y los procesos de monitoreo.
El flujo de trabajo de recomendación después de la implementación del modelo funciona de la siguiente manera (como se indica en el diagrama de arquitectura de la solución):
- Las solicitudes de entrada con contexto de usuario y funciones de interacción se reciben en la capa de aplicación de la aplicación web y móvil de Meesho.
- La capa de aplicación recupera funciones adicionales, como datos históricos del usuario, de la tienda de funciones en línea y los agrega a las solicitudes de entrada.
- Las funciones adjuntas se envían a los puntos finales en tiempo real para generar recomendaciones.
- Las predicciones del modelo se envían de vuelta a la capa de aplicación.
- La capa de aplicación utiliza estas predicciones para personalizar los feeds de los usuarios en la aplicación móvil o web.
Diploma
Meesho implementó con éxito una clasificación de feeds común utilizando SageMaker, lo que dio como resultado recomendaciones de productos altamente personalizadas para cada cliente en función de sus preferencias y comportamiento histórico. Este enfoque mejoró significativamente la participación de los usuarios y dio como resultado tasas de conversión más altas, lo que contribuyó al crecimiento comercial general de la empresa. El uso de los servicios de AWS acortó significativamente nuestro ciclo de vida de ML de varios meses a solo unas pocas semanas, lo que resultó en una mayor eficiencia y productividad para nuestro equipo.
Con este clasificador de feeds avanzado, Meesho continúa brindando experiencias de compra personalizadas, creando valor para sus clientes y cumpliendo su misión de democratizar el comercio electrónico para todos.
El equipo agradece el continuo apoyo y orientación de Ravindra Yadav, director de ciencia de datos de Meesho, y Debdoot Mukherjee, directora de IA de Meesho, quienes han sido fundamentales para este éxito.
Para obtener más información sobre SageMaker, consulte la Guía para desarrolladores de Amazon SageMaker.
Sobre los autores
Utkarsh Agrawal Actualmente trabaja como científico de datos senior en Meesho. Anteriormente, trabajó en Fractal Analytics y Trell en diversas áreas, incluidos sistemas de recomendación, series temporales, PNL y más. Tiene una maestría en matemáticas e informática del Instituto Indio de Tecnología Kharagpur (IIT), India.
Rama Badrinath Actualmente trabaja como científico de datos principal en Meesho. Anteriormente, trabajó con Microsoft y ShareChat en diversas áreas, incluidos sistemas de recomendación, IA de imágenes, PNL y más. Tiene una maestría en Aprendizaje Automático del Instituto Indio de Ciencias (IISc), India. También ha publicado artículos en congresos prestigiosos como KDD y ECIR.
Divay Jindal Actualmente trabaja como científico líder de datos en Meesho. Anteriormente trabajó con Bookmyshow en varias áreas, incluidos sistemas de recomendación y precios dinámicos.
Venugopal Pai es arquitecto de soluciones en AWS. Con sede en Bengaluru, India, ayuda a los clientes nativos digitales a escalar y optimizar sus aplicaciones en AWS.
[ad_2]