Presentation is loading. Please wait.

Presentation is loading. Please wait.

CMPT 884, SFU, Martin Ester, 1-09 104 Recommender Systems Martin Ester Simon Fraser University School of Computing Science CMPT 884 Spring 2009.

Similar presentations


Presentation on theme: "CMPT 884, SFU, Martin Ester, 1-09 104 Recommender Systems Martin Ester Simon Fraser University School of Computing Science CMPT 884 Spring 2009."— Presentation transcript:

1 CMPT 884, SFU, Martin Ester, 1-09 104 Recommender Systems Martin Ester Simon Fraser University School of Computing Science CMPT 884 Spring 2009

2 CMPT 884, SFU, Martin Ester, 1-09 105 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]

3 CMPT 884, SFU, Martin Ester, 1-09 106 Recommender Systems Introduction 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

4 CMPT 884, SFU, Martin Ester, 1-09 107 Recommender Systems Introduction 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)

5 CMPT 884, SFU, Martin Ester, 1-09 108 Recommender Systems Personalization Level Generic everyone receives same recommendations Demographic matches a demographic group Personalized matches an individual, everybody gets different recommendations Ephemeral matches current activity Persistent matches long-term interests

6 CMPT 884, SFU, Martin Ester, 1-09 109 Recommender Systems Types of Systems Filtering interfaces E-mail filters, clipping services Recommendation interfaces suggestion lists, “top-n,” offers and promotions Prediction interfaces evaluate candidates, predicted ratings

7 CMPT 884, SFU, Martin Ester, 1-09 110 Recommender Systems Collaborative Filtering Main idea users rate items users are correlated with other users personal predictions for unrated items Nearest-Neighbor Approach find people with history of agreement aggregate their ratings to predict rating of user assume stable tastes  employs data about the target user and other users

8 CMPT 884, SFU, Martin Ester, 1-09 111 Recommender Systems Targetuser Aggregator Prediction

9 CMPT 884, SFU, Martin Ester, 1-09 112 Recommender Systems Collaborative Filtering

10 CMPT 884, SFU, Martin Ester, 1-09 113 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

11 CMPT 884, SFU, Martin Ester, 1-09 114 Recommender Systems Collaborative Filtering Recommendation task 2 Recommending a list of items to a given user Recommending a list of movies to John for watching List of Top Movies ?? Recommender Movie 1Movie 2Movie 3

12 CMPT 884, SFU, Martin Ester, 1-09 115 Recommender Systems Applications Movie recommendations Book recommendations Recommendation of friends

13 CMPT 884, SFU, Martin Ester, 1-09 116 Recommender Systems Privacy and Trustworthiness Who knows what about me? – personal information revealed – identity Is the recommendation honest? – biases built-in by operator e.g. want to sell „old hats“ or prefers ads with higher bids Vulnerability to external manipulation (fraud) - insert fraudulent user profiles which rate my product highly

14 CMPT 884, SFU, Martin Ester, 1-09 117 Collaborative Filtering Introduction Rating Matrix Users Items Ratings What is Joe’s rating of Blimp and of RockyXV? Similar user

15 CMPT 884, SFU, Martin Ester, 1-09 118 Collaborative Filtering Example

16 CMPT 884, SFU, Martin Ester, 1-09 119 Collaborative Filtering Definitions v i,j : vote of user i on item j I i = 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

17 CMPT 884, SFU, Martin Ester, 1-09 120 Collaborative Filtering Definitions K-nearest neighbor Pearson correlation coefficient Cosine distance

18 CMPT 884, SFU, Martin Ester, 1-09 121 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

19 CMPT 884, SFU, Martin Ester, 1-09 122 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 method can make a recommendation F-measure considers both precision and recall Max squared error

20 CMPT 884, SFU, Martin Ester, 1-09 123 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 rates measure add-on sales

21 CMPT 884, SFU, Martin Ester, 1-09 124 Collaborative Filtering Challenges user item rating matrix is very sparse typically 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

22 CMPT 884, SFU, Martin Ester, 1-09 125 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

23 CMPT 884, SFU, Martin Ester, 1-09 126 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?

24 CMPT 884, SFU, Martin Ester, 1-09 127 Collaborative Filtering

25 CMPT 884, SFU, Martin Ester, 1-09 128 Collaborative Filtering  leads to a denser rating, lower-dimensional matrix  can alternatively use Singular Value Decomposition (SVD) or Latent Semantic Indexing (LSI)

26 CMPT 884, SFU, Martin Ester, 1-09 129 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

27 CMPT 884, SFU, Martin Ester, 1-09 130 Collaborative Filtering Item-Item Collaborative Filtering Aggregator Prediction

28 CMPT 884, SFU, Martin Ester, 1-09 131 Collaborative Filtering Explanations Simple visual representations of neighbors ratings Statement of strong previous performance “MovieLens has predicted correctly 80% of the time for you”

29 CMPT 884, SFU, Martin Ester, 1-09 132 Collaborative Filtering Explanations Complex representations are not accepted by users, e.g. - more than one dimension - any use of statistical terminology such as correlation, variance, etc.

30 CMPT 884, SFU, Martin Ester, 1-09 133 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

31 CMPT 884, SFU, Martin Ester, 1-09 134 Trust-based Recommendation Introduction

32 CMPT 884, SFU, Martin Ester, 1-09 135 Trust-based Recommendation Definitions r i,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)

33 CMPT 884, SFU, Martin Ester, 1-09 136 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)

34 CMPT 884, SFU, Martin Ester, 1-09 137 Trust-based Recommendation Definitions and f is a function comuting the trust model recommendation by aggregating the ratings of k trusted raters u

35 CMPT 884, SFU, Martin Ester, 1-09 138 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.

36 CMPT 884, SFU, Martin Ester, 1-09 139 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 t ij >= max define indirect trust recursively

37 CMPT 884, SFU, Martin Ester, 1-09 140 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

38 CMPT 884, SFU, Martin Ester, 1-09 141 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

39 CMPT 884, SFU, Martin Ester, 1-09 142 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 t u,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

40 CMPT 884, SFU, Martin Ester, 1-09 143 Trust-based Recommendation Experimental Evaluation Epinions dataset products 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

41 CMPT 884, SFU, Martin Ester, 1-09 144 Trust-based Recommendation Experimental Evaluation all trust-based methods greatly improve the coverage of CF methods they also have very competitive RMSE

42 CMPT 884, SFU, Martin Ester, 1-09 145 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

43 CMPT 884, SFU, Martin Ester, 1-09 146 Model-based Recommendation Introduction [Cohen 2002] so far: memory-based methods CF, trust-based recommendation no training of a model model-based approaches to CF: 1) CF as density estimation 2) CF and content-based recommendation as classification

44 CMPT 884, SFU, Martin Ester, 1-09 147 Model-based Recommendation CF as Density Estimation [Horvitz et al 1998] estimate Pr(R ij =k) for each user i, movie j, and rating k use all available data to build model for this estimator R ij AirplaneMatrixRoom with a View... Hidalgo Joe 972...7 Carol 8?9…?... Kumar 93?…6

45 CMPT 884, SFU, Martin Ester, 1-09 148 Model-based Recommendation CF as Density Estimation a simple model  same model for all users

46 CMPT 884, SFU, Martin Ester, 1-09 149 Model-based Recommendation CF as Density Estimation a more complex model group users into M “clusters”: c(1),..., c(M)  same model for all users within a group estimate by counts

47 CMPT 884, SFU, Martin Ester, 1-09 150 Model-based Recommendation CF as Density Estimation group users into clusters using Expectation-Maximization: - randomly initialize Pr(R m,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 R ij within each cluster m use ratio of #(users i in cluster m with rating R ij =k) to #(user i in cluster m ), weighted by Pr( i in m) from E-step - repeat E-step, M-step until convergence

48 CMPT 884, SFU, Martin Ester, 1-09 151 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 AirplaneMatrixRoom with a View... Hidalgo comedyactionromance... action Joe 27,M,70k 1101 Carol 53,F,20k 110... Kumar 25,M,22k 1001 UaUa 48,M,81k 01???

49 CMPT 884, SFU, Martin Ester, 1-09 152 Model-based Recommendation CF as Classification e.g., moviesLikedByUser(Joe) = {Airplane,Matrix,...,Hidalgo} age(Joe)=27, income(Joe)=70k, genre(Matrix)=action, director(Matrix) =.. AirplaneMatrixRoom with a View... Hidalgo comedyactionromance... action Joe 27,M,70k 1101 Carol 53,F,20k 110... Kumar 25,M,22k 1001 UaUa 48,M,81k 01???

50 CMPT 884, SFU, Martin Ester, 1-09 153 Model-based Recommendation CF as Classification AirplaneMatrixRoom with a View... Hidalgo comedyactionromance... action Joe 27,M,70k 1101 Carol 53,F,20k 110... Kumar 25,M,22k 1001 UaUa 48,M,81k 01??? genre={romance}, age=48, sex=male, income=81k, usersWhoLikedMovie={Carol}, moviesLikedByUser={Matrix,Airplane},...

51 CMPT 884, SFU, Martin Ester, 1-09 154 Model-based Recommendation CF as Classification AirplaneMatrixRoom with a View... Hidalgo comedyactionromance... action Joe 27,M,70k 1101 Carol 53,F,20k 110... Kumar 25,M,22k 1001 UaUa 48,M,81k 01??? genre={action}, age=48, sex=male, income=81k, usersWhoLikedMovie = {Joe,Kumar}, moviesLikedByUser={Matrix,Airplane},...

52 CMPT 884, SFU, Martin Ester, 1-09 155 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)

53 CMPT 884, SFU, Martin Ester, 1-09 156 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

54 CMPT 884, SFU, Martin Ester, 1-09 157 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%)

55 CMPT 884, SFU, Martin Ester, 1-09 158 Recommender Systems References 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

56 CMPT 884, SFU, Martin Ester, 1-09 159 Recommender Systems References 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


Download ppt "CMPT 884, SFU, Martin Ester, 1-09 104 Recommender Systems Martin Ester Simon Fraser University School of Computing Science CMPT 884 Spring 2009."

Similar presentations


Ads by Google