23 May How do recommendation systems work?
Recommendation systems are designed to provide recommendations to users based on a set of parameters. These algorithms predict the products people are most likely to buy and the content they are most interested in.
Introduction to recommendation systems
Recommendation systems work with a large amount of data by filtering out the most relevant information based on the data provided by the user and other criteria such as preferences and interests. When these algorithms are presented with a variety of products/content, they must be able to determine compatibility and recommend the most appropriate ones for each user.
These algorithms are used in a wide range of businesses. They can be found in e-commerce (e.g. Amazon), in film, video or music streaming services (e.g. Netflix, YouTube, Spotify), but also in social platforms (e.g. Instagram) and even in delivery services (e.g. Uber Eats).
The different recommendation systems
In this article, we will examine the different paradigms of recommendation systems. For each of them, we will present how they work.
Recommendation systems can be divided mainly into two macro-categories: collaborative filtering methods and content-based methods. Moreover, these two approaches can be combined to create hybrid solutions that exploit the advantages of both.
Below is a summary diagram:
1.Collaborative filtering methods
Collaborative filtering systems use past interactions between users and products (or content) to construct a so-called user-item interaction matrix. New recommendations are extracted on the basis of this matrix. They are based on the assumption that these interactions are sufficient to identify similar users and/or items and recommendations can be predicted on the basis of these similarities.
The class of collaborative filtering algorithms is divided into two subcategories, generally referred to as memory-based and model-based approaches.
1a. Memory-based methods
This methods work without assuming any model. In order to suggest content to the user, they search for the closest users as characteristics and suggest the most popular articles among these ‘nearby users’.
Memory-based methods can in turn be divided into user-based and item-based methods. YouTube uses user-based methods to suggest videos on our homepage. Amazon, on the other hand, uses item-based methods to suggest other articles similar to the one we have selected.
1b. Model-based methods
The model-based methods presuppose an underlying model that explains user-item interactions in order to make new predictions.
An example of a model-based algorithm is matrix factorisation. This algorithm basically consists of decomposing a user-item interaction matrix into a product of two sub-matrices. One of the two contains the representation of the user and the other contains the representation of the item. Users similar in terms of preferences and items similar in terms of characteristics will have similar representations in the new matrix.
In content-based approaches, recommendation problems are transformed into ranking problems (prediction of whether users ‘like’ an item) or regression problems (prediction of how users rate an item).
In both cases, the problem can be based on user features (user-centred method), or on item features (item-centred method).In the first case, one builds a model per item trying to figure out what is the probability that each user likes that item, in the second case, one builds a model per user to figure out what is the probability that that user likes the available items. Alternatively, a model containing both user and item features can also be evaluated.
Collaborative filtering and content-based methods can be combined to create hybrid solutions that exploit the advantages of both.