SlideShare a Scribd company logo
LessonsLearned
from building real-life user-focused Big Data Systems
Xavier Amatriain (@xamat)
www.quora.com/profile/Xavier-Amatriain
04/12/16
A bit about
Our Mission
“To share and grow
the world’s knowledge”
• Millions of questions & answers
• Millions of users
• Thousands of topics
• ...
Demand
What we care about
Quality
Relevance
LessonsLearned
MoreDatavs.BetterModels
More data or better models?
Really?
Anand Rajaraman: VC, Founder, Stanford Professor
More data or better models?
Sometimes, it’s
not about more
data
More data or better models?
Norvig:
“Google does not have
better Algorithms only
more Data”
Many features/
low-bias models
More data or better models?
Sometimes, it’s
not about more
data
How useful is Big Data?
● “Everybody” has Big Data
○ Does everyone need it?
○ E.g. How many users do you need to compute a MF of 100 factors?
● Smart (e.g. stratified) sampling can produce as good (or better) results!
Sometimesyoudoneed
A(more)ComplexModel
Better models and features that “don’t work”
● E.g. You have a linear model and have
been selecting and optimizing features
for that model
■ More complex model with the same features
-> improvement not likely
■ More expressive features with the same model
-> improvement not likely
● More complex features may require a
more complex model
● A more complex model may not show
improvements with a feature set that is
too simple
Modelselectionisalsoabout
Hyperparameteroptimization
Hyperparameter optimization
● Automate hyperparameter
optimization by choosing the
right metric.
○ But, is it as simple as choosing the
max?
● Bayesian Optimization
(Gaussian Processes) better
than grid search
○ See spearmint, hyperopt, AutoML,
MOE...
Supervisedvs.plus
UnsupervisedLearning
Supervised/Unsupervised Learning
● Unsupervised learning as dimensionality reduction
● Unsupervised learning as feature engineering
● The “magic” behind combining
unsupervised/supervised learning
○ E.g.1 clustering + knn
○ E.g.2 Matrix Factorization
■ MF can be interpreted as
● Unsupervised:
○ Dimensionality Reduction a la PCA
○ Clustering (e.g. NMF)
● Supervised
○ Labeled targets ~ regression
Supervised/Unsupervised Learning
● One of the “tricks” in Deep Learning is how it
combines unsupervised/supervised learning
○ E.g. Stacked Autoencoders
○ E.g. training of convolutional nets
Everythingisanensemble
Ensembles
● Netflix Prize was won by an ensemble
○ Initially Bellkor was using GDBTs
○ BigChaos introduced ANN-based ensemble
● Most practical applications of ML run an ensemble
○ Why wouldn’t you?
○ At least as good as the best of your methods
○ Can add completely different approaches (e.
g. CF and content-based)
○ You can use many different models at the
ensemble layer: LR, GDBTs, RFs, ANNs...
Ensembles & Feature Engineering
● Ensembles are the way to turn any model into a feature!
● E.g. Don’t know if the way to go is to use Factorization
Machines, Tensor Factorization, or RNNs?
○ Treat each model as a “feature”
○ Feed them into an ensemble
The Master Algorithm?
It definitely is the ensemble!
TheLostArt
ofFeatureEngineering
Feature Engineering
● Main properties of a well-behaved ML feature
○ Reusable
○ Transformable
○ Interpretable
○ Reliable
● Reusability: You should be able to reuse features in different
models, applications, and teams
● Transformability: Besides directly reusing a feature, it
should be easy to use a transformation of it (e.g. log(f), max(f),
∑ft
over a time window…)
Feature Engineering
● Main properties of a well-behaved ML feature
○ Reusable
○ Transformable
○ Interpretable
○ Reliable
● Interpretability: In order to do any of the previous, you
need to be able to understand the meaning of features and
interpret their values.
● Reliability: It should be easy to monitor and detect bugs/issues
in features
Feature Engineering Example - Quora Answer Ranking
What is a good Quora answer?
• truthful
• reusable
• provides explanation
• well formatted
• ...
Feature Engineering Example - Quora Answer Ranking
How are those dimensions translated
into features?
• Features that relate to the answer
quality itself
• Interaction features
(upvotes/downvotes, clicks,
comments…)
• User features (e.g. expertise in topic)
Implicitsignalsbeat
explicitones
(almostalways)
Implicit vs. Explicit
● Many have acknowledged
that implicit feedback is more useful
● Is implicit feedback really always
more useful?
● If so, why?
● Implicit data is (usually):
○ More dense, and available for all users
○ Better representative of user behavior vs.
user reflection
○ More related to final objective function
○ Better correlated with AB test results
● E.g. Rating vs watching
Implicit vs. Explicit
● However
○ It is not always the case that
direct implicit feedback correlates
well with long-term retention
○ E.g. clickbait
● Solution:
○ Combine different forms of
implicit + explicit to better represent
long-term goal
Implicit vs. Explicit
bethoughtfulaboutyour
TrainingData
Defining training/testing data
● Training a simple binary classifier for good/bad
answer
○ Defining positive and negative labels ->
Non-trivial task
○ Is this a positive or a negative?
● funny uninformative answer with many upvotes
● short uninformative answer by a well-known
expert in the field
● very long informative answer that nobody
reads/upvotes
● informative answer with grammar/spelling
mistakes
● ...
Other training data issues: Time traveling
● Time traveling: usage of features that originated after the
event you are trying to predict
○ E.g. Your upvoting an answer is a pretty good prediction
of you reading that answer, especially because most
upvotes happen AFTER you read the answer
○ Tricky when you have many related features
○ Whenever I see an offline experiment with huge wins, I
ask: “Is there time traveling?”
YourModelwilllearn
whatyouteachittolearn
Training a model
● Model will learn according to:
○ Training data (e.g. implicit and explicit)
○ Target function (e.g. probability of user reading an answer)
○ Metric (e.g. precision vs. recall)
● Example 1 (made up):
○ Optimize probability of a user going to the cinema to
watch a movie and rate it “highly” by using purchase history
and previous ratings. Use NDCG of the ranking as final
metric using only movies rated 4 or higher as positives.
Example 2 - Quora’s feed
● Training data = implicit + explicit
● Target function: Value of showing a story to a
user ~ weighted sum of actions: v = ∑a
va
1{ya
= 1}
○ predict probabilities for each action, then compute expected
value: v_pred = E[ V | x ] = ∑a
va
p(a | x)
● Metric: any ranking metric
Offline testing
● Measure model performance,
using (IR) metrics
● Offline performance = indication
to make decisions on follow-up
A/B tests
● A critical (and mostly unsolved)
issue is how offline metrics
correlate with A/B test results.
Learntodealwith
PresentationBias
2D Navigational modeling
More likely
to see
Less likely
The curse of presentation bias
● User can only click on what you decide to show
● But, what you decide to show is the result of what your model
predicted is good
● Simply treating things you show as negatives is not likely to work
● Better options
● Correcting for the probability a user will click on a position ->
Attention models
● Explore/exploit approaches such as MAB
Youdon’tneedtodistribute
yourMLalgorithm
Distributing ML
● Most of what people do in practice can fit into a multi-
core machine
○ Smart data sampling
○ Offline schemes
○ Efficient parallel code
● Dangers of “easy” distributed approaches such
as Hadoop/Spark
● Do you care about costs? How about latencies?
Distributing ML
● Example of optimizing computations to fit them into
one machine
○ Spark implementation: 6 hours, 15 machines
○ Developer time: 4 days
○ C++ implementation: 10 minutes, 1 machine
● Most practical applications of Big Data can fit into
a (multicore) implementation
Conclusions
● In data, size is not all that matters
● Understand dependencies between data, models
& systems
● Choose the right metric & optimize what matters
● Be thoughtful about
○ Your ML infrastructure/tools
○ Interaction between data and UX
Questions?
BIG2016- Lessons Learned from building real-life user-focused Big Data systems

More Related Content

PDF
Strata 2016 - Lessons Learned from building real-life Machine Learning Systems
PDF
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
PDF
Machine Learning for Q&A Sites: The Quora Example
PDF
Barcelona ML Meetup - Lessons Learned
PDF
MLConf - Emmys, Oscars & Machine Learning Algorithms at Netflix
PDF
Cikm 2013 - Beyond Data From User Information to Business Value
PDF
Machine Learning to Grow the World's Knowledge
PDF
MLConf Seattle 2015 - ML@Quora
Strata 2016 - Lessons Learned from building real-life Machine Learning Systems
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
Machine Learning for Q&A Sites: The Quora Example
Barcelona ML Meetup - Lessons Learned
MLConf - Emmys, Oscars & Machine Learning Algorithms at Netflix
Cikm 2013 - Beyond Data From User Information to Business Value
Machine Learning to Grow the World's Knowledge
MLConf Seattle 2015 - ML@Quora

What's hot (20)

PDF
Recommending the world's knowledge
PDF
MMDS 2014 Talk - Distributing ML Algorithms: from GPUs to the Cloud
PDF
Qcon SF 2013 - Machine Learning & Recommender Systems @ Netflix Scale
PDF
Big & Personal: the data and the models behind Netflix recommendations by Xa...
PDF
Machine learning the high interest credit card of technical debt [PWL]
PDF
Past present and future of Recommender Systems: an Industry Perspective
PDF
Past, present, and future of Recommender Systems: an industry perspective
PDF
Kdd 2014 Tutorial - the recommender problem revisited
PDF
Recsys 2016
PDF
Replicable Evaluation of Recommender Systems
PDF
Recsys 2014 Tutorial - The Recommender Problem Revisited
PDF
Déjà Vu: The Importance of Time and Causality in Recommender Systems
PPTX
Aiinpractice2017deepaklongversion
PDF
Recsys2016 Tutorial by Xavier and Deepak
PDF
A Multi-Armed Bandit Framework For Recommendations at Netflix
PDF
Michael Gage SOED 2016
PPTX
Machine learning basics
PPTX
Understanding Basics of Machine Learning
PDF
Xavier Amatriain, VP of Engineering, Quora at MLconf SEA - 5/01/15
PDF
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
Recommending the world's knowledge
MMDS 2014 Talk - Distributing ML Algorithms: from GPUs to the Cloud
Qcon SF 2013 - Machine Learning & Recommender Systems @ Netflix Scale
Big & Personal: the data and the models behind Netflix recommendations by Xa...
Machine learning the high interest credit card of technical debt [PWL]
Past present and future of Recommender Systems: an Industry Perspective
Past, present, and future of Recommender Systems: an industry perspective
Kdd 2014 Tutorial - the recommender problem revisited
Recsys 2016
Replicable Evaluation of Recommender Systems
Recsys 2014 Tutorial - The Recommender Problem Revisited
Déjà Vu: The Importance of Time and Causality in Recommender Systems
Aiinpractice2017deepaklongversion
Recsys2016 Tutorial by Xavier and Deepak
A Multi-Armed Bandit Framework For Recommendations at Netflix
Michael Gage SOED 2016
Machine learning basics
Understanding Basics of Machine Learning
Xavier Amatriain, VP of Engineering, Quora at MLconf SEA - 5/01/15
Deep Learning For Practitioners, lecture 2: Selecting the right applications...
Ad

Viewers also liked (16)

PDF
Staying Shallow & Lean in a Deep Learning World
PDF
Recommender Systems (Machine Learning Summer School 2014 @ CMU)
PDF
Lean DevOps - Lessons Learned from Innovation-driven Companies
PDF
From Idea to Execution: Spotify's Discover Weekly
PDF
10 more lessons learned from building Machine Learning systems
PDF
10 more lessons learned from building Machine Learning systems - MLConf
PDF
10 Lessons Learned from Building Machine Learning Systems
PDF
Building A Machine Learning Platform At Quora (1)
PDF
The Science and the Magic of User Feedback for Recommender Systems
PDF
Key Lessons Learned Building Recommender Systems for Large-Scale Social Netw...
PPTX
Methodological Issues in Bio-inspired Computing or How to Get a PhD in?
PDF
A Discrete Firefly Algorithm for the Multi-Objective Hybrid Flowshop Scheduli...
PDF
Bio-Inspired Computation: Success and Challenges of IJBIC
PDF
Applications and Analysis of Bio-Inspired Eagle Strategy for Engineering Opti...
PPTX
Bio inspiring computing and its application in cheminformatics
PDF
Nature-Inspired Optimization Algorithms
Staying Shallow & Lean in a Deep Learning World
Recommender Systems (Machine Learning Summer School 2014 @ CMU)
Lean DevOps - Lessons Learned from Innovation-driven Companies
From Idea to Execution: Spotify's Discover Weekly
10 more lessons learned from building Machine Learning systems
10 more lessons learned from building Machine Learning systems - MLConf
10 Lessons Learned from Building Machine Learning Systems
Building A Machine Learning Platform At Quora (1)
The Science and the Magic of User Feedback for Recommender Systems
Key Lessons Learned Building Recommender Systems for Large-Scale Social Netw...
Methodological Issues in Bio-inspired Computing or How to Get a PhD in?
A Discrete Firefly Algorithm for the Multi-Objective Hybrid Flowshop Scheduli...
Bio-Inspired Computation: Success and Challenges of IJBIC
Applications and Analysis of Bio-Inspired Eagle Strategy for Engineering Opti...
Bio inspiring computing and its application in cheminformatics
Nature-Inspired Optimization Algorithms
Ad

Similar to BIG2016- Lessons Learned from building real-life user-focused Big Data systems (20)

PDF
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
PPTX
Recommendation Modeling with Impression Data at Netflix
PDF
Recommender Systems In Industry
PDF
Lessons learned from building practical deep learning systems
PDF
Scaling Recommendations at Quora (RecSys talk 9/16/2016)
PDF
PyData SF 2016 --- Moving forward through the darkness
PDF
Production-Ready BIG ML Workflows - from zero to hero
PDF
Prototyping Workshop - Wireframes, Mockups, Prototypes
PDF
Scaling Quality on Quora Using Machine Learning
PPTX
GIAF UK Winter 2015 - Analytical techniques: A practical guide to answering b...
PDF
CSSC ML Workshop
PDF
General introduction to AI ML DL DS
PDF
Overview of machine learning
PPTX
Machine-Learning-Overview a statistical approach
PDF
Machine Learning Product Managers Meetup Event
PPTX
tensorflow.pptx
PPTX
L15.pptx
PPTX
Machine learning: A Walk Through School Exams
PDF
"Solving Vision Tasks Using Deep Learning: An Introduction," a Presentation f...
PDF
Pragmatic software testing education - SIGCSE 2019
Xavier Amatriain, VP of Engineering, Quora at MLconf SF - 11/13/15
Recommendation Modeling with Impression Data at Netflix
Recommender Systems In Industry
Lessons learned from building practical deep learning systems
Scaling Recommendations at Quora (RecSys talk 9/16/2016)
PyData SF 2016 --- Moving forward through the darkness
Production-Ready BIG ML Workflows - from zero to hero
Prototyping Workshop - Wireframes, Mockups, Prototypes
Scaling Quality on Quora Using Machine Learning
GIAF UK Winter 2015 - Analytical techniques: A practical guide to answering b...
CSSC ML Workshop
General introduction to AI ML DL DS
Overview of machine learning
Machine-Learning-Overview a statistical approach
Machine Learning Product Managers Meetup Event
tensorflow.pptx
L15.pptx
Machine learning: A Walk Through School Exams
"Solving Vision Tasks Using Deep Learning: An Introduction," a Presentation f...
Pragmatic software testing education - SIGCSE 2019

More from Xavier Amatriain (10)

PDF
Data/AI driven product development: from video streaming to telehealth
PDF
AI-driven product innovation: from Recommender Systems to COVID-19
PDF
AI for COVID-19 - Q42020 update
PDF
AI for COVID-19: An online virtual care approach
PDF
AI for healthcare: Scaling Access and Quality of Care for Everyone
PDF
Towards online universal quality healthcare through AI
PDF
From one to zero: Going smaller as a growth strategy
PDF
Learning to speak medicine
PDF
ML to cure the world
PDF
Medical advice as a Recommender System
Data/AI driven product development: from video streaming to telehealth
AI-driven product innovation: from Recommender Systems to COVID-19
AI for COVID-19 - Q42020 update
AI for COVID-19: An online virtual care approach
AI for healthcare: Scaling Access and Quality of Care for Everyone
Towards online universal quality healthcare through AI
From one to zero: Going smaller as a growth strategy
Learning to speak medicine
ML to cure the world
Medical advice as a Recommender System

Recently uploaded (20)

PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
PDF
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
cuic standard and advanced reporting.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Empathic Computing: Creating Shared Understanding
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Modernizing your data center with Dell and AMD
Network Security Unit 5.pdf for BCA BBA.
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
NewMind AI Weekly Chronicles - August'25 Week I
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
“AI and Expert System Decision Support & Business Intelligence Systems”
cuic standard and advanced reporting.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Per capita expenditure prediction using model stacking based on satellite ima...
Dropbox Q2 2025 Financial Results & Investor Presentation
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Diabetes mellitus diagnosis method based random forest with bat algorithm
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Empathic Computing: Creating Shared Understanding
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Big Data Technologies - Introduction.pptx
Modernizing your data center with Dell and AMD

BIG2016- Lessons Learned from building real-life user-focused Big Data systems

  • 1. LessonsLearned from building real-life user-focused Big Data Systems Xavier Amatriain (@xamat) www.quora.com/profile/Xavier-Amatriain 04/12/16
  • 3. Our Mission “To share and grow the world’s knowledge” • Millions of questions & answers • Millions of users • Thousands of topics • ...
  • 4. Demand What we care about Quality Relevance
  • 7. More data or better models? Really? Anand Rajaraman: VC, Founder, Stanford Professor
  • 8. More data or better models? Sometimes, it’s not about more data
  • 9. More data or better models? Norvig: “Google does not have better Algorithms only more Data” Many features/ low-bias models
  • 10. More data or better models? Sometimes, it’s not about more data
  • 11. How useful is Big Data? ● “Everybody” has Big Data ○ Does everyone need it? ○ E.g. How many users do you need to compute a MF of 100 factors? ● Smart (e.g. stratified) sampling can produce as good (or better) results!
  • 13. Better models and features that “don’t work” ● E.g. You have a linear model and have been selecting and optimizing features for that model ■ More complex model with the same features -> improvement not likely ■ More expressive features with the same model -> improvement not likely ● More complex features may require a more complex model ● A more complex model may not show improvements with a feature set that is too simple
  • 15. Hyperparameter optimization ● Automate hyperparameter optimization by choosing the right metric. ○ But, is it as simple as choosing the max? ● Bayesian Optimization (Gaussian Processes) better than grid search ○ See spearmint, hyperopt, AutoML, MOE...
  • 17. Supervised/Unsupervised Learning ● Unsupervised learning as dimensionality reduction ● Unsupervised learning as feature engineering ● The “magic” behind combining unsupervised/supervised learning ○ E.g.1 clustering + knn ○ E.g.2 Matrix Factorization ■ MF can be interpreted as ● Unsupervised: ○ Dimensionality Reduction a la PCA ○ Clustering (e.g. NMF) ● Supervised ○ Labeled targets ~ regression
  • 18. Supervised/Unsupervised Learning ● One of the “tricks” in Deep Learning is how it combines unsupervised/supervised learning ○ E.g. Stacked Autoencoders ○ E.g. training of convolutional nets
  • 20. Ensembles ● Netflix Prize was won by an ensemble ○ Initially Bellkor was using GDBTs ○ BigChaos introduced ANN-based ensemble ● Most practical applications of ML run an ensemble ○ Why wouldn’t you? ○ At least as good as the best of your methods ○ Can add completely different approaches (e. g. CF and content-based) ○ You can use many different models at the ensemble layer: LR, GDBTs, RFs, ANNs...
  • 21. Ensembles & Feature Engineering ● Ensembles are the way to turn any model into a feature! ● E.g. Don’t know if the way to go is to use Factorization Machines, Tensor Factorization, or RNNs? ○ Treat each model as a “feature” ○ Feed them into an ensemble
  • 22. The Master Algorithm? It definitely is the ensemble!
  • 24. Feature Engineering ● Main properties of a well-behaved ML feature ○ Reusable ○ Transformable ○ Interpretable ○ Reliable ● Reusability: You should be able to reuse features in different models, applications, and teams ● Transformability: Besides directly reusing a feature, it should be easy to use a transformation of it (e.g. log(f), max(f), ∑ft over a time window…)
  • 25. Feature Engineering ● Main properties of a well-behaved ML feature ○ Reusable ○ Transformable ○ Interpretable ○ Reliable ● Interpretability: In order to do any of the previous, you need to be able to understand the meaning of features and interpret their values. ● Reliability: It should be easy to monitor and detect bugs/issues in features
  • 26. Feature Engineering Example - Quora Answer Ranking What is a good Quora answer? • truthful • reusable • provides explanation • well formatted • ...
  • 27. Feature Engineering Example - Quora Answer Ranking How are those dimensions translated into features? • Features that relate to the answer quality itself • Interaction features (upvotes/downvotes, clicks, comments…) • User features (e.g. expertise in topic)
  • 29. Implicit vs. Explicit ● Many have acknowledged that implicit feedback is more useful ● Is implicit feedback really always more useful? ● If so, why?
  • 30. ● Implicit data is (usually): ○ More dense, and available for all users ○ Better representative of user behavior vs. user reflection ○ More related to final objective function ○ Better correlated with AB test results ● E.g. Rating vs watching Implicit vs. Explicit
  • 31. ● However ○ It is not always the case that direct implicit feedback correlates well with long-term retention ○ E.g. clickbait ● Solution: ○ Combine different forms of implicit + explicit to better represent long-term goal Implicit vs. Explicit
  • 33. Defining training/testing data ● Training a simple binary classifier for good/bad answer ○ Defining positive and negative labels -> Non-trivial task ○ Is this a positive or a negative? ● funny uninformative answer with many upvotes ● short uninformative answer by a well-known expert in the field ● very long informative answer that nobody reads/upvotes ● informative answer with grammar/spelling mistakes ● ...
  • 34. Other training data issues: Time traveling ● Time traveling: usage of features that originated after the event you are trying to predict ○ E.g. Your upvoting an answer is a pretty good prediction of you reading that answer, especially because most upvotes happen AFTER you read the answer ○ Tricky when you have many related features ○ Whenever I see an offline experiment with huge wins, I ask: “Is there time traveling?”
  • 36. Training a model ● Model will learn according to: ○ Training data (e.g. implicit and explicit) ○ Target function (e.g. probability of user reading an answer) ○ Metric (e.g. precision vs. recall) ● Example 1 (made up): ○ Optimize probability of a user going to the cinema to watch a movie and rate it “highly” by using purchase history and previous ratings. Use NDCG of the ranking as final metric using only movies rated 4 or higher as positives.
  • 37. Example 2 - Quora’s feed ● Training data = implicit + explicit ● Target function: Value of showing a story to a user ~ weighted sum of actions: v = ∑a va 1{ya = 1} ○ predict probabilities for each action, then compute expected value: v_pred = E[ V | x ] = ∑a va p(a | x) ● Metric: any ranking metric
  • 38. Offline testing ● Measure model performance, using (IR) metrics ● Offline performance = indication to make decisions on follow-up A/B tests ● A critical (and mostly unsolved) issue is how offline metrics correlate with A/B test results.
  • 40. 2D Navigational modeling More likely to see Less likely
  • 41. The curse of presentation bias ● User can only click on what you decide to show ● But, what you decide to show is the result of what your model predicted is good ● Simply treating things you show as negatives is not likely to work ● Better options ● Correcting for the probability a user will click on a position -> Attention models ● Explore/exploit approaches such as MAB
  • 43. Distributing ML ● Most of what people do in practice can fit into a multi- core machine ○ Smart data sampling ○ Offline schemes ○ Efficient parallel code ● Dangers of “easy” distributed approaches such as Hadoop/Spark ● Do you care about costs? How about latencies?
  • 44. Distributing ML ● Example of optimizing computations to fit them into one machine ○ Spark implementation: 6 hours, 15 machines ○ Developer time: 4 days ○ C++ implementation: 10 minutes, 1 machine ● Most practical applications of Big Data can fit into a (multicore) implementation
  • 46. ● In data, size is not all that matters ● Understand dependencies between data, models & systems ● Choose the right metric & optimize what matters ● Be thoughtful about ○ Your ML infrastructure/tools ○ Interaction between data and UX