Understanding Netflix’s Personalized Recommendation System
Suppose you are sitting in front of your device after a long hectic day, planning to watch something with no remembrance of what kind of movie or show you watched recently. Today, everyone wants an AI equipped online streaming platform that can understand their preferences and taste without merely running on autopilot. And Netflix is leading this battle when compared to other OTT platforms like Amazon Prime and Disney+.
With over 190 million paid subscribers across 192 countries, over 17000 titles across its regional libraries and 160 Emmy Award Nominations in 2020, Netflix is the world’s leading and the most-valued streaming service in the world. It is continually deploying AI solutions to deliver a more personalized experience to their customers. So, how does this streaming giant use AI/Machine Learning/Data to improve their service? Although, there are a lot of aspects in which AI/ML is used, in this article I will dwell upon Netflix’s personalized recommendation system and briefly talk about the personalization of thumbnails Netflix does for different movies and shows.
- Personalization of Content Recommendations — Users who watch A are likely to watch B. This is perhaps the most well known feature of Netflix. Netflix uses the watching history of other users with similar tastes to recommend what you may be most interested in watching next so that you stay engaged and continue your monthly subscription for more.
- Personalization and Auto-Generation of Thumbnails — Using thousands of video frames from an existing movie or show as a starting point for thumbnail generation, Netflix annotates these images then ranks each image in an effort to identify which thumbnails have the highest likelihood of resulting in your click. These calculations are based on what others who are similar to you have clicked on. One finding could be that users who like certain actors / movie genres are more likely to click thumbnails with certain actors/image attributes. ( I Will talk about this in greater detail in my next article)
These applications of data science or machine learning just in Netflix alone have had such scalable impact that they have forever changed the technology landscape and user experience for millions and more to come. Deployment of these AI-related solutions is only going to get stronger over time. The cases discussed above are the end product that we receive. But someone or some group within Netflix must have properly connected these AI solutions with a business need . Without a business link, these cases would simply be pie-in-the-sky ideas sitting at the bottom of a backlog like so many other great ideas. Only through proper positioning and connection with Netflix’s core business problem did these ideas become the reality that they are today.
Let’s identify the problem associated with content recommendation. Well, the problem is that Netflix has a huge collection of content that is constantly changing and can be quite overwhelming for an user to consume. Viewers don’t want to be frustrated in finding content relevant to their interests. Also, Netflix just has a 150-second window to help viewers find a movie or a TV show before they leave the platform and visit some other service. So then, what is the best way to allow each user to consume content in a way that ultimately hook users and maximizes subscription loyalty?
To solve this problem the product goals should include (i) Increase/maintain viewership in terms of number of minutes consumed; (ii) Increase in number of titles explored, and frequency of logging back in; (iii) Exceeding whichever minimum threshold that the company determines is a success metric; (iv) Overall increase in monthly subscription loyalty/decrease in subscriber cancellations.
Now let’s break down this recommendation model further. So how does Netflix rank titles? It’s quite clear that they utilize a two-tiered row-based ranking system, where ranking happens:
- Within each row (strongest recommendations on the left)
- Across rows (strongest recommendations on top)
Each row highlights a particular theme (e.g. Trending, Comedy, Top 10, etc.) and is typically generated using an algorithm. Each user’s homepage consists of approximately 40 rows of up to 75 items (depends on the device one uses). But why do they use rows in the first place? The answer to this can be seen from two perspectives, (i) As a user, it is more coherent when presented a row of items that are similar, and then decide if he/she is interested in watching something in that category; (ii) As a service provider, it is easier to collect feedback as a right-scroll on a row would indicate interest in a particular genre, whilst a scroll-down (ignoring the row) would indicate disinterest.
Netflix also uses a variety of rankers that they mentioned in their paper, though specifics of each model’s architecture is not specified. Here’s a brief summary of each of these rankers.
Personalized Video Ranker— This algorithm usually filters down the catalog by a certain criteria (e.g. Thriller Movies, US TV shows, Romance, etc.), combined with side features including user preferences and popularity.
Top-N Video Ranker — Similar to Personalized Video Ranker, but it only looks at the head of the rankings and looks at the entire catalog. It is optimized using metrics that look at the head of the catalog rankings .
Trending Now Ranker — This algorithm captures temporal trends which Netflix deduces to be strong predictors. These short-term trends can range from a few minutes to a few days. These events/trends can be events that have a seasonal trend and repeat themselves, e.g. Valentines day leads to an uptick in Romance videos being consumed or short term events, e.g. Coronavirus or other disasters, leading to short-term interest in documentaries about them.
Continue Watching Ranker — This algorithm looks at items that the member has consumed but has not completed, like episodic content, e.g. TV Series or non-episodic content that can be consumed in small bits, e.g. movies that are half-completed or series that are episode independent such as Bad Boy Billionaires. This algorithm calculates the probability that an user will continue watching and includes other context-aware signals (e.g. time elapsed since viewing, point of abandonment, device watched on, etc.).
In a presentation by Justin Basilico, he presented on the use of RNNs in time-sensitive sequence prediction which I believe is used in this algorithm. He devised that Netflix could use a particular user’s past plays alongside the contextual information and use this to predict what the user’s next play might be. In particular, using continuous time together with discrete time context as input performs the best.
Video-Video Similarity Ranker — This algorithm basically resembles that of a content-based filtering algorithm. Based on an item consumed by an user, the algorithm computes other similar content(using an item-item similarity matrix) and returns the most similar type of content. It is personalized in the sense that it gives a conscious choice while displaying a particular item’s similar type of content on an user’s homepage.
Each of the above algorithms go through the Row Generation Process seen in the image below. Suppose, if Personalized Video Ranker algorithm is used to look at Thriller titles, it will find movies/series that fit this genre, and at the same time come up with evidence to support the presentation of a row (e.g. previously watched Thriller movies that the user has watched).
So, how does Netflix decide which of these 10,000s of rows to display after these algorithms generate different rows (already ranked within each row vector)? For this Netflix used a template-based approach. This tackles the problem of Page Generation i.e. which rows to include in user’s interface. Netflix wants to accurately predict what users want to watch when they login, but not forgetting that he/she might want to pick up on movies/series that were left off halfway. At the same time, it wants to highlight the depth of its catalog by providing something fresh, and perhaps capture trends that are going on in an user’s region.
All these algorithms and processes come together to provide a good viewership experience. Netflix has done a phenomenal job of applying AI, data science, and machine learning the “right way”. Majority of their users consider recommendations with 80% of the views coming from the service’s recommendations. Also, Netflix’s personalized recommendation algorithms produces $1 billion a year in value from customer retention.
We’ve seen how effective AI solutions can be used in personalizing the experience for the benefit of both Netflix in terms of subscriptions and users in terms of overall satisfaction. And Netflix used a product-based approach that focuses on business need first, then AI solution next, rather than the other way around.
Dig deep and you will see that Netflix generated supporting data before making the strategic move forward. Thus, we can state that Netflix is data driven company and companies across industries can all learn a lesson or two from Netflix’s playbook when it comes to deploying AI solutions.
If you made it till the end then thank you for investing your time in reading this article. I will be talking more about Netflix’s personalized image thumbnails which can be considered as a subset of the content recommendation case in my next article. Stay Tuned!
References
The Netflix Recommender System