47
Emmys, Oscars, and Machine Learning Algorithms @ Netflix Scale November, 2013 Xavier Amatriain Director Algorithms Engineering Ne<lix @xamat

Xavier amatriain, dir algorithms netflix m lconf 2013

Embed Size (px)

DESCRIPTION

Xavier Amatriain, Research/Engineering Director, Netflix: Emmys, Oscars, and Machine Learning Algorithms

Citation preview

Page 1: Xavier amatriain, dir algorithms netflix m lconf 2013

Emmys, Oscars, and Machine Learning Algorithms @ Netflix Scale November,  2013    Xavier  Amatriain  Director  -­‐  Algorithms  Engineering  -­‐  Ne<lix   @xamat  

Page 2: Xavier amatriain, dir algorithms netflix m lconf 2013

“In a simple Netlfix-style item recommender, we would simply apply some form of matrix factorization (i.e NMF)”

Page 3: Xavier amatriain, dir algorithms netflix m lconf 2013

What we were interested in: §  High quality recommendations

Proxy question: §  Accuracy in predicted rating

§  Improve by 10% = $1million!

Page 4: Xavier amatriain, dir algorithms netflix m lconf 2013

From the Netflix Prize to today

2006 2013

Page 5: Xavier amatriain, dir algorithms netflix m lconf 2013

Big Data @Netflix §  > 40M subscribers

§  Ratings: ~5M/day

§  Searches: >3M/day

§  Plays: > 50M/day

§  Streamed hours:

o  5B hours in Q3 2013

Geo-information Time

Impressions Device Info Metadata

Social

Ratings

Demographics

Member Behavior

Page 6: Xavier amatriain, dir algorithms netflix m lconf 2013

Smart Models §  Regression models (Logistic, Linear, Elastic nets)

§  SVD & other MF models

§  Factorization Machines

§  Restricted Boltzmann Machines

§  Markov Chains & other graph models

§  Clustering (from k-means to HDP)

§  Deep ANN

§  LDA

§  Association Rules

§  GBDT/RF

§  …

Page 7: Xavier amatriain, dir algorithms netflix m lconf 2013

Deep-dive into Netflix Algorithms

Page 8: Xavier amatriain, dir algorithms netflix m lconf 2013

Rating Prediction

Page 9: Xavier amatriain, dir algorithms netflix m lconf 2013

2007 Progress Prize ▪  Top 2 algorithms

▪  SVD - Prize RMSE: 0.8914 ▪  RBM - Prize RMSE: 0.8990

▪  Linear blend Prize RMSE: 0.88

▪  Currently in use as part of Netflix’ rating prediction component

▪  Limitations ▪  Designed for 100M ratings, we have 5B ratings ▪  Not adaptable as users add ratings ▪  Performance issues

Page 10: Xavier amatriain, dir algorithms netflix m lconf 2013

SVD - Definition

A[n x m] = U[n x r] Λ [ r x r] (V[m x r])T

▪  A: n x m matrix (e.g., n documents, m terms)

▪  U: n x r matrix (n documents, r concepts)

▪  Λ: r x r diagonal matrix (strength of each ‘concept’) (r: rank of the matrix)

▪  V: m x r matrix (m terms, r concepts)

Page 11: Xavier amatriain, dir algorithms netflix m lconf 2013

SVD - Properties ▪  ‘spectral decomposition’ of the matrix:

▪  ‘documents’, ‘terms’ and ‘concepts’:

§  U: document-to-concept similarity matrix

§  V: term-to-concept similarity matrix

§  Λ: its diagonal elements: ‘strength’ of each concept

= x x u1 u2 λ1 λ2

v1 v2

Page 12: Xavier amatriain, dir algorithms netflix m lconf 2013

SVD for Rating Prediction §  User factor vectors and item-factors vectors

§  Baseline (bias) (user & item deviation from average)

§  Predict rating as

§  SVD++ (Koren et. Al) asymmetric variation w. implicit feedback

§  Where §  are three item factor vectors

§  Users are not parametrized

Page 13: Xavier amatriain, dir algorithms netflix m lconf 2013

Restricted Boltzmann Machines §  Restrict the connectivity in ANN

to make learning easier.

§  Only one layer of hidden units. §  Although multiple layers are

possible

§  No connections between hidden units.

§  Hidden units are independent given the visible states..

§  RBMs can be stacked to form Deep Belief Networks (DBN) – 4th generation of ANNs

Page 14: Xavier amatriain, dir algorithms netflix m lconf 2013

What about the final prize ensembles? ▪  Our offline studies showed they were too

computationally intensive to scale ▪  Expected improvement not worth the

engineering effort

▪  Plus, focus had already shifted to other issues that had more impact than rating prediction...

Page 15: Xavier amatriain, dir algorithms netflix m lconf 2013

Ranking Ranking

Page 16: Xavier amatriain, dir algorithms netflix m lconf 2013

Ranking §  Ranking = Scoring + Sorting +

Filtering bags of movies for presentation to a user

§  Key algorithm, sorts titles in most contexts

§  Goal: Find the best possible ordering of a set of videos for a user within a specific context in real-time

§  Objective: maximize consumption & “enjoyment”

§  Factors §  Accuracy §  Novelty §  Diversity §  Freshness §  Scalability §  …

Page 17: Xavier amatriain, dir algorithms netflix m lconf 2013

Popularity  

Pred

icted  Ra

Eng  

1  

2  3  

4  

5  

Linear  Model:  frank(u,v)  =  w1  p(v)  +  w2  r(u,v)  +  b  

Final  Ranking  Example: Two features, linear model

Page 18: Xavier amatriain, dir algorithms netflix m lconf 2013

Popularity  

1  

2  3  

4  

5  

Final  Ranking  Pred

icted  Ra

Eng  

Example: Two features, linear model

Page 19: Xavier amatriain, dir algorithms netflix m lconf 2013

Ranking

Page 20: Xavier amatriain, dir algorithms netflix m lconf 2013

Learning to Rank ▪  Ranking is a very important problem in many contexts

(search, advertising, recommendations)

▪  Quality of ranking is measured using ranking metrics such as NDCG, MRR, MAP, FPC…

▪  It is hard to optimize machine-learned models directly on these measures ▪  They are not differentiable

▪  We would like to use the same measure for optimizing and for the final evaluation

Page 21: Xavier amatriain, dir algorithms netflix m lconf 2013

Learning to Rank Approaches §  ML problem: construct ranking model from training data 1.  Pointwise (Ordinal regression, Logistic regression, SVM, GBDT, …)

§  Loss function defined on individual relevance judgment

2.  Pairwise (RankSVM, RankBoost, RankNet, FRank…) §  Loss function defined on pair-wise preferences

§  Goal: minimize number of inversions in ranking

3.  Listwise

§  Indirect Loss Function (RankCosine, ListNet…)

§  Directly optimize IR measures (NDCG, MRR, FCP…) §  Genetic Programming or Simulated Annealing

§  Use boosting to optimize NDCG (Adarank)

§  Gradient descent on smoothed version (CLiMF, TFMAP, GAPfm @cikm13)

§  Iterative Coordinate Ascent (Direct Rank @kdd13)

Page 22: Xavier amatriain, dir algorithms netflix m lconf 2013

Similarity

Page 23: Xavier amatriain, dir algorithms netflix m lconf 2013

Similars

Page 24: Xavier amatriain, dir algorithms netflix m lconf 2013

What is similarity? §  Similarity can refer to different dimensions

§  Similar in metadata/tags §  Similar in user play behavior §  Similar in user rating behavior §  …

§  You can learn a model for each of them and finally learn an ensemble

Page 25: Xavier amatriain, dir algorithms netflix m lconf 2013

Graph-based similarities

0.8

0.2

0.3

0.4

0.3

0.7

0.3

Page 26: Xavier amatriain, dir algorithms netflix m lconf 2013

Example of graph-based similarity: SimRank

▪  SimRank (Jeh & Widom, 02): “two objects are similar if they are referenced by similar objects.”

Page 27: Xavier amatriain, dir algorithms netflix m lconf 2013

Final similarity ensemble §  Come up with a score of play similarity, rating similarity,

tag-based similarity…

§  Combine them using an ensemble §  Weights are learned using regression over existing response

§  The final concept of “similarity” responds to what users vote as similar

Page 28: Xavier amatriain, dir algorithms netflix m lconf 2013

Row

Sel

ectio

n

Page 29: Xavier amatriain, dir algorithms netflix m lconf 2013

Row  SelecEon  Inputs  §  Visitor  data  

§  Video  history  

§  Queue  adds  

§  RaEngs  

§  Taste  preferences  

§  Predicted  raEngs  

§  PVR  ranking  

§  etc.  

§  Global data §  Metadata §  Popularity §  etc.

Page 30: Xavier amatriain, dir algorithms netflix m lconf 2013

Row  SelecEon  Core  Algorithm  

Candidate  data   Groupify   Score/Select   Group  

selecEon  

SelecEon  constraints  

ParEal  selecEon  

Page 31: Xavier amatriain, dir algorithms netflix m lconf 2013

SelecEon  Constraints  • Many  business  rules  and  heurisEcs  

–  RelaEve  posiEon  of  groups  –  Presence/absence  of  groups  –  Deduping  rules  –  Number  of  groups  of  a  given  type  

•  Determined  by  past  A/B  tests  •  Evolved  over  Eme  from  a  simple  template  

Page 32: Xavier amatriain, dir algorithms netflix m lconf 2013

GroupificaEon  •  Ranking  of  Etles  according  to  ranking  algo  

•  Filtering  •  Deduping  •  Forma^ng  

•  SelecEon  of  evidence  •  ...  

Candidate  data  

First  n  selected  groups  

Group  for  posiEon  n

+1  

Page 33: Xavier amatriain, dir algorithms netflix m lconf 2013

Scoring  and  SelecEon  •  Features  considered  –  Quality  of  items  

–  Diversity  of  tags  –  Quality  of  evidence  –  Freshness  –  Recency  –  ...  

–  ARO  scorer  –  Greedy  algorithm  

–  Framework  supports  other  methods  §  Backtracking  §  Approximate  integer  

programming  

§  etc.    

Page 34: Xavier amatriain, dir algorithms netflix m lconf 2013

Search Recommendations

Page 35: Xavier amatriain, dir algorithms netflix m lconf 2013

Search Recommendation CombinaEon  of  Different  models  

•  Play  Aaer  Search:  TransiEon  on  Play  aaer  Query    •  Play  Related  to  Search:  Similarity  between  user’s  (query,  

play)    •  …  

Read this paper for a description of a similar system at LinkedIn

Page 36: Xavier amatriain, dir algorithms netflix m lconf 2013

Unavailable Title Recommendations

Page 37: Xavier amatriain, dir algorithms netflix m lconf 2013

Gamification Algorithms

Page 38: Xavier amatriain, dir algorithms netflix m lconf 2013

rating game Mood Selection Algorithm 1.  Editorially selected moods 2.  Sort them according to users consumption 3.  Take into account freshness, diversity...

Rating Game

Page 39: Xavier amatriain, dir algorithms netflix m lconf 2013

More data or better models?

Page 40: Xavier amatriain, dir algorithms netflix m lconf 2013

More data or better models?

Really?

Anand Rajaraman: Former Stanford Prof. & Senior VP at Walmart

Page 41: Xavier amatriain, dir algorithms netflix m lconf 2013

Sometimes, it’s not about more data

More data or better models?

Page 42: Xavier amatriain, dir algorithms netflix m lconf 2013

[Banko and Brill, 2001]

Norvig: “Google does not have better Algorithms, only more Data”

Many features/ low-bias models

More data or better models?

Page 43: Xavier amatriain, dir algorithms netflix m lconf 2013

More data or better models?

Sometimes, it’s not about more data

Page 44: Xavier amatriain, dir algorithms netflix m lconf 2013

“Data without a sound approach = noise”

Page 45: Xavier amatriain, dir algorithms netflix m lconf 2013

Conclusion

Page 46: Xavier amatriain, dir algorithms netflix m lconf 2013

More data + Smarter models +

More accurate metrics + Better system architectures

Lots of room for improvement!

Page 47: Xavier amatriain, dir algorithms netflix m lconf 2013

We’re hiring!

Xavier Amatriain (@xamat)

[email protected]

Thanks!