Definition: A subclass of information filtering system
To predict the rating or preference that user would give to an item (e.g. movie) or social element (e.g. people) they had not yet considered.
- Mapping Function:
$f: U \times I \rightarrow R$ - Input:
- User Model (
$U$ ) - Item (
$I$ )
- User Model (
- Calculate:
- Relativity (
$R$ ) - used to sorting
- Relativity (
Search: fulfilling users' active needs
- user know what he want
- user know how to describe
Recommend: mining and fulfilling users' potential needs
- user don't know where to find
- user don't know how to describe
- Prediction perspective
- Interaction perspective
- Conversion perspective
Power laws / long-tailed distribution in the statistical sense
customized recommendation / personalization
- Collaborative Filtering 協同過濾 - users' social environment
- Item-based
- User-based
- Content-based Recommendation
- analyzes the nature of each item (characteristics of items)
- Knowledge-based Recommendation
The process of filtering for information using techniques involving collaboration among multiple agents, viewpoints, etc.
works by taking a data set of user's data and comparing it to the data of other users
The key idea behind CF is that similar users share the same interest and that similar items are liked by a user.
Basic assumption: Shared common interests in the past would still prefer similar products/items in the future (Those who agreed in the past tend to agree again in the future.)
Item-based or user-based similarity?
Compared the distance between items is known as item-based similarity.
Compare the distance between users is known as user-based similarity.
The choice depends on how many users you may have or how many items you may have.
(If you have a lot of users, then you'll probably want to go with item-based similarity)
measure the similarity between the items that target users rates/ interacts with and other items
measure the similarity between target users and other users
Evaluation
- Confidence of A to B $$ \operatorname{confidence}(A\Rightarrow B) = P(B|A) $$
- Support of A to B $$ \operatorname{support}(A\Rightarrow B) = P(A \cup B) $$
Example:
- bread, milk
- bread, diaper, beer, eggs
- milk, diaper, beer, coke
- bread, milk, diaper, beer
- bread, milk, diaper, coke
e.g. {Milk, Diaper} => Beer
Approximate the full matrix by observing only the most important feature those with **
Latent Factor Model
Objective Funciton: minimize squared error
Probability Matrix Factorization (PMF)
- cold start
- data sparsity
- popularity bias
Solution => Content-based Recommendation
Evaluation Experiment
- Offline experiments - based on historical data
- prediction accuracy, coverage
- Laboratory studies - Controlled experiments
- e.g. questionaries (survey)
- Test with real users - A/B tests
- e.g. sales increase, click through rates
Rating Prediction (Regression Evaluation)
- Mean Absolute Error (MAE)
- Mean Squared Error (MSE)
- Root Mean Squared Error (RMSE)
- Normalized Mean Absolute Error (NMAE)
Top-N Prediction (Classification Evaluation)
- Precision
- Recall
- Accuracy
- F1-score
- AUC (Area Under Curve)
- ROC Curve (Receiver Operating Characteristic Curve) (Sensitive Curve)
- Average Precision (AP)
- Mean Average Precision (MAP)
- Precision@N
- e.g. P@5, P@10, P@20
- HR@H (Hit Rate)
- e.g. HR@1, HR@5, HR@10
- Cumulative Gain (CG)
- Discounted Cumulative Gain (DCG)
- normalized Discounted Cumulative Gain (nDCG)
- Ideal DCG (IDCG)
- Intra-List Similarity (ILS)
- MovieLens
- Netflix
- Book-Crossing
- Jester Joke
- Epinions
- Yelp
- BibSonomy
- Foursquare
- Flixster
- facebookresearch/dlrm - Deep Learning Recommendation Model for Personalization and Recommendation Systems
Recommender Systems - The Textbook
- Ch3 Model-Based Collaborative Filtering
- Ch4 Content-Based Recommender System
- Ch5 Knowledge-Based Recommender System
- A Glimpse into Deep Learning for Recommender Systems
- Machine Learning for Recommender systems
- Introduction to Recommender System.
Evaluation Metrics