Internet TV is about choice: what to watch, when to watch, and where to watch, com-
pared with linear broadcast and cable systems that offer whatever is now playing on, perhaps 10-20 favourite channels. Humans are surprisingly bad at choosing be-
tween many options, quickly getting overwhelmed and choosing “none of the above” or making poor choices. However, gone are those old days when humans found it difficult to make choices.
Enter : Netflix and it's Recommender System, powered by such accurate algorithms that predict and recommend what we can watch with such great accuracy.
The Netflix Recommender system consists of a variety of algorithms that together define the Netflix experience and our viewing experience. We have decoded five algorithms, that we will be discussing in detail during the course of this report.
The Personalised Video Ranker Algorithm orders the entire catalog of videos (or subsets selected by genre or other filtering) for each member profile in a personalised way. The resulting ordering is used to select the order of the videos in genre and other rows, and is the reason why the same genre row shown to different members often has completely different videos.
The second algorithm in use is the Top N Video Ranker Algorithm, that produces the recommendations in the Top Picks row. The goal of this Algorithm is to find the best few personalised recommendations in the entire catalog for each member, that is, focusing only on the head of the ranking.
The third algorithm is the “Trending Now”, which shows the videos that are trending in Netflix infused with some personalisation for members. Data Collection for developing this algorithm happens with the following two streams: Viewing History (captures all the videos that are played by members) and Beacon (service that captures all impression events and user activities within Netflix).
All the data collected by the Viewing History and Beacon services are sent to Kafka, a distributed messaging system that handles millions of events per second. A custom stream processor consumes the play and impressions events from Kafka and computes the following - Play popularity (how many times is a video played) and Take Rate (fraction of play events over impression events for a given video)
On a live user request, the aggregated play popularity and take rate data along with other explicit signals such as members’ viewing history and past ratings are used to compute a personalized 'Trending Now' row.
The fourth algorithm in the list is the "Continue Watching" algorithm, that sorts the subset of recently viewed titles based on the best estimate of whether the member intends to resume watching or re-watch, or whether the member has abandoned something not as interesting as anticipated. The algorithm is fuelled by two models - Show Ranking Model (a model that optimises ranking loss function, built using sessions where the member resumed previously-watched shows from a random set of members) and Row Placement Model (a model that estimates the likelihood of the member being in a continuation mode vs. a discovery mode).
The last in line is the Video-Video Similarity Algorithm, which is referred to simply as “sims,” drives the recommendations in 'Because You Watched' rows, on the basis of a single video watched by a member. The sims Algorithm is an unpersonalised algorithm that computes a ranked list of videos—the similars—for every video in an individual catalog.
This strong data-driven approach is the reason behind Netflix's phenomenal success.
You can read the full report here https://datastudio.google.com/open/0B6auPO5bQMJFbmtRTmZVODlZY1k
The research on this report was done by Srividyasai M, Research Associate, Redwood Knowledge Centre, Redwood Algorithms; with assistance from Shefali Mahender, Digital Analytics Consultant, Redwood Algorithms. Compilation and presentation was done by Megha Malpani, Digital Analytics Consultant, Redwood Algorithms. The report was prepared under the guidance of Rajdeep Dutta, Head, Redwood Knowledge Centre.