When people shop, they buy products they like or that others recommend to them, because they trust their opinion. In today’s digital age, online stores offer hundreds of thousands of products to their customers. To help them search through these products and purchase the most suitable of them, online stores use recommendation systems.
Moreover, content providers (e.g. music, movies) and social networking services use recommendation systems to manage content and create effective recommendations for users.
Simply put, recommendation systems act as an automated form of a customer assistant that not only shows the product you asked for but also shows ones that are somehow related or you might also like. They are among the most popular machine learning technologies used in business to personalize content for customers.
What are the benefits of Recommendation Systems?
The most obvious goal of a recommendation system is to recommend relevant products to the user. Steve Jobs said: “A lot of times, people don’t know what they want until you show it to them” [1]. Referring to Job’s words, we can say that one of the secondary goals of a recommendation system is to show users products that they have not seen in the past and might like. Matching recommendations well can help improve overall user satisfaction, which makes it more likely for the consumer to use the website or app again.
One of the best-known users and pioneers of the recommendation systems is Amazon.com. Amazon uses recommendations to personalize the online store for each customer, which results in 35% of Amazon’s revenue [2].
Another famous example of a recommendation system is the algorithm Netflix uses. According to McKinsey, 75% of what users watch on Netflix come from movie recommendations [3]. In the paper “The Netflix Recommender System: Algorithms, Business Value, and Innovation” [4] written by Netflix executives (Carlos A. Gomez-Uribe and Neil Hunt) authors state that the recommendation system saves the company around $1 billion each year.
According to Spotify, the implementation of the new recommendation algorithm has helped increase their number of monthly users from 75 million to 100 million [5].
What type of data do Recommendation Systems use?
The most important element in building a Recommendation System is data. There are three types of data: explicit data, implicit data, and product description.
Explicit data usually has the form of a number (e.g. 5-star ratings) given by a user to a product. Examples of explicit data are ratings of products given by customers on Amazon or course ratings of courses by users in the Udemy learning platform. This type of data is hard to collect because they require additional input from the users, so it takes more time to get a pool of ratings broad enough to build a useful Machine Learning model.
Implicit data is easy to collect. It is any data focused on how the user interacts with the products/content available. The main problem with this type of data is how to convert user behavior into user preferences. But there are efficient ways to do it. Examples of implicit data are: the number of times a song is played on Spotify, the number of clicks on product links, or purchase history on Amazon.
The last type of data is product description. Because this type of data is often unstructured (e.g. has a form of a free text), we need to implement some additional pre-processing to extract the relevant information and put it in a structured form. Examples of product descriptions are a list of cast of a movie on Netflix, a songwriter on Spotify, or the product description on Amazon.
What types of Recommendation Systems are there?
Once the data has been collected, we can start building a Recommendation System. There are four main types:
Popularity based
The easiest type of recommendation system is based on item popularity. This system calculates product ratings using explicit or implicit data. Below you can find two examples of popularity based recommendation systems for a movie provider:
- using explicit data – suggests popular movies based on the average of the user 5-stars ratings,
- using implicit data – suggests popular movies on the base of the number of times users played it.
The most important advantages of popularity-based recommendation systems are:
- It is user cold-start resistant. The system can suggest products without any information about the user.
- It can be used in environments with a small number of users.
The most important disadvantage is:
- Every user has the same recommendation list.
- Item cold start problem. The system cannot propose an item that has never been selected or a rating by other users before.
Content-based filtering
Content-based filtering methods are based on product descriptions and user preferences. This type of system recommends products similar to the products the user has liked in the past. This type of recommendation system is based on three steps:
- Product description analyzer – in this step, product descriptions are analyzed using a feature extraction technique to transform original descriptions into an item vector. Using item vectors, the system calculates the similarities between products.
- User profile analyzer – in the second step, the system collects user preferences, user history data, and constructs the user profile which is represented by the user vector. Features described in the user vector are the same as the features in the item vectors.
- Component filtering – in the last step, the system chooses recommendations basing on the user and items vectors (e.g. using cosine similarity).
Advantages of content-based filtering are:
- No item cold-start problem. The system can recommend products before any users try them.
- It is adaptive. Captures changes in users’ interests.
- Items recommended for one user do not depend on other users.
- Recommends unpopular products.
Disadvantages of this solution are:
- Product information is necessary.
- User cold-start problem. The system cannot produce recommendations when there is not enough information to build a user profile.
Collaborative filtering
In collaborative filtering, the system analyzes information about preferences, behavior, and activities of all users to predict what you might like. Simply put, the system recommends items that other users with similar tastes and behavior liked. The main assumption of this method is that people who liked similar products in the past will also like similar products in the future.
The most important advantages of collaborative filtering are:
- The content of the product is not required to be in any way understood or described neither by the creator of the system nor the system itself. This means that the system can recommend products without any analysis of the product itself.
- It is adaptive. The system captures changes in users’ interests.
The most important disadvantages are:
- User cold-start problem. The system cannot recommend products to new users who have not had any interaction yet.
- Item cold-start problem. The system cannot also recommend an item that users never selected before.
Hybrid
Hybrid Recommendation Systems combine content-based and collaborative methods. This solution can be more effective in practice than any of the two methods separately.
A Hybrid system is used on Netflix, where the movie recommendations are the result of both comparing the watching habits of similar users (collaborative filtering) and finding movies that have similar characteristics like films that user has liked in the past (content-based filtering).
Summary
Today, more and more online companies use Recommendation Systems to increase user interaction with the services they provide. Recommendation systems are efficient machine learning solutions which can help increase customer satisfaction and retention, and lead to a significant increase in your business revenues.
Interested in Recommendation Systems?
Are you interested in implementing an AI-based solution – such as Recommendation Systems – in your business strategy? If so, you’ve come to the right place. Contact our team to discuss your idea and get a quote in 48 hours.
[1] Edson, J., 2012. Design Like Apple: Seven Principles for Creating Insanely Great Products, Services, and Experiences. John Wiley & Sons. pp. 47
[2] Jones, S.S. and Groom, F.M. eds., 2019. Artificial Intelligence and Machine Learning for Business for Non-Engineers. CRC Press, pp. 86
[3] Alex Castrounis, 2019. AI for People and Business. A Framework for Better Human Experiences and Business Success. (ebook)
[4] Gomez-Uribe, C.A. and Hunt, N., 2015. The netflix recommender system: Algorithms, business value, and innovation. ACM Transactions on Management Information Systems (TMIS), 6(4), pp.1-19.
[5] Leonard, D, 2016. Spotify Is Perfecting the Art of the Playlist on Bloomberg Businessweek