Recommender Systems in 10 minutes!
By: Rohit Baney
Tags: Introduction, Netflix, Artificial Intelligence, Machine Learning, Recommendation System

Recommender Systems in 10 minutes!

What are they and how do they Work? An Introduction for the Everyday Person. Rohit Baney Follow Sep 6 · 11 min read

Image by Nicolas J Leclercq on Unsplash

Amidst the onslaught of the coronavirus pandemic, we have become intimately familiar with online services like Netflix, Amazon and Spotify. Being stuck at home, we use their services on a daily basis to do things like buy products and entertain ourselves. As you continue to use these services, you might notice that they often recommend you movies to watch, songs to listen to, or products to buy. How do they do this? Are these recommendations random? Do these services recommend the same products to everyone?

A quick glance at a friend’s Netflix account or their Amazon recommendations tells us that these services are delivering personalized recommendations on their products. They do this using a very clever application of Machine Learning known as ‘Recommender Systems’.

Just as the name suggests, these systems are designed to recommend products to you that you are likely to enjoy. If you’re not familiar with what Machine Learning is, I recommend you read the article ‘Intro to Machine Learning for the Everyday Person’.

However, even if you have no clue what machine learning is, don’t worry. I will strive to make this article as accessible as possible by breaking down technical concepts into bite-sized portions that are easily digestible by the everyday person. By the end of this article, you should have a good sense of how services like Amazon and Netflix create personalized recommendations for their users.

While there are many different algorithms and techniques used for recommendation, they can be broadly assigned into four categories:

- Popularity Based Systems

- Classification Model Systems

- Collaborative Filtering

- Hybrid Approaches

These categories are in no way definitive or exhaustive. There are new types of recommender systems being created every day and they are categorized differently by different people. However, it remains true that every type of recommender system has it’s own pros and cons.

1. Popularity-based Systems

The first and most simple type of recommender system is the ‘Popularity Based System’. Here, the system recommends its most popular products to the user. The advantage of this type of system is that it requires very little data to implement. Thus, it might be an option for a company or a service that is in its nascent stages of development and doesn't have access to large amounts of its user’s data.

Image by author via IMDB

The obvious downside to this kind of system is that it is not personalized. Everyone will be getting the same recommendations regardless of their personal preferences. In the context of a streaming service like Netflix, this would mean that people are getting recommended the most popular movies based on a rating system, such as the one IMDB uses. The system would recommend the same movies to fans of horror movies and comedies. This would make for poor recommendations on a personal level, but it can still be used to make recommendations while a company collects data on its users.

2. Classification-based Recommendations

A slightly more sophisticated type of Recommender system is a ‘Classification-based’ Recommender System. These systems use information about users and/or products to classify them into categories. The system then uses this information to match users to products that they might enjoy.

2.1 User-based

Here, users are first classified based on various criteria and are then recommended products based on those classifications.

Image by author via Netflix

For instance, users could be categorized based on demographics such as nationality, age or gender. A company like Netflix, then, would recommend movies based on the user’s demographics. If the user is, say, a teenage boy of Indian nationality, he would be recommended Bollywood action movies targeted towards his demographic. Similarly, if the user, instead, is a toddler in Spain, he would be recommended Spanish cartoons.

This type of classification system is not limited to just Netflix. Any company selling products or services can leverage this type of recommender system to better match users to products and services that they will potentially enjoy.

The difficulty in implementing this system is that is relies heavily on thorough and accurate data about its users. Collecting this data is often difficult. Additionally, using this data to accurately classify users and match them to potentially desirable products can prove to be a challenge as well. This brings us to the next type of recommender system called ‘Content-based’ recommender systems.

2.2 Item-based

This type of recommender system is similar to user-based systems. The key difference is that instead of categorizing users, it categorizes its products. In practice, this would mean that the products/ services offered by a company are categorized based on its features and then recommended to users based on those categories.

Since these systems don’t rely on accurate classification of its users, it can be a tad-bit easier to implement than user-based systems. The main challenger here lies in a company accurately classifying its products and services. Unsurprisingly, this type of system works especially well on a streaming service like Netflix. Movies generally come pre-classified based on their genres. This makes it easy for Netflix to recommend similar movies to a user based on their watching history. For example, if a user tends to like horror movies and action movies, the system leans towards recommending movies of these genres over other genres. This is why if you peek into a friend’s Netflix account, his/her recommendations can be wildly different from your own.

While classification-based recommender systems work fairly well, they still rely on gathering data about users and products and then implementing systems that can accurately classify users and products. They unfortunately, don’t scale very well and companies with enormous amounts of data might find it impractical to implement these solutions. The solution to this is a recommender system based on the idea of ‘Collaborative Filtering’.

3. Collaborative Filtering

Collaborative Filtering is widely considered to be the gold standard of recommender systems. It uses a clever method of operation that scales extremely well with large amounts of data. Anyone who has studied recommender systems is probably familiar with this type of system, but for those of us who aren’t, let me catch you up to speed.

The basic idea behind collaborative filtering is that users who have liked similar products in the past will like similar products in the future. This is a pretty straightforward and intuitive idea. If you are looking for a new movie to watch, for example, you would ask a friend who has a similar taste in movies as you do. This is precisely the idea on which collaborative filtering runs.