Choosing the right algorithm for your recommender is an important decision to make. There are a lot of algorithms available and it can be difficult to tell which one is appropriate for the problem you’re trying to solve. Each algorithm has its pros and cons as well as constraints that you would want to have a feeling for before you decide which one to use. In practice, you will probably test out several algorithms in order to discover which one works best for your users and it will help to have strong intuition about what they are and how they work.
Recommender algorithms are typically implemented in the recommender model (2), which is responsible for taking data, such as user preferences and descriptions of the items that can be recommended, and predicting which items will be of interest to a given set of users.
There are four main families of recommender algorithms (Tables 1-4):
- Collaborative Filtering
- Content-based Filtering
- Hybrid Approaches
There’s also a number of advanced or non-traditional approaches (Table 5).
This is the first in a multi-part post. In this post, we’ll introduce the main types of recommender algorithms by providing a cheatsheet for them. It includes a brief description of the algorithm, its typical input, common forms that it can take and its pros and cons. In the second and third posts, we’ll then describe the different algorithms in more detail, to give a deeper understanding for how they work. Some of the content in this blog post is based on a RecSys 2014 tutorial, The Recommender Problem Revisited, by Xavier Amatriain.