RECOMMENDATION SYSTEMS AND CROSS SELLING APPROACHES FOR BIZIM TOPTAN MARKETS
In our constantly digitalizing environment, it is getting more important and much preferred for the companies to provide personal suggestions to their customers. Especially in grocery retail, there is a high profit potential for those companies which would like to increase sales by offering personalized product suggestions, which ensures sustainable customer satisfaction as well.
For this purpose, the recommendation systems play a key role in customer relationship management. As the aim of recommender systems is to provide suggestions to a set of customers on products that might be interesting for them according to their preferences or interests about the particular products in the past. That is, it can be said that a recommender system has the ability to predict whether a particular customer would prefer a product or not based on the customer’s profile and its historical information.
As a result of the comprehensive understanding of customer profiles, we developed a “Personalized Cross-Sell Activity Model” for Bizim Toptan Markets by using Collaborative Filtering method which is the most famous suggestion engine of recommender systems in machine learning. With this project, we aim;
- to increase possibility to buy for non-purchased but high potential products,
- to reach and communicate to our customers with highly potential product recommendations thanks to customization,
- to enrich advanced data analytics and AI model by cross-sell knowhow.
PROBLEM APPROACH
The underlying assumption of the collaborative filtering approach is that if a customer A has the same opinion as a customer B on a set of products, A is more likely to have B’s opinion for a given product than that of a randomly chosen customer. So, to calculate the similarities between customers and products, we applied two main strategies in collaborative filtering; Memory-based approach and Model-based approach.
Memory-based Approach: This approach uses the memory of previous customers interactions to compute customers similarities based on products they have bought or interacted (user-based approach) or compute products similarities based on the customers that have interacted with them (item-based approach).
As an example of user-based CF, if we have an n x m ratings matrix, with customer c, i=1,2,3,…n and product p, j=1,2,3,…m and here we would like to predict the rating r if the target customer i did not buy a product j.
For this approach, we used User Neighborhood-based CF, in which the closest top-N customers were selected for a customer and used to suggest the most popular products among these neighbors, but the current customer did not buy yet.
Model-based Approach: In this approach, there are many different machine learning algorithms to develop a model and recommend products to customers, but we used a popular matrix factorization model named Singular Value Decomposition (SVD).
This SVD model compresses user-item matrix into a low-dimensional representation in terms of latent factors and thus, instead of having a high dimensional matrix which includes lots of missing values we deal with a reduced presentation of that matrix in lower-dimensional space to handle the sparsity of original rating matrix.
DATASET
As known, to generate the user-item matrix, it is actually customer-product matrix in our scenario, we absolutely need the information about how much a costumer like a particular product or in other words, if we ask a customer to rate a product, what rating will be given for it. We calculated these product ratings for each customer separately according to customers’ historical data in last year by using 4 key metrics;
i. Total sales quantity of the product,
ii. Sales Frequency of the product,
iii. The number of different months the product sold,
iv. Recency of the product
Then, we applied data binning technique and scored each metric from 1 to 4 points. To get a final rating score for each product, we calculated sum of customer-based points and created a user-item matrix.
§ DEVELOPMENT
In this project, we focused on the product-based trends of our 300,000 B2B customers by examining their purchasing behavior for the last year and modelling with machine learning algorithms. After many test results, we realized that model-based approach consistently gave much better solutions rather than memory-based one. Therefore, we decided to use matrix factorization model, SVD, for further steps. General formula of SVD is:
M=UΣVᵗ, where:
· M-is original matrix
· U-is left singular matrix (columns are left singular vectors). U columns contain eigenvectors of matrix MMᵗ
· Σ-is a diagonal matrix containing singular (eigen)values
V-is right singular matrix (columns are right singular vectors). V columns contain eigenvectors of matrix MᵗM
For each customer, we identified the products that they did not purchased before, the best matching ones according to their purchasing tendency. Also, adding new training data in every month ensured that our cross-sell activity model had ability to catch the changing behaviors of customers. When it came to determining communication channels of our customers, we preferred to use SMS campaign communication and sent the personalized product suggestions to the customers via SMS activities.
In order to measure the success of the model, we randomly created a 25% control group and 75% campaign group in each campaign and compared each group according to project KPIs.
§ RESULTS AND PROJECT OUTPUTS
After analysis of our model results, we realized that campaign group’s KPIs were higher than control group and significant gains were achieved in terms of making the accurate campaign offer and communicating to customers with the right products.
Compared to the control group, the results of the customers offered the activity and increase rates as below;
- 26% participation in the activity (from 3% to 3.8%)
- 49% in average basket amount (from 628 to 938)
- 28% in average basket variety (from 8.65 to 11.08)
- 684% in turnover (from 4.1 M TL to 32.4 M TL in 6 months)
Also, in this study, we observed that we were able to increase sales from non-activity products at higher rates compared to the control group. In other words, when we brought the customer to our store with the right products that might be of interest, we ensured that products other than the offer were also added to the basket.
CONCLUSION
As a result, our cross-sell activity model enables customized campaign management by continuously learning customers’ purchasing habits and product tendencies. Thus, it is a tremendous improvement for us to increase sales significantly with more accurate product recommendation and more focused campaign targeting.
I would like to thank all my team members for their great contributions to the project and really appreciate their support.
Talip Akdemir — Data Scientist
References
1.https://towardsdatascience.com/simple-svd-algorithms-13291ad2eef2
2.https://en.wikipedia.org/wiki/Singular_value_decomposition#Relation_to_eigenvalue_decomposition
3.https://jeremykun.com/2016/05/16/singular-value-decomposition-part-2-theorem-proof-algorithm/