Recommender Systems: An Introduction to the Art Tony White

Slides:



Advertisements
Similar presentations
Recommender System A Brief Survey.
Advertisements

Recommender Systems & Collaborative Filtering
Content-based Recommendation Systems
Content-based recommendation While CF – methods do not require any information about the items, it might be reasonable to exploit such information;
Prediction Modeling for Personalization & Recommender Systems Bamshad Mobasher DePaul University Bamshad Mobasher DePaul University.
Chapter 5: Introduction to Information Retrieval
A Graph-based Recommender System Zan Huang, Wingyan Chung, Thian-Huat Ong, Hsinchun Chen Artificial Intelligence Lab The University of Arizona 07/15/2002.
Hybrid recommender systems Hybrid: combinations of various inputs and/or composition of different mechanism Knowledge-based: "Tell me what.
COMP423 Intelligent Agents. Recommender systems Two approaches – Collaborative Filtering Based on feedback from other users who have rated a similar set.
1 RegionKNN: A Scalable Hybrid Collaborative Filtering Algorithm for Personalized Web Service Recommendation Xi Chen, Xudong Liu, Zicheng Huang, and Hailong.
Oct 14, 2014 Lirong Xia Recommender systems acknowledgment: Li Zhang, UCSC.
COLLABORATIVE FILTERING Mustafa Cavdar Neslihan Bulut.
Collaborative Filtering
Recommender Systems – An Introduction Dietmar Jannach, Markus Zanker, Alexander Felfernig, Gerhard Friedrich Cambridge University Press Which digital.
Recommender Systems Aalap Kohojkar Yang Liu Zhan Shi March 31, 2008.
Information Retrieval Ling573 NLP Systems and Applications April 26, 2011.
Query Operations: Automatic Local Analysis. Introduction Difficulty of formulating user queries –Insufficient knowledge of the collection –Insufficient.
Database Management Systems, R. Ramakrishnan1 Computing Relevance, Similarity: The Vector Space Model Chapter 27, Part B Based on Larson and Hearst’s slides.
1 Collaborative Filtering and Pagerank in a Network Qiang Yang HKUST Thanks: Sonny Chee.
Hinrich Schütze and Christina Lioma
Agent Technology for e-Commerce
Recommender systems Ram Akella February 23, 2011 Lecture 6b, i290 & 280I University of California at Berkeley Silicon Valley Center/SC.
1 Introduction to Recommendation System Presented by HongBo Deng Nov 14, 2006 Refer to the PPT from Stanford: Anand Rajaraman, Jeffrey D. Ullman.
Recommender Systems; Social Information Filtering.
Recommender systems Ram Akella November 26 th 2008.
Information Retrieval
CONTENT-BASED BOOK RECOMMENDING USING LEARNING FOR TEXT CATEGORIZATION TRIVIKRAM BHAT UNIVERSITY OF TEXAS AT ARLINGTON DATA MINING CSE6362 BASED ON PAPER.
Chapter 5: Information Retrieval and Web Search
Relevant words extraction method for recommender system Presentation slides.
1 Text Categorization  Assigning documents to a fixed set of categories  Applications:  Web pages  Recommending pages  Yahoo-like classification hierarchies.
Chapter 12 (Section 12.4) : Recommender Systems Second edition of the book, coming soon.
Item-based Collaborative Filtering Recommendation Algorithms
Distributed Networks & Systems Lab. Introduction Collaborative filtering Characteristics and challenges Memory-based CF Model-based CF Hybrid CF Recent.
1 Information Filtering & Recommender Systems (Lecture for CS410 Text Info Systems) ChengXiang Zhai Department of Computer Science University of Illinois,
Clustering-based Collaborative filtering for web page recommendation CSCE 561 project Proposal Mohammad Amir Sharif
Presented By :Ayesha Khan. Content Introduction Everyday Examples of Collaborative Filtering Traditional Collaborative Filtering Socially Collaborative.
Toward the Next generation of Recommender systems
1 Recommender Systems Collaborative Filtering & Content-Based Recommending.
Chapter 6: Information Retrieval and Web Search
1 Computing Relevance, Similarity: The Vector Space Model.
CPSC 404 Laks V.S. Lakshmanan1 Computing Relevance, Similarity: The Vector Space Model Chapter 27, Part B Based on Larson and Hearst’s slides at UC-Berkeley.
Collaborative Filtering  Introduction  Search or Content based Method  User-Based Collaborative Filtering  Item-to-Item Collaborative Filtering  Using.
A Content-Based Approach to Collaborative Filtering Brandon Douthit-Wood CS 470 – Final Presentation.
1 Collaborative Filtering & Content-Based Recommending CS 290N. T. Yang Slides based on R. Mooney at UT Austin.
Recommender Systems Debapriyo Majumdar Information Retrieval – Spring 2015 Indian Statistical Institute Kolkata Credits to Bing Liu (UIC) and Angshul Majumdar.
Data Mining: Knowledge Discovery in Databases Peter van der Putten ALP Group, LIACS Pre-University College LAPP-Top Computer Science February 2005.
Similarity & Recommendation Arjen P. de Vries CWI Scientific Meeting September 27th 2013.
Recommender Systems. Recommender Systems (RSs) n RSs are software tools providing suggestions for items to be of use to users, such as what items to buy,
Recommendation Algorithms for E-Commerce. Introduction Millions of products are sold over the web. Choosing among so many options is proving challenging.
User Modeling and Recommender Systems: Introduction to recommender systems Adolfo Ruiz Calleja 06/09/2014.
Collaborative Filtering via Euclidean Embedding M. Khoshneshin and W. Street Proc. of ACM RecSys, pp , 2010.
Personalization Services in CADAL Zhang yin Zhuang Yuting Wu Jiangqin College of Computer Science, Zhejiang University November 19,2006.
User Modeling and Recommender Systems: recommendation algorithms
Item-Based Collaborative Filtering Recommendation Algorithms Badrul Sarwar, George Karypis, Joseph Konstan, and John Riedl GroupLens Research Group/ Army.
What do you recommend? THOSE … THIS … THAT 1. what you’ll read next summer (Amazon, Barnes&Noble) what movies you should watch… (Reel, RatingZone, Amazon)
Presented By: Madiha Saleem Sunniya Rizvi.  Collaborative filtering is a technique used by recommender systems to combine different users' opinions and.
1 Text Categorization  Assigning documents to a fixed set of categories  Applications:  Web pages  Recommending pages  Yahoo-like classification hierarchies.
Collaborative Filtering - Pooja Hegde. The Problem : OVERLOAD Too much stuff!!!! Too many books! Too many journals! Too many movies! Too much content!
Recommendation Systems ARGEDOR. Introduction Sample Data Tools Cases.
Item-Based Collaborative Filtering Recommendation Algorithms
Chapter 14 – Association Rules and Collaborative Filtering © Galit Shmueli and Peter Bruce 2016 Data Mining for Business Analytics (3rd ed.) Shmueli, Bruce.
COMP423 Intelligent Agents. Recommender systems Two approaches – Collaborative Filtering Based on feedback from other users who have rated a similar set.
Matrix Factorization and Collaborative Filtering
Recommender Systems 11/04/2017
Data Mining: Concepts and Techniques
Recommender Systems & Collaborative Filtering
Adopted from Bin UIC Recommender Systems Adopted from Bin UIC.
Text Categorization Assigning documents to a fixed set of categories
Recommender Systems Copyright: Dietmar Jannah, Markus Zanker and Gerhard Friedrich (slides based on their IJCAI talk „Tutorial: Recommender Systems”)
Introduction to Artificial Intelligence Lecture 22: Computer Vision II
Presentation transcript:

Recommender Systems: An Introduction to the Art Tony White

ACKNOWLEDGEMENT Several of these slides are associated with material from “Recommender Systems: An Introduction”.

Agenda Definition Collaborative Filtering Content-based Filtering

What is a recommender system? It is a utility to help users find items in which they are interested among catalogues containing a huge number of services and products. It helps users deal with information overload in search engines’ results. It has roots in: information retrieval, cognitive science, customer marketing modeling and management.

Recommender systems RS seen as a function Given: Find: User model (e.g. ratings, preferences, demographics, situational context) Items (with or without description of item characteristics) Find: Relevance score. Used for ranking. Relation to Information Retrieval: IR is finding material [..] of an unstructured nature [..] that satisfies an information need from within large collections [..]. (Manning et al. 20081) (1) Manning, Raghavan, and Schütze, Introduction to information retrieval, Cambridge University Press, 2008

Recommender System Paradigms Recommender systems reduce information overload by estimating relevance

Recommender System Paradigms Personalized recommendations

Recommender System Paradigms Collaborative: "Tell me what's popular among my peers"

Recommender System Paradigms Content-based: "Show me more of the same what I've liked"

Recommender System Paradigms Knowledge-based: "Tell me what fits based on my needs"

Recommender System Paradigms Hybrid: combinations of various inputs and/or composition of different mechanism

Collaborative Filtering

Collaborative Filtering (CF) The most prominent approach to generate recommendations used by large, commercial e-commerce sites well-understood, various algorithms and variations exist applicable in many domains (book, movies, DVDs, ..) Approach use the "wisdom of the crowd" to recommend items Basic assumption and idea Users give ratings to catalog items (implicitly or explicitly) Customers who had similar tastes in the past, will have similar tastes in the future

Pure CF Approaches Input Output types Only a matrix of given user–item ratings Output types A (numerical) prediction indicating to what degree the current user will like or dislike a certain item A top-N list of recommended items

User-based nearest-neighbor collaborative filtering (1)  

User-based nearest-neighbor collaborative filtering (2) Example A database of ratings of the current user, Alice, and some other users is given: Determine whether Alice will like or dislike Item5, which Alice has not yet rated or seen Item1 Item2 Item3 Item4 Item5 Alice 5 3 4 ? User1 1 2 User2 User3 User4

User-based nearest-neighbor collaborative filtering (3) Some first questions How do we measure similarity? How many neighbors should we consider? How do we generate a prediction from the neighbors' ratings? Item1 Item2 Item3 Item4 Item5 Alice 5 3 4 ? User1 1 2 User2 User3 User4

Measuring user similarity (1)    

Measuring user similarity (2)   Item1 Item2 Item3 Item4 Item5 Alice 5 3 4 ? User1 1 2 User2 User3 User4 sim = -0.79 sim = 0.00 sim = 0.85 sim = 0.71 Assumes that you don’t include item5 in average

Pearson correlation Takes differences in rating behavior into account Works well in usual domains, compared with alternative measures such as cosine similarity

Making predictions     Only include reasonably similar users (>0). Also, average here includes ALL reasonably similar users ratings (not the same average as before).

Improving the metrics / prediction function Not all neighbor ratings might be equally "valuable" Agreement on commonly liked items is not so informative as agreement on controversial items Possible solution: Give more weight to items that have a higher variance Value of number of co-rated items Use "significance weighting", by e.g., linearly reducing the weight when the number of co-rated items is low Case amplification Intuition: Give more weight to "very similar" neighbors, i.e., where the similarity value is close to 1. Neighborhood selection Use similarity threshold or fixed number of neighbors

Memory-based and model-based approaches User-based CF is said to be "memory-based" the rating matrix is directly used to find neighbors / make predictions does not scale for most real-world scenarios large e-commerce sites have tens of millions of customers and millions of items Model-based approaches based on an offline pre-processing or "model-learning" phase at run-time, only the learned model is used to make predictions models are updated / re-trained periodically large variety of techniques used model-building and updating can be computationally expensive item-based CF is an example for model-based approaches

Item-based collaborative filtering Basic idea: Use the similarity between items (and not users) to make predictions Example: Look for items that are similar to Item5 Take Alice's ratings for these items to predict the rating for Item5 Item1 Item2 Item3 Item4 Item5 Alice 5 3 4 ? User1 1 2 User2 User3 User4

The cosine similarity measure      

Making predictions A common prediction function: Neighborhood size is typically also limited to a specific size Not all neighbors are taken into account for the prediction An analysis of the MovieLens dataset indicates that "in most real-world situations, a neighborhood of 20 to 50 neighbors seems reasonable" (Herlocker et al. 2002)  

Data sparsity problems Cold start problem How to recommend new items? What to recommend to new users? Straightforward approaches Ask/force users to rate a set of items Use another method (e.g., content-based, demographic or simply non-personalized) in the initial phase Default voting: assign default values to items that only one of the two users to be compared has rated (Breese et al. 1998) Alternatives Use better algorithms (beyond nearest-neighbor approaches) Example: In nearest-neighbor approaches, the set of sufficiently similar neighbors might be too small to make good predictions Assume "transitivity" of neighborhoods

Association rule mining  

Recommendation based on Association Rule Mining Item1 Item2 Item3 Item4 Item5 Alice 1 ? User1 User2 User3 User4 Simplest approach transform 5-point ratings into binary ratings (1 = above user average) Mine rules such as Item1 → Item5 support (2/4), confidence (2/2) (without Alice) Make recommendations for Alice (basic method) Determine "relevant" rules based on Alice's transactions (the above rule will be relevant as Alice bought Item1) Determine items not already bought by Alice Sort the items based on the rules' confidence values Different variations possible dislike statements, user associations .. Mention APRIORI algorithm

The Apriori Algorithm Min support =50% Database D L1 C1 Scan D C2 C2

Content-based recommendation

Content-based recommendation While CF – methods do not require any information about the items, it might be reasonable to exploit such information; and recommend fantasy novels to people who liked fantasy novels in the past What do we need: some information about the available items such as the genre ("content") some sort of user profile describing what the user likes (the preferences) The task: learn user preferences locate/recommend items that are "similar" to the user preferences "show me more of the same what I've liked"

What is the "content"? Most CB-recommendation techniques applied to recommending text documents. Like web pages or newsgroup messages for example. Content of items can also be represented as text documents. With textual descriptions of their basic characteristics. Structured: Each item is described by the same set of attributes Unstructured: free-text description. Title Genre Author Type Price Keywords The Night of the Gun Memoir David Carr Paperback 29.90 Press and journalism, drug addiction, personal memoirs, New York The Lace Reader Fiction, Mystery Brunonia Barry Hardcover 49.90 American contemporary fiction, detective, historical Into the Fire Romance, Suspense Suzanne Brockmann 45.90 American fiction, murder, neo-Nazism

Content representation and item similarities Item representation Title Genre Author Type Price Keywords The Night of the Gun Memoir David Carr Paperback 29.90 Press and journalism, drug addiction, personal memoirs, New York The Lace Reader Fiction, Mystery Brunonia Barry Hardcover 49.90 American contemporary fiction, detective, historical Into the Fire Romance, Suspense Suzanne Brockmann 45.90 American fiction, murder, neo-Nazism User profile   Title Genre Author Type Price Keywords … Fiction Brunonia, Barry, Ken Follett Paperback 25.65 Detective, murder, New York Simple approach Compute the similarity of an unseen item with the user profile based on the keyword overlap (e.g. using the Dice coefficient) Or use and combine multiple metrics  

Simple keyword representation has its problems   Simple keyword representation has its problems in particular when automatically extracted as not every word has similar importance longer documents have a higher chance to have an overlap with the user profile Standard measure: TF-IDF Encodes text documents in multi-dimensional Euclidian space weighted term vector TF: Measures, how often a term appears (density in a document) assuming that important terms appear more often normalization has to be done in order to take document length into account IDF: Aims to reduce the weight of terms that appear in all documents

TF-IDF II   or log(1+freqij)

Example TF-IDF representation   Antony and Cleopatra Julius Caesar The Tempest Hamlet Othello Macbeth Antony 157 73 Brutus 4 1 Caesar 232 227 2 Calpurnia 10 Cleopatra 57 mercy 1.51 3 5 worser 1.37   Example taken from http://informationretrieval.org

Example TF-IDF representation   Antony and Cleopatra Julius Caesar The Tempest Hamlet Othello Macbeth Antony 157 73 Brutus 4 1 Caesar 232 227 2 Calpurnia 10 Cleopatra 57 mercy 1.51 3 5 worser 1.37 Antony and Cleopatra Julius Caesar The Tempest Hamlet Othello Macbeth Antony 5.25 3.18 0.35 Brutus 1.21 6.1 1 Caesar 8.59 2.54 1.51 0.25 Calpurnia 1.54 Cleopatra 2.85 mercy 1.9 0.12 0.88 worser 1.37 0.11 4.15 1.95 Example taken from http://informationretrieval.org

Improving the vector space model Vectors are usually long and sparse remove stop words They will appear in nearly all documents. e.g. "a", "the", "on", … use stemming Aims to replace variants of words by their common stem e.g. "went" "go", "stemming" "stem", … size cut-offs only use top n most representative words to remove "noise" from data e.g. use top 100 words

Cosine similarity  

Recommending items  

Recommending items Retrieval quality depends on individual capability to formulate queries with right keywords. Query-based retrieval: Rocchio's method The SMART System: Users are allowed to rate (relevant/irrelevant) retrieved documents (feedback) The system then learns a prototype of relevant/irrelevant documents Queries are then automatically extended with additional terms/weight of relevant documents

Rocchio details Document collections D+ (liked) and D- (disliked) Calculate prototype vector for these categories. Computing modified query Qi+1 from current query Qi with: , ,  used to fine-tune the feedback  weight for original query  weight for positive feedback  weight for negative feedback   Often only positive feedback is used More valuable than negative feedback Typical α=1,β=0.8,γ=0

Practical challenges of Rocchio's method  

Summary Described collaborative filtering and content-based filtering Problems of cold start, sparsity and dimensionality Knowledge based systems deal with domains where few examples exist Integration of social network data also used