Netflix Recommender System Scenario Design Analysis

According to Netflix’s research page, Netflix has several different recommendation systems making recommendations on different aspects of their application. They try to personalize everything on the page, from the artwork that you see on the homepage to the artwork shown on the movie titles. They have another recommender that focuses on what to view,how they are ranked and how they are shown, as far as what row they are in and what column the recommendations are in. They also have a recommender algorithm that sends emails and messages to people to keep them engaged.

All of these systems are focused on the user. It seems as though they only have done a system design scenario once. Which would be for the organizations customers.

Engineering their site

According to Netflix’s help page, when your originally open your account, you are asked what titles you like. These titles set up the first rows and titles shown on the homepage. They use a recommender algorithm to order the titles and rows.

Each row has three layers of personalization. The first layer is the choice of row. Such as horror, comedy or adventure. The second layer is what titles appear in the row and the third layer is the ranking of those titles.

The most strongly recommend rows start at the top and the most strongly recommended titles go from left to right,but this is dependent on the language chosen.

Once a customer starts viewing all the original preferences are superceded and their viewing recommender starts.

The viewing recommender has many different aspects. With the one aspect being a user’s interaction with the application. Another is other members with similar tastes and preferences. They also use the titles information, such as genre, categories actors, release year, to name a few. The time of day that you tend to watch also plays a part. The devices that are being used and how long a customer views. Those are some of the aspects that make up Netflix’s viewing recommender system.

A Simple recommender system example using recommenderlab

In this quick attempt at re-engineering their viewer recommender system I use a UBCF algorithm that is provided in the recommenderlab package.

UBCF is an antonym for user based collaboration filter.The formula for which is:

The cosine similarity measures the cosine of the angle between vectors projected in a multi-dimensional space.

## 
## Listening on http://127.0.0.1:7491

plot of chunk unnamed-chunk-2

## [[1]]
## [1] TRUE

plot of chunk unnamed-chunk-11

Distribution of user ratings

I set the rating system to create a normal distribution. Which might or might not necessarily reflect a real movie rating system.

Recommenderlab set of recommendation algorithms

##  [1] "HYBRID_realRatingMatrix"         "HYBRID_binaryRatingMatrix"       "ALS_realRatingMatrix"           
##  [4] "ALS_implicit_realRatingMatrix"   "ALS_implicit_binaryRatingMatrix" "AR_binaryRatingMatrix"          
##  [7] "IBCF_binaryRatingMatrix"         "IBCF_realRatingMatrix"           "LIBMF_realRatingMatrix"         
## [10] "POPULAR_binaryRatingMatrix"      "POPULAR_realRatingMatrix"        "RANDOM_realRatingMatrix"        
## [13] "RANDOM_binaryRatingMatrix"       "RERECOMMEND_realRatingMatrix"    "RERECOMMEND_binaryRatingMatrix" 
## [16] "SVD_realRatingMatrix"            "SVDF_realRatingMatrix"           "UBCF_binaryRatingMatrix"        
## [19] "UBCF_realRatingMatrix"

UBCF List of recommend movies for users 5001 to 5010 by movie_id

## [1] "The recommended movies for users 5001 to 5010 by movie_id "
## [[1]]
##  [1] "55" "86" "98" "59" "94" "73" "97" "63" "12" "56"
## 
## [[2]]
##  [1] "93" "91" "71" "64" "37" "81" "39" "21" "47" "89"
## 
## [[3]]
##  [1] "91" "78" "14" "61" "27" "98" "22" "5"  "83" "72"
## 
## [[4]]
##  [1] "96" "24" "66" "2"  "69" "63" "4"  "94" "77" "46"
## 
## [[5]]
##  [1] "97" "24" "82" "95" "12" "25" "81" "79" "61" "49"
## 
## [[6]]
##  [1] "4"  "95" "52" "42" "56" "68" "46" "71" "92" "21"
## 
## [[7]]
##  [1] "22" "79" "53" "26" "71" "19" "2"  "56" "85" "33"
## 
## [[8]]
##  [1] "100" "82"  "60"  "92"  "17"  "52"  "22"  "41"  "10"  "81" 
## 
## [[9]]
##  [1] "11" "12" "72" "63" "82" "53" "33" "18" "67" "77"
## 
## [[10]]
##  [1] "20" "84" "55" "1"  "3"  "68" "25" "59" "76" "57"

Recommendations on Improvement

I think Netflix is missing a golden opportunity by not doing a scenario design for their organization. Since Netflix is spending a large portion of their revenues on content creation they should improve the acquisition of user opinion on their original content.

At the moment they just use a thumbs up or thumbs down for a viewer to rate a movie. This is bland and does not provide specific details about what a user might or might not like. They could improve this rating system by allowing users to give more descriptive opinions on what they liked and do not like about a particular title. This gives them an opportunity to create content that would be based on what customers want. Which would also draw in more customers.

I think this would be important because there are certain aspects of Netflix’s original content that I do not like. Which has made me consider dropping their service.

As Netflix’s reliance on original content increases this will be a vital improvement to make. As their original content would want to reach the largest proportion of the population.

Works Cited

“How Netflix’s Recommendations System Works.” Help Center, https://help.netflix.com/en/node/100639.

“Netflix Research.” Netflix Research, https://research.netflix.com/business-area/personalization-and-search.