Justin Basilico, Research/ Engineering Manager, Netflix
summary
Netflix runs almost 70 million members in ~50 countries on 1,000+ device types streaming 3 billion hours/month and credits 80% of viewing to recommendations. Engineering choices: split work offline / nearline / online, train item factors offline, publish item factors and resolve user factors online to keep results fresh and cacheable. Parallelize by region, by hyperparameter (use MO or Spearmint or Sig op) and by data shards, run GPU CUDA on single machines, coordinate with Mesos. Build one shared engine, make algorithms modular, and unit test metric code thoroughly.
AI-written summary · about
chapters (21)
- 0:00Intro
- 1:36Goal
- 1:51Everything is a Recommendation
- 2:28Machine Learning Approach
- 3:06Models & Algorithms
- 3:40Design Considerations
- 4:57Software Stack
- 5:39System Architecture
- 6:15Where to place components?
- 7:44Three levels of Learning Distribution/Parallelization
- 8:44Example: Training Neural Networks Level 1: Machines in different AWS
- 9:41Example development process
- 11:18Avoid dual implementations
- 12:22Make algorithms and models extensible and modular
- 14:13Example: Tailoring Random Forests
- 15:34Putting learning in an application
- 17:00Example: Simple ranking system
- 17:50Machine Learning and Testing
- 18:28Reality of Testing
- 19:37Two ways to solve computational problems
- 20:52Take-aways for building machine learning software
related talks
29mXavier Amatriain, Director of Algorithms Engineering, Netflix
41mRecommendations for Building Machine Learning Software
04mInterview
53mKeynote Interview
38mNetflix's Ray Platform: From Deep Learning to GenAI
03mInterview
37mAsync Inference at Netflix: Batch and Near-Real-Time Serving
30mHuman-Centric ML Infrastructure at Netflix
