Machine Learning and Data Mining. Collaborative Filtering & Recommender Systems. Kalev Kask

Similar documents
Data Mining Techniques

Data Mining Techniques

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

COMP 465: Data Mining Recommender Systems

CS 124/LINGUIST 180 From Languages to Information

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

Recommender Systems Collabora2ve Filtering and Matrix Factoriza2on

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

CS246: Mining Massive Datasets Jure Leskovec, Stanford University

CS 5614: (Big) Data Management Systems. B. Aditya Prakash Lecture #16: Recommenda2on Systems

Real-time Recommendations on Spark. Jan Neumann, Sridhar Alla (Comcast Labs) DC Spark Interactive Meetup East May

Recommendation and Advertising. Shannon Quinn (with thanks to J. Leskovec, A. Rajaraman, and J. Ullman of Stanford University)

Introduction to Data Mining

Web Personalisation and Recommender Systems

Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Stanford University Infinite data. Filtering data streams

Thanks to Jure Leskovec, Anand Rajaraman, Jeff Ullman

Recommendation Systems

CSE 158 Lecture 8. Web Mining and Recommender Systems. Extensions of latent-factor models, (and more on the Netflix prize)

CS 124/LINGUIST 180 From Languages to Information

Using Social Networks to Improve Movie Rating Predictions

CSE 258 Lecture 8. Web Mining and Recommender Systems. Extensions of latent-factor models, (and more on the Netflix prize)

CS 124/LINGUIST 180 From Languages to Information

Recommendation Algorithms: Collaborative Filtering. CSE 6111 Presentation Advanced Algorithms Fall Presented by: Farzana Yasmeen

Use of KNN for the Netflix Prize Ted Hong, Dimitris Tsamis Stanford University

CPSC 340: Machine Learning and Data Mining. Recommender Systems Fall 2017

Reddit Recommendation System Daniel Poon, Yu Wu, David (Qifan) Zhang CS229, Stanford University December 11 th, 2011

CS 572: Information Retrieval

Recommender Systems - Content, Collaborative, Hybrid

Recommender Systems. Techniques of AI

BBS654 Data Mining. Pinar Duygulu

Web Personalization & Recommender Systems

Collaborative Filtering Applied to Educational Data Mining

Web Personalization & Recommender Systems

Opportunities and challenges in personalization of online hotel search

Recommender System. What is it? How to build it? Challenges. R package: recommenderlab

Performance Comparison of Algorithms for Movie Rating Estimation

CS249: ADVANCED DATA MINING

Mining Web Data. Lijun Zhang

CS 229 Final Project - Using machine learning to enhance a collaborative filtering recommendation system for Yelp

CSE 547: Machine Learning for Big Data Spring Problem Set 2. Please read the homework submission policies.

General Instructions. Questions

Mining Web Data. Lijun Zhang

Recommendation System for Netflix

Additive Regression Applied to a Large-Scale Collaborative Filtering Problem

Recommender Systems. Master in Computer Engineering Sapienza University of Rome. Carlos Castillo

Recommender Systems New Approaches with Netflix Dataset

By Atul S. Kulkarni Graduate Student, University of Minnesota Duluth. Under The Guidance of Dr. Richard Maclin

CS570: Introduction to Data Mining

CptS 570 Machine Learning Project: Netflix Competition. Parisa Rashidi Vikramaditya Jakkula. Team: MLSurvivors. Wednesday, December 12, 2007

Part 11: Collaborative Filtering. Francesco Ricci

Available online at ScienceDirect. Procedia Technology 17 (2014 )

Machine Learning and Data Mining. Clustering (1): Basics. Kalev Kask

Collaborative Filtering using Euclidean Distance in Recommendation Engine

Recommender Systems: User Experience and System Issues

Using Data Mining to Determine User-Specific Movie Ratings

Distribution-free Predictive Approaches

Singular Value Decomposition, and Application to Recommender Systems

Information Retrieval: Retrieval Models

Data Mining Lecture 2: Recommender Systems

Recommender Systems - Introduction. Data Mining Lecture 2: Recommender Systems

Community-Based Recommendations: a Solution to the Cold Start Problem

COMP6237 Data Mining Making Recommendations. Jonathon Hare

Neighborhood-Based Collaborative Filtering

Business Cases for Machine Learning

Part 11: Collaborative Filtering. Francesco Ricci

An Empirical Comparison of Collaborative Filtering Approaches on Netflix Data

Mining of Massive Datasets Jure Leskovec, Anand Rajaraman, Jeff Ullman Stanford University

Collaborative Filtering for Netflix

City, University of London Institutional Repository. This version of the publication may differ from the final published version.

Multiple Regression White paper

Assignment 5: Collaborative Filtering

Sparse Estimation of Movie Preferences via Constrained Optimization

Part 12: Advanced Topics in Collaborative Filtering. Francesco Ricci

DS Machine Learning and Data Mining I. Alina Oprea Associate Professor, CCIS Northeastern University

VCEasy VISUAL FURTHER MATHS. Overview

TriRank: Review-aware Explainable Recommendation by Modeling Aspects

Non-negative Matrix Factorization for Multimodal Image Retrieval

THE goal of a recommender system is to make predictions

CS473: Course Review CS-473. Luo Si Department of Computer Science Purdue University

Lecture 7: Linear Regression (continued)

IMPROVING SCALABILITY ISSUES USING GIM IN COLLABORATIVE FILTERING BASED ON TAGGING

CSC 411 Lecture 18: Matrix Factorizations

On hybrid modular recommendation systems for video streaming

CS224W Project: Recommendation System Models in Product Rating Predictions

CSE 258 Lecture 5. Web Mining and Recommender Systems. Dimensionality Reduction

Weighted Alternating Least Squares (WALS) for Movie Recommendations) Drew Hodun SCPD. Abstract

Improving Results and Performance of Collaborative Filtering-based Recommender Systems using Cuckoo Optimization Algorithm

Recommender system techniques applied to Netflix movie data

Towards a hybrid approach to Netflix Challenge

Hotel Recommendation Based on Hybrid Model

Content-based Dimensionality Reduction for Recommender Systems

Matrix-Vector Multiplication by MapReduce. From Rajaraman / Ullman- Ch.2 Part 1

A Recommender System Based on Improvised K- Means Clustering Algorithm

CS7267 MACHINE LEARNING NEAREST NEIGHBOR ALGORITHM. Mingon Kang, PhD Computer Science, Kennesaw State University

Recommender System Optimization through Collaborative Filtering

Zombies! Zombies! Zombies!

Preface to the Second Edition. Preface to the First Edition. 1 Introduction 1

Transcription:

Machine Learning and Data Mining Collaborative Filtering & Recommender Systems Kalev Kask

Recommender systems Automated recommendations Inputs User information Situation context, demographics, preferences, past ratings Items Output Item characteristics, or nothing at all Relevance score, predicted rating, or ranking

Recommender systems: examples

Paradigms of recommender systems Recommender systems reduce information overload by estimating relevance Recommendation system Item score I 0.9 I I 0. Recommendations

Paradigms of recommender systems Personalized recommendations User profile / context Recommendation system Item score I 0.9 I I 0. Recommendations

Paradigms of recommender systems User profile / context Content-based: Show me more of the same things that I ve liked Title Genre Actors Product / item features Recommendation system Item score I 0.9 I I 0. Recommendations

Paradigms of recommender systems User profile / context Knowledge-based: Tell me what fits based on my needs Title Genre Actors Product / item features Recommendation system Item score I 0.9 I I 0. Recommendations Knowledge models

Paradigms of recommender systems User profile / context Collaborative: Tell me what s popular among my peers Community data Recommendation system Item score I 0.9 I I 0. Recommendations

Paradigms of recommender systems User profile / context Hybrid: Combine information from many inputs and/or methods Community data Title Genre Actors Product / item features Recommendation system Item score I 0.9 I I 0. Recommendations Knowledge models

Measuring success Prediction perspective Predict to what degree users like the item Most common evaluation for research Regression vs. top-k ranking, etc. Interaction perspective Promote positive feeling in users ( satisfaction ) Educate about the products Persuade users, provide explanations Conversion perspective Commercial success Increase hit, click-through rates Optimize sales and profits

Why are recommenders important? The long tail of product appeal A few items are very popular Most items are popular only with a few people Goal: recommend not-widely known items that the user might like! Recommend the best-seller list Recommendations need to be targeted!

Collaborative filtering 0 9 8 7? users movies

Collaborative filtering Simple approach: standard regression Use user features u~, item features i~ Train f(u~, i~) r iu Learn users with my features like items with these features Extreme case: per-user model / per-item model Issues: needs lots of side information! 0 9 8 7? users movies Features:

Collaborative filtering Example: nearest neighbor methods Which data are similar? Nearby items? (based on ) 0 9 8 7? users movies Features:

Collaborative filtering Example: nearest neighbor methods Which data are similar? Nearby items? (based on ) 0 9 8 7? users movies Based on ratings alone? Find other items that are rated similarly Good match on observed ratings

Collaborative filtering Which data are similar? Nearby items? Nearby users? Based on user features? Based on ratings? 0 9 8 7? users movies

Collaborative filtering Some very simple examples All users similar, items not similar? All items similar, users not similar? All users and items are equally similar? 0 9 8 7? users movies

Measuring similarity Nearest neighbors depends significantly on distance function Default : Euclidean distance Collaborative filtering: Cosine similarity: (measures angle between x^i, x^j) Pearson correlation: measure correlation coefficient between x^i, x^j Often perform better in recommender tasks Variant: weighted nearest neighbors Average over neighbors is weighted by their similarity Note: with ratings, need to deal with missing data!

0 9 8 7? users Neighbor selection: Identify movies similar to, rated by user movies Nearest-Neighbor methods

0 9 8 7? users Compute similarity weights: s =0., s =0. movies Nearest-Neighbor methods

0 9 8 7. users Predict by taking weighted average: (0.*+0.*)/(0.+0.)=. movies Nearest-Neighbor methods

Latent space methods 0 9 8 7? users movies From Y. Koren of BellKor team X N x D U N x K V T K x D S K x K

Latent Space Models From Y. Koren of BellKor team Model ratings matrix as user and movie positions Infer values from known ratings items users ~ Extrapolate to unranked users. -... -... - -..8 -.... -.9 ~ items -. -........ -.8..7 -.....7.. -.9. -..9. -.7.8..7 -. -... -.7. - -.7.

Latent Space Models From Y. Koren of BellKor team The Color Purple serious Amadeus Braveheart Chick flicks? Sense and Sensibility Ocean s Lethal Weapon The Princess Diaries The Lion King escapist Independence Day Dumb and Dumber

Some SVD dimensions See timelydevelopment.com Dimension Offbeat / Dark-Comedy Lost in Translation The Royal Tenenbaums Dogville Eternal Sunshine of the Spotless Mind Punch-Drunk Love Mass-Market / 'Beniffer' Movies Pearl Harbor Armageddon The Wedding Planner Coyote Ugly Miss Congeniality Dimension Good Twisted VeggieTales: Bible Heroes: Lions The Saddest Music in the World The Best of Friends: Season Wake Up Felicity: Season I Heart Huckabees Friends: Season Freddy Got Fingered Friends: Season House of Dimension What a 0 year old boy would watch What a liberal woman would watch Dragon Ball Z: Vol. 7: Super Saiyan Fahrenheit 9/ Battle Athletes Victory: Vol. : Spaceward Ho! The Hours Battle Athletes Victory: Vol. : No Looking Back Going Upriver: The Long War of John Kerry Battle Athletes Victory: Vol. 7: The Last Dance Sex and the City: Season Battle Athletes Victory: Vol. : Doubt and Conflic Bowling for Columbine

Latent space models Latent representation encodes some meaning What kind of movie is this? What movies is it similar to? Matrix is full of missing data Hard to take SVD directly Typically solve using gradient descent Easy algorithm (see Netflix challenge forum) # for user u, movie m, find the kth eigenvector & coefficient by iterating: predict_um = U[m,:].dot( V[:,u] ) # predict: vector-vector product err = ( rating[u,m] predict_um ) # find error residual V_ku, U_mk = V[k,u], U[m,k] # make copies for update U[m,k] += alpha * err * V_ku # Update our matrices V[k,u] += alpha * err * U_mk # (compare to least-squares gradient)

Latent space models Can be a bit more sophisticated: r iu μ + b u + b i + k W ik V ku Overall average rating User effect + Item effect Latent space effects (k indexes latent representation) (Saturating non-linearity?) Then, just train some loss, e.g. MSE, with SGD Each (user, item, rating) is one data point E.g. J= iu (X iu r iu )

Ensembles for recommenders Given that we have many possible models: Feature-based regression (Weighted) knn on items (Weighted) knn on users Latent space representation perhaps we should combine them? Use an ensemble average, or a stacked ensemble Stacked : train a weighted combination of model predictions