recommender systems
DESCRIPTION
Recommender Systems. Martin Ester Simon Fraser University School of Computing Science CMPT 884 Spring 2009. Recommender Systems. Outline Introduction motivation, applications, issues Collaborative filtering user-based, item-based, challenges - PowerPoint PPT PresentationTRANSCRIPT
CMPT 884, SFU, Martin Ester, 1-09 1
Recommender Systems
Martin EsterSimon Fraser University
School of Computing Science
CMPT 884Spring 2009
CMPT 884, SFU, Martin Ester, 1-09 2
Recommender Systems
Outline• Introduction
motivation, applications, issues• Collaborative filtering
user-based, item-based, challenges• Trust-based recommendation deterministic, random walks, challenges• Model-based recommendation
[Konstan 2008] [Cohen 2002]
CMPT 884, SFU, Martin Ester, 1-09 3
Recommender SystemsIntroduction
• search engine users just type in a few keywords• search engine overwhelms user with a flood of results• ranking mechanism based on similarity between
query keywords and web pages and on prestige of pages• search engine‘s answers do not take into account user feedback and users‘ preferences Information needs more complex than keywords or topics: quality and taste
CMPT 884, SFU, Martin Ester, 1-09 4
Recommender SystemsIntroduction
• Users are not willing to spend a lot of time to specify their personal information needs• Recommender systems automatically identify relevant information or products relevant for a given user, learning from available data • Data can be transactions of all users / customers of a website or profile of an individual user
users who bought this book also bought . . . (Amazon.com)
CMPT 884, SFU, Martin Ester, 1-09 5
Recommender SystemsPersonalization Level
• Genericeveryone receives same recommendations
• Demographicmatches a demographic group
•Personalizedmatches an individual, everybody gets different recommendations
• Ephemeralmatches current activity
• Persistentmatches long-term interests
CMPT 884, SFU, Martin Ester, 1-09 6
Recommender Systems
Types of Systems
• Filtering interfacesE-mail filters, clipping services
• Recommendation interfacessuggestion lists, “top-n,” offers and promotions
• Prediction interfacesevaluate candidates, predicted ratings
CMPT 884, SFU, Martin Ester, 1-09 7
Recommender Systems
Collaborative Filtering• Main idea users rate items
users are correlated with other userspersonal predictions for unrated items
• Nearest-Neighbor Approachfind people with history of agreementaggregate their ratings to predict rating of userassume stable tastes
employs data about the target user and other users
CMPT 884, SFU, Martin Ester, 1-09 8
Recommender Systems
TargetTargetuseruser
Aggregator
Prediction
CMPT 884, SFU, Martin Ester, 1-09 9
Recommender Systems
Collaborative Filtering
CMPT 884, SFU, Martin Ester, 1-09 10
Recommender Systems
Collaborative Filtering•Recommendation task 1
Predicting the rating on a target item for a given user Predicting John’s rating on Star Wars Movie
movie1 ??Recommender
CMPT 884, SFU, Martin Ester, 1-09 11
Recommender Systems
Collaborative Filtering•Recommendation task 2
Recommending a list of items to a given user Recommending a list of movies to John for
watchingList of Top Movies ??
Recommender
CMPT 884, SFU, Martin Ester, 1-09 12
Recommender Systems
Applications
•Movie recommendations
•Book recommendations
•Recommendation of friends
CMPT 884, SFU, Martin Ester, 1-09 13
Recommender Systems
Privacy and Trustworthiness• Who knows what about me?
– personal information revealed– identity
• Is the recommendation honest?– biases built-in by operatore.g. want to sell „old hats“ or prefers ads with higher bids
• Vulnerability to external manipulation (fraud)- insert fraudulent user profiles which rate my producthighly
CMPT 884, SFU, Martin Ester, 1-09 14
Collaborative Filtering
Introduction
Rating Matrix
Users
Items
Ratings
What is Joe’s rating of Blimp and of RockyXV?
Similar user
CMPT 884, SFU, Martin Ester, 1-09 15
Collaborative Filtering
Example
CMPT 884, SFU, Martin Ester, 1-09 16
Collaborative Filtering
Definitions
• vi,j: vote of user i on item j
• Ii = items for which user i has voted• mean vote of user i is• predicted vote for active user a on target item j is weighted sum of votes on j by n “similar” users
normalizer weights of n similar users
CMPT 884, SFU, Martin Ester, 1-09 17
Collaborative Filtering
Definitions
• K-nearest neighbor
• Pearson correlation coefficient
• Cosine distance
else0
)neighbors( if1),(
aiiaw
CMPT 884, SFU, Martin Ester, 1-09 18
Collaborative Filtering
Evaluation [Herlocker 2004]•split users into train/test sets•for each user a in the test set:
- split a’s votes into observed (I) and to-predict (P)
- measure average absolute deviation between predicted and actual votes in P
- alternatively, measure the squared deviation predicted and actual votes in P
•average error measure over all test users MAE or RMSE
CMPT 884, SFU, Martin Ester, 1-09 19
Collaborative Filtering
Evaluation•There is a trade-off between precision and recall•Measure also the recall / coverage,
i.e. the percentage of (a,i) pairs for which methodcan make a recommendation
•F-measure considers both precision and recall
Max squared error
CMPT 884, SFU, Martin Ester, 1-09 20
Collaborative Filtering
Evaluation
• so far, only comparison against ground truth• in industry, want to measure the business profit• user surveys • in an online system
measure click through ratesmeasure add-on sales
CMPT 884, SFU, Martin Ester, 1-09 21
Collaborative Filtering
Challenges
• user item rating matrix is very sparsetypically 99% of the entries unknown
dimensionality reduction item-item based CF• cannot make (accurate) recommendations for cold start users users who have recently joined the system and have rated only very few items (typically, 50% of users) trust-based recommendation
CMPT 884, SFU, Martin Ester, 1-09 22
Collaborative Filtering
Challenges
• the larger the user community- the more variance among the ratings- the more the ratings converge to the mean
value cluster users and use only the corresponding cluster
to make a recommendation • cannot compute the confidence of a recommendation
system does not know its limits probabilistic methods•vulnerable to fraud copy a user profile and become the most similar user trust-based recommendation
CMPT 884, SFU, Martin Ester, 1-09 23
Collaborative Filtering
Challenges
• need to explain recommendations• how to reward serendipity in the evaluation?
recommendations should not all be of the same kind• how to evaluate a set of recommendations?• how to produce the best sequence of recommendations?
CMPT 884, SFU, Martin Ester, 1-09 24
Collaborative Filtering
CMPT 884, SFU, Martin Ester, 1-09 25
Collaborative Filtering
leads to a denser rating, lower-dimensional matrix can alternatively use Singular Value Decomposition (SVD) or Latent Semantic Indexing (LSI)
CMPT 884, SFU, Martin Ester, 1-09 26
Collaborative Filtering
Item-Item Collaborative Filtering [Sarwar et al 2001]
• Many applications have many more users (customers)than items (products)
• Many customers have no similar customers• Most products have similar products• Make recommendation by considering ratings of active user for similar products
CMPT 884, SFU, Martin Ester, 1-09 27
Collaborative Filtering
Item-Item Collaborative Filtering
Aggregator
Prediction
CMPT 884, SFU, Martin Ester, 1-09 28
Collaborative Filtering
Explanations • Simple visual representations of neighbors ratings
• Statement of strong previous performance “MovieLens has predicted correctly 80% of the time for you”
CMPT 884, SFU, Martin Ester, 1-09 29
Collaborative FilteringExplanations
• Complex representations are not accepted by users, e.g.
- more than one dimension- any use of statistical
terminology such ascorrelation, variance, etc.
CMPT 884, SFU, Martin Ester, 1-09 30
Trust-based Recommendation
Introduction
•Users tend to trust ratings given by their trusted friends•Trust is propagated in the social network•Trust is transitive (to a certain degree)
and asymmetric•Use neighborhood of (directly or indirectly) trusted friends to find reliable ratings and make a recommendation• Can make recommendations for cold start users
as long as they are somehow connected to the network•More robust to fraud
CMPT 884, SFU, Martin Ester, 1-09 31
Trust-based Recommendation
Introduction
CMPT 884, SFU, Martin Ester, 1-09 32
Trust-based Recommendation
ara userofratingaverage:
Definitions
•ri,j: rating of user i for item j •Trust network:
graph G = (U,T) where U is a set of nodes (users) and T is a set of edges (trust relationships)•Edges can be weighted, but typically they are not•Trust relationships can be explicitly stated by users (e.g., Epinions.com) or be implicitly derived from observed interactions between users (e.g., MSN network)
otherwise0,
Tv)(u, if,1,vut
CMPT 884, SFU, Martin Ester, 1-09 33
Trust-based Recommendation
Definitions
• for users i and j which are connected via T, the indirect trust between i and j is defined via some trust model, based on the direct trust values• raters: all users that have rated target item i•trusted raters: all raters that are trusted by active user u (to a certain degree)
CMPT 884, SFU, Martin Ester, 1-09 34
Trust-based Recommendation
uaw ua userinuseroftrust:,
Definitions
•
and f is a function comuting the trust model
•recommendation by aggregating the ratings of k trusted raters u
T})),( and T),(|),({(f
Tu)(a, if,
,,
,, uvvatt
tw
uvva
uaua
CMPT 884, SFU, Martin Ester, 1-09 35
Trust-based Recommendation
Issues
•How to compute the indirect trust?•How many of the trusted raters to consider?•Which ones?•If using too few, the prediction is not based on a significant number or rates. If using too many, these raters may only be weakly trusted.•In a large trust network, need to consider also the efficiency of exploring the trust network.
CMPT 884, SFU, Martin Ester, 1-09 36
Trust-based Recommendation
TidalTrust [Golbeck 2005]
• most accurate information will come from the highest trusted neighbors•in principle, each node should consider only its neighbors with highest trust rating• but different nodes have different max trust among their neighbors, which would lead to different levels of trust in different parts of the network• max: largest trust value such that a path can be found from source to sink with all tij >= max• define indirect trust recursively
CMPT 884, SFU, Martin Ester, 1-09 37
Trust-based Recommendation
MoleTrust [Massa et al 2007]
• trust model similar to TidalTrust• major difference in the set of trusted raters considered• both, TidalTrust and MoleTrust perform a breadth-first search of the trust network• TidalTrust considers all raters at the minimum depth (shortest path distance from the active user)• MoleTrust considers all raters up to a specified maximum depth
CMPT 884, SFU, Martin Ester, 1-09 38
Trust-based Recommendation
Discussion
• TidalTrust is likely to find only very few raters• MoleTrust may consider too many raters• TidalTrust ignores the actual ratings and their distribution• MoleTrust even ignores the actual distribution of the raters maximum depth independent of a and i
CMPT 884, SFU, Martin Ester, 1-09 39
Trust-based Recommendation
Random Walks [Andersen et al 2008]
•perform a random walk in the trust network starting from user a•if current user u has rating for item i, return it•otherwise, choose a trusted neighbor v randomly with probability proportional to tu,v and go to v•terminate as soon as rating found or some specified maxdepth reached• repeat random walks until the average aggregated rating converges •use the aggregated rating as recommendation termination depends on distribution of raters and ratings
CMPT 884, SFU, Martin Ester, 1-09 40
Trust-based Recommendation
Experimental Evaluation
•Epinions datasetproducts rated on a scale of [1. . 5]explicit trust network (binary)
epinions.com•Distinguish cold start users and all users•Comparison of various CF and trust-based methods•Item based 0 / .4 / .8: considers only items with similarity
at least 0 / .4 / .8•Random Walk 1 / 6: considers trusted raters up to depth 1 / 6
CMPT 884, SFU, Martin Ester, 1-09 41
Trust-based Recommendation
Experimental Evaluation
•all trust-based methods greatly improve the coverage of CF methods•they also have very competitive RMSE
CMPT 884, SFU, Martin Ester, 1-09 42
Trust-based Recommendation
Experimental Evaluation
•all methods perform much better on all users than on cold start users only•the gain of trust-based methods is not so significant
CMPT 884, SFU, Martin Ester, 1-09 43
Model-based Recommendation
Introduction [Cohen 2002]
• so far: memory-based methodsCF, trust-based recommendation
• no training of a model•model-based approaches to CF:
1) CF as density estimation2) CF and content-based recommendation as classification
CMPT 884, SFU, Martin Ester, 1-09 44
Model-based Recommendation
CF as Density Estimation [Horvitz et al 1998]
• estimate Pr(Rij=k) for each user i, movie j, and rating k• use all available data to build model for this estimator
RijAirplane Matrix Room with a
View... Hidalgo
Joe 9 7 2 ... 7
Carol 8 ? 9 … ?
... ... ... ... ... ...
Kumar 9 3 ? … 6
CMPT 884, SFU, Martin Ester, 1-09 45
Model-based Recommendation
CF as Density Estimation
•a simple model
same model for all users
jkRkR
R
jikRi
kRj
ijk
ij
ij
ijij
movie of rating average)Pr(]E[
:unknown for valueexpected this toLeads
) rating users(#) : users(#
)Pr( , movies
CMPT 884, SFU, Martin Ester, 1-09 46
Model-based Recommendation
CF as Density Estimation
•a more complex modelgroup users into M “clusters”: c(1), ..., c(M)
same model for all users within a group
mij
ijm
ij
mcjmciR
mcimcikRkR
))(in of rating average())(Pr(][E
))(Pr())(|Pr()Pr(
estimate by counts
CMPT 884, SFU, Martin Ester, 1-09 47
Model-based Recommendation
CF as Density Estimation• group users into clusters using Expectation-Maximization:
- randomly initialize Pr(Rm,j=k) for each m i.e., initialize the clusters differently somehow- E-Step: estimate Pr(user i in cluster m) for each i,m- M-Step: find maximum likelihood (ML) estimator for Rij
within each cluster muse ratio of #(users i in cluster m with rating Rij=k) to #(user i in cluster m ), weighted by Pr(i in m) from E-step
- repeat E-step, M-step until convergence
CMPT 884, SFU, Martin Ester, 1-09 48
Model-based Recommendation
CF as Classification [Basu et al, 1998]
• Classification task: map (user,movie) pair into {likes,dislikes}• Training data: known likes/dislikes, test data: active users • Features: any properties of user/movie pair
Airplane Matrix Room with a View
... Hidalgo
comedy action romance ... action
Joe 27,M,70k 1 1 0 1
Carol 53,F,20k 1 1 0
...
Kumar 25,M,22k 1 0 0 1
Ua48,M,81k 0 1 ? ? ?
CMPT 884, SFU, Martin Ester, 1-09 49
Model-based Recommendation
CF as Classification• e.g., moviesLikedByUser(Joe) = {Airplane,Matrix,...,Hidalgo} age(Joe)=27, income(Joe)=70k, genre(Matrix)=action, director(Matrix) = . . Airplane Matrix Room with a
View... Hidalgo
comedy action romance ... action
Joe 27,M,70k 1 1 0 1
Carol 53,F,20k 1 1 0
...
Kumar 25,M,22k 1 0 0 1
Ua48,M,81k 0 1 ? ? ?
CMPT 884, SFU, Martin Ester, 1-09 50
Model-based Recommendation
CF as Classification
Airplane Matrix Room with a View
... Hidalgo
comedy action romance ... action
Joe 27,M,70k 1 1 0 1
Carol 53,F,20k 1 1 0
...
Kumar 25,M,22k 1 0 0 1
Ua48,M,81k 0 1 ? ? ?
genre={romance}, age=48, sex=male, income=81k, usersWhoLikedMovie={Carol}, moviesLikedByUser={Matrix,Airplane}, ...
CMPT 884, SFU, Martin Ester, 1-09 51
Model-based Recommendation
CF as Classification
Airplane Matrix Room with a View
... Hidalgo
comedy action romance ... action
Joe 27,M,70k 1 1 0 1
Carol 53,F,20k 1 1 0
...
Kumar 25,M,22k 1 0 0 1
Ua48,M,81k 0 1 ? ? ?
genre={action}, age=48, sex=male, income=81k, usersWhoLikedMovie = {Joe,Kumar}, moviesLikedByUser={Matrix,Airplane},...
CMPT 884, SFU, Martin Ester, 1-09 52
Model-based Recommendation
CF as Classification• Classification algorithm RIPPER (rule learner)• Sample classification rules
if NakedGun33/13 moviesLikedByUser(U) and Joe usersWhoLikedMovie(M) and genre(M)=comedy then likes(U,M)
if age(U)>12 and age(U)<17 and HolyGrail moviesLikedByUser(U) and director(M) =MelBrooks then likes(U,M)
if Ishtar moviesLikedByUser(U) then likes(U,M)
CMPT 884, SFU, Martin Ester, 1-09 53
Model-based Recommendation
CF as Classification• features - collaborative: UsersWhoLikedMovie, UsersWhoDislikedMovie, MoviesLikedByUser - content: Actors, Directors, Genre, MPAA rating, ... - hybrid: ComediesLikedByUser, DramasLikedByUser, UsersWhoLikedFewDramas, ...•predict liked(U,M) for the M in top quartile of U’s ranking for different feature sets• evaluate recall and precision w.r.t. actual (U,M) pairs
CMPT 884, SFU, Martin Ester, 1-09 54
Model-based Recommendation
CF as Classification
•precision at same level of recall (about 33%)
•RIPPER with collaborative features only performs worse than memory-based CF
by about 5 pts precision (73% vs. 78%)
• RIPPER with hybrid features performs better than memory- based CF
by about 5 pts precision (83% vs. 78%)
CMPT 884, SFU, Martin Ester, 1-09 55
Recommender SystemsReferences
•R. Andersen, C. Borgs, J. Chayes, U. Feige, A. Flaxman, A. Kalai, V.
Mirrokni, and M. Tennenholtz: Trust-based recommendation systems: an axiomatic approach, WWW 2008• Chumki Basu, Haym Hirsh, and William W. Cohen: Recommendation as Classification: Using Social and Content-Based Information in Recommendation, AAAI 1998•William Cohen: Collaborative Filtering, Tutorial DIMACS Workshop, 2002•Jennifer Golbeck: Computing and Applying Trust in Web-based Social Networks, PhD Thesis, University of Maryland College Park, 2005•J. Herlocker et al.: Evaluating Collaborative Filtering Recommender Systems, ACM Transactions on Information Systems, Jan. 2004
CMPT 884, SFU, Martin Ester, 1-09 56
Recommender SystemsReferences
• Eric Horvitz, Jack S. Breese, David Heckerman, David Hovel, Koos Rommelse: The Lumière Project: Bayesian User Modeling for Inferring the Goals and Needs of Software Users, UAI 1998• Joseph A. Konstan: Introduction to Recommender Systems, Tutorial SIGMOD 2008• Paolo Massa, Paolo Avesani: Trust-aware Recommender Systems, ACM RecSys 2007•Paul Resnick, Neophytos Iacovou, Mitesh Suchak, Peter Bergstrom, John Riedl: GroupLens: An Open Architecture for Collaborative Filtering of Netnews, ACM Conference on Computer Supported Cooperative Work, 1994• Badrul Sarwar, George Karypis, Joseph Konstan, and John Riedl: ItemBased Collaborative Filtering Recommendation Algorithms, WWW 2001