We use machine learning technology to do auto-translation. Click "English" on top navigation bar to check Chinese version.
How Meesho built a generalized feed ranker using Amazon SageMaker inference
This is a guest post co-written by Rama Badrinath, Divay Jindal and Utkarsh Agrawal at Meesho.
As an ecommerce platform, Meesho aims to improve the user experience by offering personalized and relevant product recommendations. We wanted to create a generalized feed ranker that considers individual preferences and historical behavior to effectively display products in each user’s feed. Through this, we wanted to boost user engagement, conversion rates, and overall business growth by tailoring the shopping experience to each customer’s unique requirements and providing the best value for their money.
We used Amazon Web Services machine learning (ML) services like
Solution overview
To personalize users’ feeds, we analyzed extensive historical data, extracting insights into features that include browsing patterns and interests. These valuable features are used to construct ranking models. The GFR personalizes each user’s feed in real time, considering various factors like geography, prior shopping pattern, acquisition channels, and more. Several interaction-based features are also used to capture the affinity of the user towards an item, item category, or item properties like price, rating, or discount.
Several user-agnostic features and scores at item level are used as well. These include an item popularity score and item propensity to buy score. All these features go as input to the Learning to Rank (LTR) model that tries to emit the Probability of Click (PCTR) and Probability of Purchase (PCVR).
For diverse and relevant recommendations, the GFR sources candidate products from multiple channels, including exploit (known user preferences), explore (novel and potentially interesting products), popularity (trending items), and recent (latest additions).
The following diagram illustrates the GFR architecture.
The architecture can be divided into two different components: model training and model deployment. In the following sections, we discuss each component and the Amazon Web Services services used in more detail.
Model training
Meesho used
We used a time sampling strategy to create training, validation, and test datasets for model training. We kept track of various metrics to evaluate the performance of the model—the most important ones being area under the ROC curve and area under the precision recall curve. We also tracked calibration of the model to prevent overconfidence and underconfidence issues while predicting the probability scores.
Model deployment
Meesho used SageMaker inference endpoints with auto scaling enabled for deploying the trained model. SageMaker offered ease of deployment with support for various ML frameworks, allowing models to be served with low latency. Although Amazon Web Services offers standard inference images suitable for most use cases, we built a custom inference image that caters specifically to our needs and pushed it to
We built an in-house A/B testing platform that facilitated live monitoring of A/B metrics, enabling us to make data-driven decisions promptly. We also used the
We kept track of various drifts such as feature drift and prior drift multiple times a day after model deployment to prevent the model performance from deteriorating.
We used
The recommendation workflow after model deployment works as follows (as noted in the solution architecture diagram):
- The input requests with user context and interaction features are received at the application layer from Meesho’s mobile and web app.
- The application layer fetches additional features like historical data of the user from the online feature store and appends these to the input requests.
- The appended features are sent to the real-time endpoints for generating recommendations.
- The model predictions are sent back to the application layer.
- The application layer uses these predictions to personalize the user feeds on the mobile or web application.
Conclusion
Meesho successfully implemented a generalized feed ranker using SageMaker, which resulted in highly personalized product recommendations for each customer based on their preferences and historical behavior. This approach significantly improved user engagement and led to higher conversion rates, contributing to the company’s overall business growth. As a result of utilizing Amazon Web Services services, our ML lifecycle runtime reduced significantly, from taking months to just weeks, leading to increased efficiency and productivity for our team.
With this advanced feed ranker, Meesho continues to deliver tailored shopping experiences, adding more value to its customers and fulfilling its mission to democratize ecommerce for everyone.
The team is grateful for the continuous support and guidance from
To learn more about SageMaker, refer to the
About the Authors
Utkarsh Agrawal
Rama Badrinath
Divay Jindal
Venugopal Pai is a Solutions Architect at Amazon Web Services. He lives in Bengaluru, India, and helps digital-native customers scale and optimize their applications on Amazon Web Services.
The mentioned AWS GenAI Services service names relating to generative AI are only available or previewed in the Global Regions. Amazon Web Services China promotes AWS GenAI Services relating to generative AI solely for China-to-global business purposes and/or advanced technology introduction.