Recommendation System(Part-3)
Decomposing the Ratings
Average Rating: Sum of all ratings of a user / total ratings
Item Bias: If an item is liked by most users it will have positive bias and if not then negative bias.
User bias: harsh user? How much does the user deviate from average.
Interacting term: True impact of movie on user
Learning Biases
1 and 2 are regularization parameters that shrink the biases towards zero when the number of ratings for one item or ratings by a user is small.
Alternatively compute bi and bu symmetrically by minimizing the cost function.
Larger bi and bu will be close to 0
Adding in the user item interaction term
Reducing the number of Parameters
The number of users is much larger than the number of items e.g. Netflix Prize data contained 480,189 users and 17770 movies with a total of 100,480,507 ratings.
Pratarek proposed modeling the user as a linear combination of item vectors
Number of parameters is now O(mk)
Recommendation as Subset Selection
Out of the not rated items, we need to select those items that have a higher probability of being rated. [top N recommendations]
Evaluation Metrics for Top-N Recommendations
A set of items per user are withheld from training and precision and recall are computed given the recommendation L(u) of size k, for each user.
Testing a Recommender Syatem
For every user we are going to look at what are the set of recommendations and what were the held out ratings of the sample. The intersection of two w.r.t. The number of recommendations that are created.
Assumption: These are only those items that are being liked by the user.
Average Reciprocal Hit Rank
Rather than having a hard witt off for the value of k, we will look at all the items that are in the candidate list of recommendations.
Higher the ranking of recommended item, better is the recommended system
Adopting Matrix Factorisation to Top-N Recommendations
The cost function is biased to have a higher rating. So this may be a problem
Hence the cost function was tweaked:
Rating Matrix(R) sparse
Missing Values in R, are not random
Preference Bias: higher likelihood that missing values are of movies not liked by the user.
So missing ratings are imputed (parameter) and set to small values assigned because there is a higher probability that these items will be disliked by a user.
A weight parameter is assigned to each rating to account for sparsity and the fact the most ratings are missing.
Cost Function:
Content Based Filtering
Content-based filtering uses item features to recommend other items similar to what the user likes, based on their previous actions or explicit feedback.
Given a news story (di) with
Tfidf vector
Topic Vector
Feature Vector
Similarity can be calculated as:
Comments
Post a Comment