SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
BEYOND ACCURACY:
GOAL-DRIVEN RECOMMENDER
SYSTEM DESIGN
Tamas Jambor (@jamborta)
Data Scientist at Big Data Partnership (@bigdataexperts)
Ph.D. student at UCL
Evaluating Recommender Systems
• General error metrics
  • Mean absolute error (MAE)
  • Root mean squared error (RMSE)
• General rank based metrics
  • Precision/Recall
  • Mean Reciprocal Rank (MRR)
• Directly/indirectly optimised
• What does improving these metrics mean?
Goal driven vs Metric driven design
• Metric driven (error or rank based)
  • Metric(s) is abstract and general (e.g. RMSE)
  • Objective of the algorithm is abstract
  • Competitions (e.g. Kaggle, Netflix) encourage this approach
• Goal driven
  • Metric(s) depends on the goal
  • More focused algorithm design
  • Fitting goal to data (not model to data)
Goal driven design

• User/system perspective
  • Define and consider user satisfaction or system related objectives as
    priority
• Internal/external goals
   • Consider algorithmic or non-algorithmic solutions
• Time dependent goals
   • Identify various objectives and find the optimal solution
User/System perspective
• System perspective
 • Performance
 • Cost
 • Update time
 • Profit margin
• User perspective
 • User satisfaction (how to measure?)
 • Diversity
 • Novelty
 • Serendipity
 • Context
User vs System perspective
    System-                                      User-
                      General
    focused                                     focused
                       metric
     metric                                      metric

              Collaborative system-user goals

   System-
               General
   focused
                metric
    metric




    User-
   focused
    metric
               Opposite system-user goals
External/Internal goal
• External goals
  • System as a black box
  • Plugin any algorithm
  • Post/pre-filtering or independent algorithmic solution
  • Easier to evaluate (modularised)
• Internal goals
   • Goal is built in the algorithm
   • Goal is directly optimised
   • Difficult to evaluate different components
Approach to goal-driven design



                              Recommender system
       External goal                                            External goal
                                        Internal goal
data                   data                             prediction              prediction
Time dependent goals
• User side
  • Change in taste
  • Seasonal trends
• System side
  • Cost over time (e.g. peak vs off-peak)
  • Demand
Time dependent algorithms
• Internal
   • Exponential decay (model temporal change)
   • Survival analysis
   • Time-series model
• External
  • Time sensitive post filtering
  • Control theory
• Online learning approaches
Approach to goal-driven design




           User or   External or      Time      Performance
 Goal(s)
           System     Internal     dependency    Measures
User perspective


                 Static                            Temporal
Internal goals   Diversification/long tail items   Optimal Control Theory
                 (promote diverse items)           (cold-start problem)
External goals   Nudging and Serendipity           Balanced Control Theory
                 (promote serendipitous items)     (improve prediction per user)
System perspective


                 Static                              Temporal
Internal goals   Stock control                       Optimal Control Theory
                 (promote items that are in stock)   (estimate/maximise profit)
External goals Optimised content delivery            Balanced Control Theory
               (pre-cache liked items)               (stabilise resource allocation)
Example: Diversification/long tail items


Goal:         Promote diverse items
Challenges:   How to measure diversity?
Scope:        Goal is optimised within the algorithm
Algorithm:    Matrix factorisation with convex optimisation
Evaluation:   Measure diverse items in top position
Example: Stock availability


Goal:         Recommend items that are in stock
Challenges:   Up-to-date stock availability?
Scope:        Goal is optimised within the algorithm
Algorithm:    Matrix factorisation with convex optimisation
Evaluation:   Measure waiting list for items
Example: Improve prediction per user


Goal:       Request more data for difficult users
            Use only useful data to train model
Challenges: Define noise/signal for data points
Scope:      Goal is optimised over time, for each user
            independently
Algorithm:  Control theory
Evaluation: Performance measured per user basis
Example: Resource allocation


Goal:       Improve resource allocation (e.g. CPU time)
            Maximise available resources (e.g. fixed
            cluster)
Challenges: Define system dynamics
Scope:      Goal is optimised over time
Algorithm:  Control theory
Evaluation: Stability, divergence from reference
Summary
• Goal defines algorithm and performance measure
• Multiple goals can be integrate into a single system
• Modularity to evaluate goals separately (external)
• Optimisation to merge goals (internal)

Contenu connexe

Similaire à Beyond Accuracy: Goal-Driven Recommender Systems Design

Software Testing Foundations Part 7 - Basics of Test Management
Software Testing Foundations Part 7 - Basics of Test ManagementSoftware Testing Foundations Part 7 - Basics of Test Management
Software Testing Foundations Part 7 - Basics of Test Management
Nikita Knysh
 
Requirements engineering iv
Requirements engineering ivRequirements engineering iv
Requirements engineering iv
indrisrozas
 
System Analysis and Design Project documentation
System Analysis and Design Project documentationSystem Analysis and Design Project documentation
System Analysis and Design Project documentation
MAHERMOHAMED27
 

Similaire à Beyond Accuracy: Goal-Driven Recommender Systems Design (20)

Tutorial Mahout - Recommendation
Tutorial Mahout - RecommendationTutorial Mahout - Recommendation
Tutorial Mahout - Recommendation
 
Software Testing Foundations Part 7 - Basics of Test Management
Software Testing Foundations Part 7 - Basics of Test ManagementSoftware Testing Foundations Part 7 - Basics of Test Management
Software Testing Foundations Part 7 - Basics of Test Management
 
Hybrid Recommender System Architecture for Personalized Wellness Management
Hybrid Recommender System Architecture for Personalized Wellness ManagementHybrid Recommender System Architecture for Personalized Wellness Management
Hybrid Recommender System Architecture for Personalized Wellness Management
 
Software Development Life Cycle (SDLC).pptx
Software Development Life Cycle (SDLC).pptxSoftware Development Life Cycle (SDLC).pptx
Software Development Life Cycle (SDLC).pptx
 
Analysis
AnalysisAnalysis
Analysis
 
Unit 8 software quality and matrices
Unit 8 software quality and matricesUnit 8 software quality and matrices
Unit 8 software quality and matrices
 
Mahout Tutorial and Hands-on (version 2015)
Mahout Tutorial and Hands-on (version 2015)Mahout Tutorial and Hands-on (version 2015)
Mahout Tutorial and Hands-on (version 2015)
 
Requirements engineering iv
Requirements engineering ivRequirements engineering iv
Requirements engineering iv
 
Chap05
Chap05Chap05
Chap05
 
the application of machine lerning algorithm for SEE
the application of machine lerning algorithm for SEEthe application of machine lerning algorithm for SEE
the application of machine lerning algorithm for SEE
 
Alternative Methodologies for Systems Development
Alternative Methodologies for Systems Development Alternative Methodologies for Systems Development
Alternative Methodologies for Systems Development
 
22-REQUIREMENT.ppt
22-REQUIREMENT.ppt22-REQUIREMENT.ppt
22-REQUIREMENT.ppt
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
 
ML Application Life Cycle
ML Application Life CycleML Application Life Cycle
ML Application Life Cycle
 
E3 chap-09
E3 chap-09E3 chap-09
E3 chap-09
 
SDLC
SDLCSDLC
SDLC
 
Expert system (unit 1 & 2)
Expert system (unit 1 & 2)Expert system (unit 1 & 2)
Expert system (unit 1 & 2)
 
System engineering analysis and design
System engineering analysis and designSystem engineering analysis and design
System engineering analysis and design
 
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroST...
 
System Analysis and Design Project documentation
System Analysis and Design Project documentationSystem Analysis and Design Project documentation
System Analysis and Design Project documentation
 

Plus de Data Science London

Python pandas workshop iPython notebook (163 pages)
Python pandas workshop iPython notebook (163 pages)Python pandas workshop iPython notebook (163 pages)
Python pandas workshop iPython notebook (163 pages)
Data Science London
 

Plus de Data Science London (20)

Standardizing +113 million Merchant Names in Financial Services with Greenplu...
Standardizing +113 million Merchant Names in Financial Services with Greenplu...Standardizing +113 million Merchant Names in Financial Services with Greenplu...
Standardizing +113 million Merchant Names in Financial Services with Greenplu...
 
Big Data [sorry] & Data Science: What Does a Data Scientist Do?
Big Data [sorry] & Data Science: What Does a Data Scientist Do?Big Data [sorry] & Data Science: What Does a Data Scientist Do?
Big Data [sorry] & Data Science: What Does a Data Scientist Do?
 
Real-Time Queries in Hadoop w/ Cloudera Impala
Real-Time Queries in Hadoop w/ Cloudera ImpalaReal-Time Queries in Hadoop w/ Cloudera Impala
Real-Time Queries in Hadoop w/ Cloudera Impala
 
Nowcasting Business Performance
Nowcasting Business PerformanceNowcasting Business Performance
Nowcasting Business Performance
 
Numpy, the Python foundation for number crunching
Numpy, the Python foundation for number crunchingNumpy, the Python foundation for number crunching
Numpy, the Python foundation for number crunching
 
Python pandas workshop iPython notebook (163 pages)
Python pandas workshop iPython notebook (163 pages)Python pandas workshop iPython notebook (163 pages)
Python pandas workshop iPython notebook (163 pages)
 
Big Practical Recommendations with Alternating Least Squares
Big Practical Recommendations with Alternating Least SquaresBig Practical Recommendations with Alternating Least Squares
Big Practical Recommendations with Alternating Least Squares
 
Bringing back the excitement to data analysis
Bringing back the excitement to data analysisBringing back the excitement to data analysis
Bringing back the excitement to data analysis
 
Survival Analysis of Web Users
Survival Analysis of Web UsersSurvival Analysis of Web Users
Survival Analysis of Web Users
 
Autonomous Discovery: The New Interface?
Autonomous Discovery: The New Interface?Autonomous Discovery: The New Interface?
Autonomous Discovery: The New Interface?
 
Machine Learning and Hadoop: Present and Future
Machine Learning and Hadoop: Present and FutureMachine Learning and Hadoop: Present and Future
Machine Learning and Hadoop: Present and Future
 
Data Science for Live Music
Data Science for Live MusicData Science for Live Music
Data Science for Live Music
 
Research at last.fm
Research at last.fmResearch at last.fm
Research at last.fm
 
Music and Data: Adding Up the UK Music Industry
Music and Data: Adding Up the UK Music IndustryMusic and Data: Adding Up the UK Music Industry
Music and Data: Adding Up the UK Music Industry
 
Scientific Article Recommendations with Mahout
Scientific Article Recommendations with MahoutScientific Article Recommendations with Mahout
Scientific Article Recommendations with Mahout
 
Super-Fast Clustering Report in MapR
Super-Fast Clustering Report in MapRSuper-Fast Clustering Report in MapR
Super-Fast Clustering Report in MapR
 
Simple Matrix Factorization for Recommendation in Mahout
Simple Matrix Factorization for Recommendation in MahoutSimple Matrix Factorization for Recommendation in Mahout
Simple Matrix Factorization for Recommendation in Mahout
 
Going Real-Time with Mahout, Predicting gender of Facebook Users
Going Real-Time with Mahout, Predicting gender of Facebook UsersGoing Real-Time with Mahout, Predicting gender of Facebook Users
Going Real-Time with Mahout, Predicting gender of Facebook Users
 
Practical Magic with Incanter
Practical Magic with IncanterPractical Magic with Incanter
Practical Magic with Incanter
 
Investigative Analytics- What's in a Data Scientists Toolbox
Investigative Analytics- What's in a Data Scientists ToolboxInvestigative Analytics- What's in a Data Scientists Toolbox
Investigative Analytics- What's in a Data Scientists Toolbox
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Beyond Accuracy: Goal-Driven Recommender Systems Design

  • 1. BEYOND ACCURACY: GOAL-DRIVEN RECOMMENDER SYSTEM DESIGN Tamas Jambor (@jamborta) Data Scientist at Big Data Partnership (@bigdataexperts) Ph.D. student at UCL
  • 2. Evaluating Recommender Systems • General error metrics • Mean absolute error (MAE) • Root mean squared error (RMSE) • General rank based metrics • Precision/Recall • Mean Reciprocal Rank (MRR) • Directly/indirectly optimised • What does improving these metrics mean?
  • 3. Goal driven vs Metric driven design • Metric driven (error or rank based) • Metric(s) is abstract and general (e.g. RMSE) • Objective of the algorithm is abstract • Competitions (e.g. Kaggle, Netflix) encourage this approach • Goal driven • Metric(s) depends on the goal • More focused algorithm design • Fitting goal to data (not model to data)
  • 4. Goal driven design • User/system perspective • Define and consider user satisfaction or system related objectives as priority • Internal/external goals • Consider algorithmic or non-algorithmic solutions • Time dependent goals • Identify various objectives and find the optimal solution
  • 5. User/System perspective • System perspective • Performance • Cost • Update time • Profit margin • User perspective • User satisfaction (how to measure?) • Diversity • Novelty • Serendipity • Context
  • 6. User vs System perspective System- User- General focused focused metric metric metric Collaborative system-user goals System- General focused metric metric User- focused metric Opposite system-user goals
  • 7. External/Internal goal • External goals • System as a black box • Plugin any algorithm • Post/pre-filtering or independent algorithmic solution • Easier to evaluate (modularised) • Internal goals • Goal is built in the algorithm • Goal is directly optimised • Difficult to evaluate different components
  • 8. Approach to goal-driven design Recommender system External goal External goal Internal goal data data prediction prediction
  • 9. Time dependent goals • User side • Change in taste • Seasonal trends • System side • Cost over time (e.g. peak vs off-peak) • Demand
  • 10. Time dependent algorithms • Internal • Exponential decay (model temporal change) • Survival analysis • Time-series model • External • Time sensitive post filtering • Control theory • Online learning approaches
  • 11. Approach to goal-driven design User or External or Time Performance Goal(s) System Internal dependency Measures
  • 12. User perspective Static Temporal Internal goals Diversification/long tail items Optimal Control Theory (promote diverse items) (cold-start problem) External goals Nudging and Serendipity Balanced Control Theory (promote serendipitous items) (improve prediction per user)
  • 13. System perspective Static Temporal Internal goals Stock control Optimal Control Theory (promote items that are in stock) (estimate/maximise profit) External goals Optimised content delivery Balanced Control Theory (pre-cache liked items) (stabilise resource allocation)
  • 14. Example: Diversification/long tail items Goal: Promote diverse items Challenges: How to measure diversity? Scope: Goal is optimised within the algorithm Algorithm: Matrix factorisation with convex optimisation Evaluation: Measure diverse items in top position
  • 15. Example: Stock availability Goal: Recommend items that are in stock Challenges: Up-to-date stock availability? Scope: Goal is optimised within the algorithm Algorithm: Matrix factorisation with convex optimisation Evaluation: Measure waiting list for items
  • 16. Example: Improve prediction per user Goal: Request more data for difficult users Use only useful data to train model Challenges: Define noise/signal for data points Scope: Goal is optimised over time, for each user independently Algorithm: Control theory Evaluation: Performance measured per user basis
  • 17. Example: Resource allocation Goal: Improve resource allocation (e.g. CPU time) Maximise available resources (e.g. fixed cluster) Challenges: Define system dynamics Scope: Goal is optimised over time Algorithm: Control theory Evaluation: Stability, divergence from reference
  • 18. Summary • Goal defines algorithm and performance measure • Multiple goals can be integrate into a single system • Modularity to evaluate goals separately (external) • Optimisation to merge goals (internal)