For years, the big eCommerce players have leveraged ML to provide individualized, dynamic, and practical recommendations. But unfortunately, small and medium-sized eCommerce players didn’t have the budget, resources, or volume to integrate ML solutions into their systems. But now, the landscape is changing.
Franco Folini
ML (Machine Learning) and AI (Artificial Intelligence) tools are becoming increasingly affordable and accessible. The complexity and cost thresholds a problem must meet to qualify for ML treatment are quickly going down. Many small tasks, such as providing product recommendations to e-commerce website visitors, can now be approached with ML solutions. The benefits are significant.
For years, the big eCommerce players have leveraged ML to provide individualized, dynamic, and practical recommendations. But unfortunately, small and medium-sized eCommerce players didn’t have the budget, resources, or volume to integrate ML solutions into their systems. But now, the landscape is changing. New companies are entering the market, offering affordable ML solutions that can be quickly and effectively integrated with almost any eCommerce platform.
Old Product Recommendation Systems
A classic way to generate product recommendations is to analyze converted carts and orders and use an algorithm to predict which product a customer is most likely to purchase. When the number of orders is very small, companies can also include abandoned carts in the analysis. One of the most popular algorithms to analyze the recent collective purchase history of the customers of an e-commerce website is the following:
To find the best recommendation for a user who purchased or added to the cart product P, the most straightforward contextual recommendation algorithm can be summarized with the following steps:
- Select all recent orders with product P and at least one additional product
- Create a list of products that appear in orders with P, and for each, calculate its frequency.
- Sort the list by frequency and get the top product.
- If the top product doesn’t violate any business rule, you are done; otherwise, discard the top product and repeat this step with the product in the following position.
Business rules are usually specific to each industry. For example, if an eCommerce store sells clothes, the product to recommend on product P should be for the same gender and possibly for the same season. If, for example, P is a bundle, the recommended product should not be a component of the bundle.
New Product Recommendation Systems
One of the most popular ML recommendation algorithms, which is based exclusively on purchase history, is Collaborative Filtering (CF). Collaborative Filtering takes into account both similarities among products and among users. For a complete description of the Collaborative Filtering algorithm, I recommend the Google pages on Recommendation Systems.
A more advanced Recommendation System can also consider additional signals, such as the user’s navigation history, their profile (including preferences, body size, and type for clothing stores), and current sales trends.
On top of that, the recommendation system must filter recommendations based on business rules. As in the classical recommendation engines, business rules can vary from industry to industry and even from one product category to another. Specific business rules should also drive the inclusion or exclusion of products currently undergoing some critical promotion. Some of these promotions could be limited to customers who meet conditions that the recommendation engine cannot quickly and easily verify. In the past, I had to deal with some crazy promotions from manufacturers like “only for people who didn’t purchase anything in the last two years” or “only for owners of a certain product who didn’t upgrade in the last X days.”
A dynamic recommendation engine should also be connected to the stock management system to avoid recommending out-of-stock products. Finally, a good approach is to avoid recommending products that received a bad review, at least until they receive a more recent positive review.
A dynamic recommendation engine should also be connected to the stock management system to avoid recommending out-of-stock products. The algorithm should also avoid recommending products that received a significant percentage of bad reviews.
Franco Folini
What are the benefits of an ML Recommendation System?
The use of ML is not enough to guarantee superior quality for the recommendations. However, ML systems that leverage multiple signals, such as stock levels, product reviews, trends, navigation history, social-media trends, and industry-specific business rules, can create top-quality, hyper-personalized recommendations that drive high conversion rates. Here is a partial list of the benefits of an ideal ML recommendation system:
- Personalization: Each visitor gets a different personalized recommendation based on their profile, purchase history, visit history, etc. E.g., after purchasing an item, customers receive recommendations that are significantly different from those they received before.
- Dynamicity: Recommendations are continually updated with the latest available information. The recommendation engine should gather signals from user history, visitor behavior, market conditions, stock levels, and other factors.
- Transparency: If a model, color, or size is missing, the alternative recommendation includes an explanation to the customer outlining the compromise.
- Relevance: The recommendation is always relevant and helps the customer. It fits in their customer journey. It’s not, and it doesn’t look like a sales pitch. The user perceives being helped, not being pushed.
- Actionability: The recommended products can be purchased immediately. They exist, are in stock, and are available in the size, color, and options matching the visitor’s profile. If a recommendation includes a product in a promotion, the recommendation engine has already checked that the visitor qualifies for the promotion.
- Usefulness: The recommended product is not just a variation of what the user already purchased or added to the cart. It is the product most likely to be bought by that user at that moment. E.g., if a user just purchased a smartphone, the recommendation should recommend headsets, chargers, phone covers, etc., not another phone.
- Variety: Recommending the same product or only the most well-known items can bore customers. The recommendation system should add some variety. The major obstacle to variety is sparsity. For less popular products, there may not be enough data to make a confident recommendation. The risk is that these products could become part of a self-perpetuating cycle and never be included in any recommendation.
What are the options on the market for an ML Recommendation System?
I didn’t have the resources to test drive all of the options available on the market, but there are a few products to consider:
