The slides from the Machine Learning Summers School 2015 in Sydney on Machine Learning for Recommender Systems. Collaborative filtering algorithms, Context-aware methods, Restricted Boltzmann Machines, Recurrent Neural Networks, Tensor Factorization, etc.
Conf42-LLM_Adding Generative AI to Real-Time Streaming Pipelines
Machine Learning for Recommender Systems MLSS 2015 Sydney
1. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
MLSS 2015 Sydney
Machine Learning for
Recommender Systems
Alexandros Karatzoglou
Senior Research Scientist @ Telefonica Research, Barcelona
alexk@tid.es
@alexk_z
2. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Telefonica Research
Machine Learning
Recommender Systems
HCI
Mobile Computing
Systems
Networks
http://www.tid.es
4. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Mozilla FirefoxOS Marketplace
5. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Recent Publications
SIGIR 2014: Gaussian Process Factorization Machines for Context-aware Recommendation
RecSys 2014: Coverage, Redundancy and Size-Awareness in Genre Diversity for Recommender Systems
RecSys 2014: Question Recommendation for Collaborative Question Answering Systems with RankSLDA
CIKM 2013: GAPfm: Optimal Top-N Recommendations for Graded Relevance Domains
RecSys 2013: xCLiMF: Optimizing Expected Reciprocal Rank for Data with Multiple Levels of Relevance
ECML/PKDD 2013: Socially Enabled Preference Learning from Implicit Feedback Data
CIKM 2012: Climbing the App Wall: Enabling Mobile App Discovery through Context-Aware Recommendations
RecSys 2012: CLiMF: Learning to Maximize Reciprocal Rank with Collaborative Less-is-More Filtering * Best Paper Award
SIGIR 2012: TFMAP: Optimizing MAP for Top-N Context-aware Recommendation
RecSys 2011: Collaborative Temporal Order Modeling
RecSys 2011: Implicit Feedback Recommendation via Implicit-to-Explicit Ordinal Logistic Regression Mapping
RecSys 2010: Multiverse Recommendation: N-dimensional Tensor Factorization for Context-Aware Collaborative Filtering
EC-Web 2010: Quantile Matrix Factorization for Collaborative Filtering
AISTATS 2010: Collaborative Filtering on a Budget
RecSys 2009: Maximum Margin Code Recommendation
RecSys 2008: Adaptive Collaborative Filtering
Machine Learning Journal, 2008: Improving Maximum Margin Matrix Factorization * Best Machine Learning Paper Award at ECML PKDD 2008
NIPS 2007: CoFiRank - Maximum Margin Matrix Factorization for Collaborative Ranking
6. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1.Introduction: What is a Recommender
System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Ranking
5. Diversity
3. Research Directions
4. Conclusions
5. References
7. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
From Search to Recommendation
“The Web is leaving the era of search and
entering one of discovery. What's the difference?
SearchSearch is what you do when you're looking for
something. DiscoveryDiscovery is when something
wonderful that you didn't know existed, or didn't
know how to ask for, finds you.” – CNN Money, “The race
to create a 'smart' Google
8. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
The value of recommendations
Netflix: 2/3 of the movies watched are recommended
Google News: recommendations generate 38% more
click-throughs
Amazon: 35% sales from recommendations
Choicestream: 28% of the people would buy more
music if they found what they liked.
9. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
The “Recommender problem”
Estimate a utility functionutility function
to predictpredict how
a user will likelike an item.
10. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
The “Recommender problem”
C:= {users}
S:= {recommendable items}
u:= utility function, measures the usefulness of
item s to user c,
u : C X S→ R
where R:= {recommended items}.
For each user c, we want to choose the items s
that maximize u.
∀c∈C , s'c=argmax (u(c , s)) s∈S
11. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
A good recommendation
is relevant to the user: personalized
12. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
A good recommendation
is diverse:
it represents all the possible interests of one user
13. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
A good recommendation
Does not recommend items the user already
knows or would have found anyway.
Expands the user's taste into neighboring areas.
SerendipitySerendipity = Unsought finding= Unsought finding
14. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Top k recommendations
Usually users take into account only few
suggestions. There is a need to do better on the
top scoring recommended items
15. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Ranking
5. Diversity
3. Research Directions
4. Conclusions
5. References
16. Alexandros Karatzoglou – September 06, 2013 – Recommender Systems
Approaches to Recommendation
Recommendations are based on:
Users' past behaviour (Collaborative Filtering – CF):
Find similar users to me and recommend what they
liked (Memory-based)
Model taste patterns in large amounts of user-item
interactions (Model-based).
Item features (Content-based)
Users' features (Demographic)
Social recommendations (Trust-based)
17. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
What works?
Depends on the domain and particular problem
Currently, the best approach is Collaborative Filtering.
Other approaches can be combined to improve results
What matters?
Data preprocessing: outlier removal, denoising, removal of
global effects
Combining methods
18. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2.1. Collaborative Filtering
19. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
20. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Collaborative Filtering
The task of predictingpredicting (filtering) user
preferences on new items by collectingcollecting taste
information from many users (collaborative).
Challenges:
many items to choose from
very few recommendations to propose
few data per user
no data for new user
very large datasets
21. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
Example: User-based CF
Target (or Active)
user for whom the
CF
recommendation
task is performed
22. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
2
4
1
Example
Each user has expressed
an opinion for some
items:
Explicit opinion:
rating score
Implicit: purchase
records or listen to
tracks
23. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
Example: User-based CF
1. Identify set of
items rated by the
target user
24. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
Example: User-based CF
1. Identify set of
items rated by
the target user
2. Identify which
other users rated
1+ items in this set
(neighbourhood
formation)
25. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
3. Compute how similar
each neighbour is to the
target user (similarity
function)
4. In case, select k most
similar neighbours
User-based Similarity
26. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
5. Predict ratings for the target user's unrated items
(prediction function)
6. Recommend to the target user the top N products
based on the predicted ratings
User-based CF
27. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
User-based CF
Target user u, ratingsratings matrix Y
yv,i → rating by user v for item i
Similarity Pearson r correlation sim(u,v) between users u &
v
Predicted rating
28. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
sim(u,v)
NA
NA
Example: User-based CF
29. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
Example: User-based CF
0.87
sim(u,v)
NA
NA
30. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
1
sim(u,v)
0.87
NA
NA
Example: User-based CF
31. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
-1
0.87
1
sim(u,v)
NA
NA
Example: User-based CF
32. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
3.51*
4
5
4
4
1
3.81*
5
5
4
2.42*
1
2
5
2.48*
4
1
2
-1
0.87
1
sim(u,v)
NA
NA
Example: User-based CF
33. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
Example: Item-based CF
Target item:
item for
which the
CF
prediction
task is
performed.
34. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Item-based CF
The basic steps:
Identify set of users who rated the target item i
Identify which other items (neighbours) were rated
by the users set
Compute similarity between each neighbour &
target item (similarity function)
In case, select k most similar neighbours
Predict ratings for the target item (prediction
function)
35. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Item Based Similarity
36. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Item Based Similarity
Target item I
yu,j → rating of user u for item j, average rating for j.
Similarity sim(i,j) between items i and j (Pearson-
correlation)
Predicted rating
41. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
1
2
Example: Item-based CF
sim(6,5) cannot
be calculated
1-1-1 0.86sim(i,j) NA
42. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
5
4
5
4
4
1
5
5
4
1
2
5
4
2.48*
2.94*
1
2
1.12*
Example: Item-based CF
1-1-1 0.86sim(i,j) NA
43. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
PearsonPearson r correlation-based Similarityr correlation-based Similarity
does not account for user rating biases
Cosine-basedCosine-based SimilaritySimilarity
does not account for user rating biases
AdjustedAdjusted Cosine SimilarityCosine Similarity
takes care of user rating biases as each pair in the co-rated
set corresponds to a different user.
Item Similarity Computation
44. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Performance Implications
Bottleneck: Similarity computation.
Time complexity, highly time consuming with millions
of users & items in the database.
Two-step process:
“off-line component” / “model”:
similarity computation, precomputed & stored.
“on-line component”: prediction process.
45. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Two-step process
OfflineOffline OnlineOnline
Learning
Process
Model
Or
Clusters
Decision
Process
Context
Recommended
Items
46. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Performance Implications
User-based similarity is more dynamic.
Precomputing user neighbourhood can lead to
poor predictions.
Item-based similarity is static.
We can precompute item neighbourhood.
Online computation of the predicted ratings.
47. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Memory based CF
+ Requires minimal knowledge engineering efforts
+ Users and products are symbols without any internal
structure or characteristics
+ Produces good-enough results in most cases
- Requires a large number of explicit and reliable
“ratings”
- Requires standardized products: users should have
bought exactly the same product
- Assumes that prior behaviour determines current
behaviour without taking into account “contextual”
knowledge
48. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
The Sparsity Problem
Typically large product sets & few user ratings
e.g. Amazon:
in a catalogue of 1 million books, the probability that
two users who bought 100 books each, have a book
in common is 0.01
in a catalogue of 10 million books, the probability
that two users who bought 50 books each, have a
book in common is 0.0002
CF must have a number of users ~ 10% of the
product catalogue size
49. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
The Sparsity Problem
Methods for dimensionality reduction
Matrix Factorization
Clustering
Projection (Principal Component Analysis ...)
50. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Personalised vs Non-Personalised CF
CF recommendations are personalized: the prediction
is based on the ratings expressed by similar users;
neighbours are different for each target user
A non-personalized collaborative-based
recommendation can be generated by averaging the
recommendations of ALL users
How would the two approaches compare?
51. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Personalised vs Non-Personalised CF
0,1510,2230,0222811718164974424EachMovie
0,1790,2330,041100020939526040MovieLens
0,1520,2200,725351944910048483Jester
MAE
Pers
MAE
Non
Pers
density
total
ratings
itemsusersData Set
Not much difference indeed!
vij is the rating of user i for product j
and vj is the average rating for
product j
MAENP =
∑i, j
∣vij−v j∣
num.ratings
Mean Average Error Non Personalized:
52. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Model-Based
Collaborative Filtering
53. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Model Based CF Algorithms
Models are learned from the underlying data rather
than heuristics.
Develop a model of user ratings:
Bayesian network (probabilistic)
Clustering (classification)
Association rules
Other models:
linear regression,
probabilistic latent semantic analysis ...
54. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Matrix Factorization
2
5
4
5
4
4
1
5
5
4
1
2
5
2
4
1
d
d
55. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning: Stochastic Gradient
Descent
56. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning: Stochastic Gradient
Descent
For each rating of item j by user i:
57. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Matrix Factorization
2
5
4
5
4
4
1
5
5
4
1
2
5
2
4
1
d
d
58. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Objective Function
59. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Loss Functions for MF
Squared error loss:
Mean Average Error:
Binary Hinge loss:
60. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Restricted Boltzmann Machines
A (generative stochastic) Neural Network
Learns a probability distribution over its
inputs
Used in dimensionality reduction, CF, topic
modeling, feature learning
Essential components of Deep Learning
methods (DBN's, DBM's)
61. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Restricted Boltzmann Machines
62. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Restricted Boltzmann Machines
Each unit is in a state which can be active or
not active.
Each input of a unit is associated to a weight
The transfer function Σ calculates for each unit a
score based on the weighted sum of the inputs
This score is passed to the activation function φ
which calculated the probability that the unit
state is active.
63. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to Rank
- Usually we care to make accurate ranking and not
rating prediction
- Square loss optimizes to accurately predict 1s and
5s.
- RS should get the top items right -> Ranking problem
- Why not to learn how to rank directly
- Learning to Rank methods provide up to 30%
performance improvements in off-line evaluation
64. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Restricted Boltzmann Machines
Each unit in the visible layer vi
corresponds to one item
The number of the hidden units hj
is a parameter.
Each vi
is connected to each hj
through a weight wij
In the trainingtraining phase, for each user:
if the user purchased the item the corresponding vi
is activated.
The activation states of all vi
are the input of each hj
Based on this input the activation state of each hj
is calculated
The activation state of all hj
become now the input of each vi
The activation state of each vi
is recalculated
For each vi
the difference between the present activation state
and the previous is used to update the weights wij
and thresholds θj
65. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Restricted Boltzmann Machines
66. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Restricted Boltzmann Machines
In the predictionprediction phase, using a trained RBM, when recommending to a user:
For the items of the user the corresponding vi
is activated.
The activation states of all vi
are the input of each hj
Based on this input the activation state of each hj
is calculated
The activation state of all hj
become now the input of each vi
The activation state of each vi
is recalculated
The activation probabilities are used to recommend items
67. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Recurrent Neural Networks for CF
RNN's are Neural Networks designed to model sequences
RNN for CF tries to predict the next item given all previous ones
e.g. predict the next song, video, given the history of streams.
RNN's model the current output as a function of the
previous output and a hidden (latent) state
RNN models the items
68. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Recurrent Neural Networks for CF
h0
y0
h1
y1
h2
y2
...
69. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Recurrent Neural Networks for CF
2 vectors of dimension k:
time steps: 0... t-1.
“hidden” internal states: h0
... ht-1
.
Output vectors y
At each time step:
Predict the output yi
given the hidden state hi
(we need to model P(yi
|hi
))
Feed yi
back into the next hidden state hi+1
:
hi+1
= f(a(hi
) + b(yi
)).
where f is generally some nonlinear function (e.g. sigmoid or tanh),
a, b are usually a simple linear transform.
70. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RNN for CF: example
Predict a sequence (vector yi
) of items:
Assume P(yi
|hi
) is a normal distribution
the log-likelihood of the loss is the (negative) L2 loss: -(yt
– ht
)2
hi+1
= tanh(Uyi
+ Vhi
) & h0
= 0.
yi
= W hi
Learn the k2
unknown parameters (U, V, and W) that
maximize the log-likelihood over all:
71. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RNN for CF: example
Maximize the log-likelihood through back-propagation.
we need to do two steps through each sequence.
First propagation: For i=0... t-1: Calculate all h_i.
the total log-likelihood is the sum of all log-probabilities of
observing each output:
72. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RNN for CF: example
Define the partial derivatives of the log-L with respect to the hidden state:
Since each hi
only influences later hidden states,
is just a function of all future j = i... t-1.
We can rewrite as a function of :
We can evaluate this backwards from t-1...0.
73. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RNN for CF: example
P(yi
| hi
) and are specified by our model
Derive the gradients for the unknown parameter U:
Derive similar gradients for V, W.
Optimize using SGD over lots of samples.
74. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RNN for CF
Given a sequence of watched movies, predict the next one.
Now yi
is not a scalar, but one out of many items.
We need a probability distribution P(yi
|hi
).
The Softmax distribution over all possible outputs.
This means we have to learn a vector aj
for each item.
P(yi
|hi
) is now proportional to :
75. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RNN for CF
We also need something linking back the output to the next hidden state.
we will learn another set of vectors bj
– one for each item.
we don’t need the matrices U and V. Our model now becomes:
Again, we maximize the total log-likelihood
Note that we have the unknowns aj
‘s and bj
‘s for each item. [Erik Bernhardsson
76. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Clustering
ClusterCluster customers into categories based
on preferences & past purchases
ComputeCompute recommendations at the
cluster level:
all customers within a cluster receive the
same recommendations
77. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Clustering
B, C & D form 1 CLUSTER vs. A & E form another cluster.
« Typical » preferences for CLUSTER are:
Book 2, very high
Book 3, high
Books 5 & 6, may be recommended
(Books 1 & 4, not recommended)
78. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Clustering
Customer F is classified as a new member of CLUSTER
will receive recommendations based on the CLUSTER's
preferences :
Book 2 will be highly recommended to Customer F
Book 6 will also be recommended to some extent
79. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Clustering
+ It can also be applied for selecting the k
most relevant neighbours in a CF algorithm
+ Faster: recommendations are per cluster
- less personalized: recommendations are
per cluster vs. in CF they are per user
80. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Association rules
Past purchases used to find relationships of
common purchases
81. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Association rules
+ Fast to implement
+ Fast to execute
+ Not much storage space required
+ Not « individual » specific
+ Very successful in broad applications for large
populations, such as shelf layout in retail stores
- Not suitable if preferences change rapidly
- Rules can be used only when enough data validates
them. False associations can arise
82. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Limitations of CF
ColdCold Start:
It needs to have enough users in the system.
New items need to get enough ratings.
Sparsity:
it is hard to find users who rated the same items.
Popularity Bias:
Cannot recommend items to users with unique tastes.
Tends to recommend popular items.
83. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Cold-start
New User ProblemNew User Problem: the system must first learn the
user’s preferences from the ratings.
Hybrid RS, which combines content-based
and collaborative techniques, can help.
New Item ProblemNew Item Problem: Until the new item is rated by
a substantial number of users, the RS is not able
to recommend it.
84. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
85. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Content-Based
Recommendations
Recommendations are based on the
information on the contentcontent of itemsof items rather than
on other users’ opinions.
Use a machine learning algorithm to model
the users' preferences from examples based on
a description of the content.
86. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
What is content of an item?
Explicit attributes or characteristics
e.g. for a movie:
Genre: Action / adventure
Feature: Bruce Willis
Year: 1995
Textual content
e.g. for a book:
title,
description,
table of content
87. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
In Content-Based
Recommendations...
The recommended items for a user are based on the
profile built up by analysing the content of the items
the user has liked in the past
88. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Content-Based
Recommendation
Suitable for text-based products (web pages, books)
Items are “described” by their features (e.g. keywords)
Users are described by the keywords in the items they
bought
Recommendations based on the match between the
content (item keywords) and user keywords
The user model can also be a classifier (Neural
Networks, SVM, Naïve Bayes...)
89. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Advantages of CB Approach
+ No need for data on other users.
+ No cold-start or sparsity problems.
+ Can recommend to users with unique tastes.
+ Can recommend new and unpopular items
+ No first-rater problem.
+ Can provide explanations of recommended
items by listing content-features that caused an
item to be recommended.
90. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Disadvantages of CB Approach
- Only for content that can be encoded as meaningful
features.
- Some types of items (e.g. movies, music)are not amenable
to easy feature extraction methods
- Even for texts, IR techniques cannot consider multimedia
information, aesthetic qualities, download time: a positive
rating could be not related to the presence of certain
keywords
- Users’ tastes must be represented as a learnable function of
these content features.
- Hard to exploit quality judgements of other users.
- Difficult to implement serendipity
91. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Content-based Methods
Content(s):= item profile, i.e. a set of
attributes/keywords characterizing item s.
weight wij measures the 'Importance” (or
“informativeness”) of word kj in document dj
term frequency/inverse document
frequency(TF-IDF) is a popular weighting
technique in IR
92. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Content-based User Profile
ContentBasedProfile(c):= profile of user c
profiles are obtained by:
analysing the content of the previous items
using keyword analysis techniques
e.g., ContentBasedProfile(c):=(wc1, . . . , wck)
a vector of weights, where wci denotes the importance of
keyword ki to user c
93. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Similarity Measurements
In content-based systems, the utility function
u(c,s) is defined as:
where ContentBasedProfile(c) of user c and
Content(s) of document s are both
represented as TF-IDF vectors of keyword
weights.
uc ,s=scoreContentBasedProfile c ,Content s
94. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Similarity Measurements
Utility function u(c,s) usually represented by some
scoring heuristic defined in terms of vectors, such
as the cosine similarity measure.
uc ,s=cos wc , ws=
wc⋅w s
∥ wc∥2×∥ ws∥2
=
∑i=1
K
wi , c wi , s
∑i=1
K
wi , c
2
∑i=1
K
wi , s
2
95. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Content-based Recommendation.
An (unrealistic) example
How to compute recommendations of books based onlyon
their title?
A customer buys the book: Building data mining applications for CRM
7 Books are possible candidates for a recommendation:
Accelerating Customer Relationships: Using CRM and Relationship Technologies
Mastering Data Mining: The Art and Science of Customer Relationship Management
Data Mining Your Website
Introduction to marketing
Consumer behaviour
Marketing research, a handbook
Customer knowledge management
96. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
building data
mining
applications for
crm
Accelerating
Customer
Relationships:
Using CRM and
Relationship
Technologies
Mastering Data
Mining: The Art
and Science of
Customer
Relationship
Management
Data Mining Your
Website
Introduction to
marketing
consumer
behavior
marketing
research, a
handbook
customer
knowledge
management
a 1
accelerating 1
and 1 1
application 1
art 1
behavior 1
building 1
consumer 1
crm 1 1
customer 1 1 1
data 1 1 1
for 1
handbook 1
introduction 1
knowledge 1
management 1 1
marketing 1 1
mastering 1
mining 1 1 1
of 1
relationship 2 1
research 1
science 1
technology 1
the 1
to 1
using 1
website 1
your 1
COUNT
97. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Content-based
Recommendation
Computes distances between this book & all others
Recommends the « closest » books:
#1: Data Mining Your Website
#2: Accelerating Customer Relationships: Using CRM and Relationship
Technologies
#3: Mastering Data Mining: The Art and Science of Customer
Relationship Management
98. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
building data
mining
applications for
crm
Accelerating
Customer
Relationships:
Using CRM and
Relationship
Technologies
Mastering Data
Mining: The Art
and Science of
Customer
Relationship
Management
Data Mining Your
Website
Introduction to
marketing
consumer
behavior
marketing
research, a
handbook
customer
knowledge
management
a 0.000 0.000 0.000 0.000 0.000 0.000 0.537 0.000
accelerating 0.000 0.432 0.000 0.000 0.000 0.000 0.000 0.000
and 0.000 0.296 0.256 0.000 0.000 0.000 0.000 0.000
application 0.502 0.000 0.000 0.000 0.000 0.000 0.000 0.000
art 0.000 0.000 0.374 0.000 0.000 0.000 0.000 0.000
behavior 0.000 0.000 0.000 0.000 0.000 0.707 0.000 0.000
building 0.502 0.000 0.000 0.000 0.000 0.000 0.000 0.000
consumer 0.000 0.000 0.000 0.000 0.000 0.707 0.000 0.000
crm 0.344 0.296 0.000 0.000 0.000 0.000 0.000 0.000
customer 0.000 0.216 0.187 0.000 0.000 0.000 0.000 0.381
data 0.251 0.000 0.187 0.316 0.000 0.000 0.000 0.000
for 0.502 0.000 0.000 0.000 0.000 0.000 0.000 0.000
handbook 0.000 0.000 0.000 0.000 0.000 0.000 0.537 0.000
introduction 0.000 0.000 0.000 0.000 0.636 0.000 0.000 0.000
knowledge 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.763
management 0.000 0.000 0.256 0.000 0.000 0.000 0.000 0.522
marketing 0.000 0.000 0.000 0.000 0.436 0.000 0.368 0.000
mastering 0.000 0.000 0.374 0.000 0.000 0.000 0.000 0.000
mining 0.251 0.000 0.187 0.316 0.000 0.000 0.000 0.000
of 0.000 0.000 0.374 0.000 0.000 0.000 0.000 0.000
relationship 0.000 0.468 0.256 0.000 0.000 0.000 0.000 0.000
research 0.000 0.000 0.000 0.000 0.000 0.000 0.537 0.000
science 0.000 0.000 0.374 0.000 0.000 0.000 0.000 0.000
technology 0.000 0.432 0.000 0.000 0.000 0.000 0.000 0.000
the 0.000 0.000 0.374 0.000 0.000 0.000 0.000 0.000
to 0.000 0.000 0.000 0.000 0.636 0.000 0.000 0.000
using 0.000 0.432 0.000 0.000 0.000 0.000 0.000 0.000
website 0.000 0.000 0.000 0.632 0.000 0.000 0.000 0.000
your 0.000 0.000 0.000 0.632 0.000 0.000 0.000 0.000
TFIDF Normed Vectors
Data
0.187 0.316
Data mining
your website
Mastering Data Mining:
The Art and Science
of Customer Relationship
Management
99. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
100. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context
Context is a dynamic set of
factors describing the state
of the user at the moment of
the user's experience
Context factors can rapidly
change and affect how the
user perceives an item
101. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context in Recommendations
Temporal: Time of the day, weekday/end
Spatial: Location, Home, Work etc.
Social: with Friends, Family
Recommendations should be tailored to the
user & to the current Context of the user
102. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Level of Adaptation
103. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context-Aware RS: Pre-filtering
104. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context-Aware RS: Post-filtering
105. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context-Aware RS:
Tensor Factorization
106. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Factorization Machines
107. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context-Aware RS:
Pre-filtering
+ Simple
+ Works with large amounts of data
- Increases sparseness
- Does not scale well with many Context variables
Post-filtering
+ Single model
+ Takes into account context interactions
- Computationally expensive
- Increases data sparseness
- Does not model the Context directly
Tensor Factorization & Factorization Machines
+ Performance
+ Linear scalability
+ Models context directly
108. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
109. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ranking
Most recommendations are presented in a
sorted list
Recommendation is a ranking problem
Popularity is the obvious baseline
Users pay attention to few items at the top of
the list
110. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ranking: Approaches
(I) Re-rank: based on features e.g.
predicted rating, popularity, etc
(II) Learning to Rank: Build Ranking CF
models
111. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank
Machine learning task: Rank the most relevant
items as high as possible in the
recommendation list
Does not try to predict a rating, but the order
of preference
Training data have partial order or binary
judgments (relevant/not relevant)
Can be treated as a standard supervised
classification problem
112. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Matrix Factorization for Ranking
2
5
4
5
4
4
1
5
5
4
1
2
5
2
4
1
d
d
113. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Approaches
1) Pointwise
Ranking function minimizes loss function defined
on individual relevance judgment e.g.
Ranking score based on regression or
classification
Ordinal regression, Logistic regression, SVM
114. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Approaches
2) Pairwise
Loss function is defined on pair-wise
preferences
Goal: minimize number of inversions in
ranking
BPR, RankBoost, RankNet, FRank…
115. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Metrics
Metrics evaluate the quality of a recommendation list
- Normalized Discounted Cumulative Gain NDCG
Computed for the first k items
The NDCG@k of a list of items ratings Y, permuted by π is:
where πs is the permutation which sorts Y decreasingly
116. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Metrics
1/log(7)3/log(6)7/log(5)15/log(4)31/log(3)
117. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Metrics
Mean Reciprocal Rank (MRR)
118. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Metrics
Mean Average Precision (MAP)
S the set of relevant items, N #users
119. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Non-smoothness of Metrics
120. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Non-smoothness of Metrics
121. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Non-smoothness of Metrics
122. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Approaches
3) List-wise
Direct optimization of ranking metrics,
List-wise loss minimization for CF a.k.a
Collaborative Ranking
CoFiRank: optimizes an upper bound of
NDCG (Smooth version)
CLiMF : optimizes a smooth version of MRR
TFMAP: optimizes a smooth version of MAP
AdaRank: uses boosting to optimize NDCG
123. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Overview
Point-wise Pair-wise List-wise
Matrix factorization
[Koren 2009]
BPR [Rendle 2009] CofiRank [Weimer 2007]
SVD++ [Koren 2008] EigenRank [Liu 2008] ListRank [Shi 2010]
OrdRec [Koren 2011] pLPA [Liu 2009] WLT [Volkovs 2012]
Factorization machines
[Rendle 2012]
CR [Balakrishnan 2012] TFMAP [Shi 2012a]
(All rating prediction
methods)
CLiMF [Shi 2012b]
GAPfm [Shi 2013a]
xCLiMF [Shi 2013b]
Classification by What to Model
124. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Approaches
3) List-wise
Direct optimization of ranking metrics,
List-wise loss minimization for CF a.k.a
Collaborative Ranking
CoFiRank: optimizes an upper bound of
NDCG (Smooth version)
CLiMF : optimizes a smooth version of MRR
TFMAP: optimizes a smooth version of MAP
AdaRank: uses boosting to optimize NDCG
125. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to rank - Overview
Proxy of Rankings Structured
Estimation
Non-smooth
optimization
Smoothing
ranking
measures
( Rating predicting
methods
CofiRank
[Weimer 2007]
WLT
[Volkovs 2012]
BPR
[Rendle 2009]
EigenRank
[Liu 2008]
TFMAP
[Shi 2012a]
pLPA
[Liu 2009]
CLiMF
[Shi 2012b]
ListRank
[Shi 2010]
GAPfm
[Shi 2013a]
CR
[Balakrishnan 2012]
XCLiMF
[Shi 2013b]
Classification by How to Model
126. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ordrec [Koren 2011]
Pointwise, proxy
11 22 33 44 55
t1
t2
t3
t4
127. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ordrec [Koren 2011]
Pointwise, proxy
11 22 33 44 55
t1
t2
t3
t4
Parameterize the threshold into:
User factor,
item factor and
previous threshold
Full distribution estimation
128. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
BPR [Rendel 2009]
Pair-wise, smoothing
Main idea: learn by comparing items that the user likes with items that he does not.
When dealing with implicit data sample the unseen data as negative
Optimize the AUC, use a smooth version for Optimization purposes
129. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
BPR [Rendel 2009]
Pair-wise, smoothing
Representation of pairwise preference data
What Alice watched What Alice’s pairwise preferences
(Row to Column)
Transformers (T) ?
Inception (I) ?
Scent of a woman (S) 1
Forrest Gump (F) 1
Zombieland (Z) ?
T I S F Z
T ? - - ?
I ? - - ?
S + + ? +
F + + ? +
Z ? ? - -
130. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ordrec [Koren 2011]
Ratings are not numeric, but ordinal.
Ordinal modeling by learning the thresholds
Items rated similarly are similar with each other.
An item rated 4 should be
more similar to an item rated 5
rather than to an item rated 1
Rating
1
2
3
4
5
131. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
i1 i2 i3
u1 2 3 4
u2 4 2 5
EigenRank [Liu 2008]
Pair-wise, proxy
Ranking-based similarity instead of rating based similarity
User-user similarity based on
Kendall Rank Correlation
Neighbour selection
for a user & item
preference estimation
Random walk with restart
over pair-wise
item preference graph
132. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
List-wise
Learn to model individual ratings
CofiRank
ListRank
CLiMF
TFMAP
GAPfm
xCLiMF
Learn to model ranked list, or to
model evaluation metrics that
capture the quality of ranked list
List-wise
perspective
133. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CoFiRank [Weimer 2007]
list-wise, structured est.
Based on Structured estimation i.e. Machine
Learning methods for complex output domains
(graphs, sequences, etc.)
Cast the Ranking problem as a Structured
estimation problem
i.e. Learn a function that is maximized for the best
possible ranking with respect to a ranking
measure e.g. nDCG
134. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CoFiRank [Weimer 2007]
list-wise, structured est.
Step 1:
Instead of maximizing
Minimize
135. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CoFiRank [Weimer 2007]
list-wise, structured est.
Step 2:Step 2:
Use
Create a linear mapping
That is maximized for
Denote by a decreasing non-negative sequence
136. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CoFiRank [Weimer 2007]
list-wise, structured est.
Step 3:Step 3:
Find convex upper on non-convex optimization problems:
Let
Maximization by solving a Linear Assignment Problem to get
an estimate for the worst case loss (maximum margin)
138. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CoFiRank [Weimer 2007]
list-wise, structured est.
139. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CLiMF [Shi 2012b]
List-wise, Smoothing Ranking Metrics
Why optimize mean reciprocal rank (MRR)?
Focus at the very top of the list
Try to get at least one interesting item at the top of
the list
How to optimize MRR?
Find a smooth version of MRR
Find a lower bound of the smoother MRR
140. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Graphical Notation RelevantRelevant
Irrelevant
Irrelevant
Irrelevant
Irrelevant
Irrelevant
RelevantRelevant
RelevantRelevant
141. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ranking using latent
representation
55
44
11
44
22
11
22
11
[0.180, 0.019][0.180, 0.019]
[0.013, 0.487][0.013, 0.487]
[0.165, 0.632]
[0.730, 0.109][0.730, 0.109]
[0.420, 0.485]
[0.463, 0.725]
[0.894, 0.857]
[0.942, 0.851]
If user = [-100, -100]
• 2d latent factor
• We get the corresponding ranking
142. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
2
1
1
44
44
1
55
2
[0.894, 0.857]
[0.463, 0.725]
[0.942, 0.851]
[0.730, 0.109][0.730, 0.109]
[0.013, 0.487][0.013, 0.487]
[0.165, 0.632]
[0.180, 0.019][0.180, 0.019]
[0.420, 0.485]
Matrix Factorization
(for ranking)
• Randomly initialize item vectors
• Randomly initialize user vectors
• While not converged
• Compute rating prediction error
• Update user factors
• Update item factors
• Let's say user is [-100, -100]
• Compute the square error
(5-<[-100, -100], [0.180, 0.19]>)2=1764
• Update user & item factors
to the direction where the error is reduced
(according to the gradient of the loss)
8 items with ratings
& random factors
143. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning: Stochastic Gradient
Descent with Square Loss
145. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Example:
average precision (AP)
• AP: we compute the precision at each relevant position
and average them
146. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Why is hard? Non Smoothness
Example: AP
u:[-20,-20]
u:[20,20]
147. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
AP vs. RMSE
The minimum in RMS and maximum in MAP do not correspond!
148. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Non-smoothness of AP
ymi
=1 if item i is relevant for user m; else ymi
= 0
The indicator function = 1 if it is true; else =0
rmi
= rank of item i for user m
149. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
AP vs. RMSE
The minimum in RMS and maximum in MAP do not correspond!
150. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to Rank for Top-k RecSys
•Usually we care to make accurate ranking (and not rating) prediction
•Square loss optimizes to accurately predict 1s and 5s.
•RS should get the top k items right -> Ranking problem
•Why not to learn how to rank directly?
•Learning to Rank methods provide up to 30% performance
improvements in off-line evaluations
•It is possible, but a more complex task
151. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
How can we get a smooth AP?
• We replace non smooth places of MAP with smooth approximation
152. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
How can we get a smooth MAP?
• We replace non smooth places of MAP with smooth approximation
153. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Smooth version of MAP
u:[-20,-20]
u:[20,20]
154. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Not always the case:
only sometimes approximation
is very good…
155. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ranking Inconsistencies
Achieving a perfect ranking for all users is not possible
Two Sources of Inconsistencies:
●
Factor Models (all models) have limited expressive power
and cannot learn the perfect ranking for all users
Ranking functions approximations are inconsistent e.g.
A > B & B > C but C > A
156. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Summary on Ranking 101
157. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Ranking Metrics:
AUC
RR
AP
nDCG
158. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
AUC: Area Under the ROC Curve
159. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
RR: Reciprocal Rank
160. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
AP: Average Precision
162. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
nDCG: Normalized Discounted
Cumulative Gain
163. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
AP AUC
RR Square Loss
164. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Top-k Ranking
Focus on the very top of the recommendation list
since users pay attention only to the first k items
Top heavy ranking measures put much more
emphasis at the top of the list (e.g. MRR, MAP,
NDCG).
Drop in measure non-linear with the position in
the list
AUC gives the same emphasis to the top as to
the bottom of the list.
Drop in measure linear to the position in the list
165. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to Rank for RecSys
166. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to Rank for IR & ML
Query-document (Q-D) retrieval:
Given a query, rank documents.
RankSVM
LambdaRank
RankNet
RankBoostAdaR
ank
ListNet
SVM-MAP
SoftRank
...
Features of a Q-D pair,
relevance label
Learn a ranking function
Predict relevances of new Q-D pairs
Analogy: Query-doc --- User-item
167. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Learning to Rank for RecSys
Focus on the very top of the recommendation list
since users pay attention only to the first k items
Top heavy ranking measures put much more
emphasis at the top of the list (e.g. MRR, MAP,
NDCG).
Drop in measure non-linear with the position in
the list
AUC gives the same emphasis to the top as to
the bottom of the list.
Drop in measure linear to the position in the list
168. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
The non-smoothness of
Reciprocal Rank
Reciprocal Rank (RR): The inverse of the rank of
the first relevant item in a given list.
Rank-based component Rank-based component
169. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Reciprocal Rank
170. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Lower Bound
Jensen’s inequality Concavity of log function
171. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
What's the key?
CLiMF reciprocal rank loss essentially pushes
relevant items apart
In the process at least one items ends up
high-up in the list
172. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Conventional Loss
173. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
CLiMF MRR-Loss
174. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Optimizing RR vs. AUC
Opt. RR Opt. AUC
175. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
List-wise
xCLiMF [Shi 2013b] – Generalization to Ratings
Expected reciprocal rank (ERR) [Chapelle 2009]
A generalization of RR to graded relevance data
Cascade nature compared to NDCG
Equal contribution
independent of the
items ranked above
Different contributions
relative to the items
ranked above
NDCG ERR
0
1
0
3
0
0
5
0
3
0
0
1
0
3
0
0
5
0
3
0
= <
176. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
xCLiMF vs. CLiMF
Results from Tuenti video watching dataset
xCLiMF shows its advantage over CLiMF
when applied to graded relevance data
177. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
List-wise
TFMAP [Shi 2012a] – Generalization to Context
Context-aware Recommendation
178. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Problem Setting
Given: Users’ implicit feedback on items under different contexts
Target: To recommend a list of items to each user under any given
context, as accurate as possible
Top-N recommendation
Context-aware
Optimal in terms of MAP
Items
Users
Contexts
179. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
TFMAP: Main concept
CP tensor factorization
U, V, C are latent factors
(parameters to be
learned)
U, V, C are learned from
optimizing the smoothed
MAP
180. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Social and Trust-based
recommenders
A social RS recommends items that are “popular”
with the friends of the user.
Friendship though does not imply trust
“trust” in social-based RS can be per-user or
topic-specific
181. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Trust Inference
Select 2 users: source (node A) & sink (C)
Recommend to the source how much to trust the sink.
source sink
182. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Major Algorithms - Networks
Advogato (Levien)
Appleseed (Ziegler and Lausen)
MoleTrust (Massa and Avesani)
TidalTrust (Golbeck)
183. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Building Recommender Systems
Using Trust
Use trust as a way to give more weight to
some users
Trust for collaborative filtering
Use trust in place of (or combined with)
similarity
Trust for sorting and filtering
Prioritize information from trusted sources
184. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Social Recommendations
185. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Other ways to use Social
Social connections can be used in
combination with other approaches
In particular, “friendships” can be fed into
collaborative filtering methods in different
ways
e.g. replace or modify user-user “similarity” by
using social network information
186. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
187. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Hybridization Methods
Hybridization Method Description
Weighted Outputs (scores or votes) from several
techniques are combined with different
degrees of importance to offer final
recommendations
Switching Depending on situation, the system changes
from one technique to another
Mixed Recommendations from several techniques
are presented at the same time
Feature combination Features from different recommendation
sources are combined as input to a single
technique
Cascade The output from one technique is used as
input of another that refines the result
Feature augmentation The output from one technique is used as
input features to another
Meta-level The model learned by one recommender is
used as input to another
188. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Weighted
Rating for an item is computed as the weighted sum of
ratings produced by a pool of different RS.
The weights are determined by training and get adjusted as
new ratings arrive.
Assumption: relative performance of the different techniques
is uniform. Not true in general: e.g. CF performs worse for
items with few ratings.
e.g.
P-Tango RS: a CB and a CF recommender equally
weighted at first. Weights are adjusted as predictions are
confirmed or not.
RS with consensus scheme: each recommendation of a
specific item counts as a vote for the item.
189. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Feature Combination
CF ratings of users are passed as additional feature to a CB.
CB makes recommendations over this augmented data set.
190. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Switching
The system uses a criterion to switch between
techniques
The main problem is to identify a good switching
criterion.
e.g.
The DailyLearner system uses a CB-CF. When CB cannot
predict with sufficient confidence, it switches to CF.
191. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Mixed
Recommendations from more than one technique are
presented together
e.g.
The PTV system recommends a TV viewing schedule for
the user by combining recommendations from a CB and
a CF system.
CB uses the textual descriptions of TV shows; vs CF uses
other users’ preferences.
When collision occurs, the CB has priority.
192. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Cascade
At each iteration, a first recommendation technique
produces a coarse ranking & a second technique refines the
recommendation
Cascading avoids employing the second, lower-priority,
technique on items already well-differentiated by the first
Requires a meaningful ordering of the techniques.
E.g.: EntreeC is a restaurant RS uses its knowledge of
restaurants to make recommendations based on the user’s
stated interests. The recommendations are placed in buckets
of equal preference, and the collaborative technique breaks
ties
193. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Feature Augmentation
Very similar to the feature combination method:
Here the output of one RS is incorporated into the
processing of a second RS
e.g.:
Amazon.com generates text data (“related
authors” and “related titles”) using its internal
collaborative systems
Libra system makes content-based
recommendations of books based on these text
data found in Amazon.com, using a naive Bayes
text classifier
194. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
195. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Beyond Explicit Ratings
Implicit feedback is more readily available, and less noisy
Already many approaches (e.g. SVD++) can make use
of implicit feedback
Ongoing research in combining explicit and implicit
feedback
D. H. Stern, R. Herbrich, and T. Graepel. Matchbox: large scale online bayesian
recommendations. In Proc.of the 18th WWW, 2009.
Koren Y and J. Sill. OrdRec: an ordinal model for predicting personalized item rating
distributions. In Rec-Sys ’11, pages 117–124, 2011.
Y. Koren. Factorization meets the neighborhood: a multifaceted collaborative
filtering model. In Proceedings of the 14th ACM SIGKDD, 2008.
Yifan Hu, Y. Koren, and C. Volinsky. Collaborative Filtering for Implicit Feedback
Datasets. In Proc. Of the 2008 Eighth ICDM, pages 263–272, 2008.
196. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Personalized Learning to Rank
Better approaches to learning to rank that
directly optimize ranking metrics and allow
for personalization (e.g. CliMF & TFMAP)
Y. Shi, A. Karatzoglou, L. Baltrunas, M. Larson, N. Oliver, and A.
Hanjalic. CLiMF: learning to maximize reciprocal rank with
collaborative less-is-more filtering. In Proc. of the sixth Recsys,
2012.
Y. Shi, A. Karatzoglou, L. Baltrunas, M. Larson,A. Hanjalic, and N.
Oliver. TFMAP: optimizing MAP for top-n context-aware
recommendation. In Proc. Of the 35th SIGIR, 2012.
197. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Context-aware
Recommendations
Beyond the traditional 2D user-item space
Recommendations should also respond to user
context (e.g. location, time of the day...)
Many different approaches such as Tensor
Factorization or Factorization Machines
A. Karatzoglou, X. Amatriain, L. Baltrunas, and N. Oliver. Multiverse
recommendation: n-dimensional tensor factorization for context-aware
collaborative filtering. In Proc. of the fourth ACM Recsys, 2010.
S. Rendle, Z. Gantner, C. Freudenthaler, and L. Schmidt-Thieme. Fast context-
aware recommendations with factorization machines. In Proc. of the 34th
ACM SIGIR, 2011.
198. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
User choice and presentation
effects
We log the recommended items to the
users and their choice
We can use this information as negative
feedback (not chosen) and positive
feedback (chosen).
S.H. Yang, B. Long, A.J. Smola, H. Zha, and Z. Zheng.
Collaborative competitive filtering: learning recommender
using context of user choice. In Proc. of the 34th ACM SIGIR,
2011.
199. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Social Recommendations
Beyond trust-based
Cold-starting with Social Information
Combining Social with CF
Finding “experts”
J. Delporte, A. Karatzoglou, T. Matuszczyk, S. Canu. Socially Enabled Preference Learning
from Implicit Feedback Data. In Proc. of ECML/PKDD 2013
N. N. Liu, X. Meng, C. Liu, and Q. Yang. Wisdom of the better few: cold start
recommendation via representative based rating elicitation. In Proc. of RecSys’11, 2011.
M. Jamali and M. Ester. Trustwalker: a random walk model for combining trust-based and
item-based recommendation. In Proc. of KDD ’09, 2009.
J. Noel, S. Sanner, K. Tran, P. Christen, L. Xie, E. V. Bonilla, E. Abbasnejad, and N. Della
Penna. New objective functions for social collaborative filtering. In Proc. of WWW ’12,
pages 859–868, 2012.
X. Yang, H. Steck, Y. Guo, and Y. Liu. On top-k recommendation using social networks. In
Proc. of RecSys’12, 2012.
200. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Diversity in Recommendation (I)
Recommendations from a music on-line retailer:
No diversity: pop albums from female singers.
Some are redundant.
Born This Way Pink Friday Dangerously in
Love
Born This Way
– The Remix
Femme Fatale Can't be
Tamed
Teenage
Dream
Lady Gaga Nicki Minaj Beyoncé Lady Gaga Britney Spears Miley Cyrus Katy Perry
201. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Diversity in Recommendation (II)
Some good music recommendations:
Different authors and genres.
Not similar between them.
These are much better recommendations!
Wrecking Ball Not your Kind
of People
Like a Prayer Choice of
Weapon
Sweet Heart
Sweet Light
The Light the
Dead See
Little Broken
Hearts
B. Springsteen Garbage Madonna The Cult Spiritualized Soulsavers Norah Jones
202. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Re-Ranking
Recommender Re-ranking
top 5
not diverse
D
top 5
diverse
Ziegler et al. 2005
Zhang et al. 2008
Vargas et al. 2011
comedy
drama
action
203. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Sub-Profiles
comedy
action
drama
204. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Novelty and Diversity Metrics
205. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
206. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Conclusions
Recommender Systems (RS) are an important
application of Machine Learning
RS have the potential to become as important
as Search is now
However, RS are more than Machine Learning
HCI
Economical models
...
207. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Conclusions
RS are fairly new but already grounded on
well-proven technology
Collaborative Filtering
Machine Learning
Content Analysis
Social Network Analysis
…
However, there are still many open questions
and a lot of interesting research to do!
208. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Index
1. Introduction: What is a Recommender System?
2. Approaches
1. Collaborative Filtering
2. Content-based Recommendations
3. Context-aware Recommendations
4. Other Approaches
5. Hybrid Recommender Systems
3. Research Directions
4. Conclusions
5. References
209. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
"Recommender Systems Handbook." Ricci, Francesco, Lior Rokach, Bracha
Shapira, and Paul B. Kantor. (2010).
“Recommender systems: an introduction”. Jannach, Dietmar, et al.
Cambridge University Press, 2010.
“Toward the Next Generation of Recommender Systems: A Survey of the
State-of-the-Art and Possible Extensions”. G. Adomavicious and A. Tuzhilin.
2005. IEEE Transactions on Knowledge and Data Engineering, 17 (6)
“Item-based Collaborative Filtering Recommendation Algorithms”, B.
Sarwar et al. 2001. Proceedings of World Wide Web Conference.
“Lessons from the Netflix Prize Challenge.”. R. M. Bell and Y. Koren. SIGKDD
Explor. Newsl., 9(2):75–79, December 2007.
“Beyond algorithms: An HCI perspective on recommender systems”.K.
Swearingen and R. Sinha. In ACM SIGIR 2001 Workshop on Recommender
Systems
“Recommender Systems in E-Commerce”. J. Ben Schafer et al. ACM
Conference on Electronic Commerce. 1999-
“Introduction to Data Mining”, P. Tan et al. Addison Wesley. 2005
References
210. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
“Evaluating collaborative filtering recommender systems”. J. L.
Herlocker, J. A. Konstan, L. G. Terveen, and J. T. Riedl. ACM Trans.
Inf. Syst., 22(1):5–53, 2004.
“Trust in recommender systems”. J. O’Donovan and B. Smyth. In
Proc. of IUI ’05, 2005.
“Content-based recommendation systems”. M. Pazzani and D.
Billsus. In The Adaptive Web, volume 4321. 2007.
“Fast context-aware recommendations with factorization
machines”. S. Rendle, Z. Gantner, C. Freudenthaler, and L. Schmidt-
Thieme. In Proc. of the 34th ACM SIGIR, 2011.
“Restricted Boltzmann machines for collaborative filtering”.R.
Salakhutdinov, A. Mnih, and G. E. Hinton.In Proc of ICML ’07, 2007
“Learning to rank: From pairwise approach to listwise approach”.Z.
Cao and T. Liu. In In Proceedings of the 24th ICML, 2007.
“Introduction to Data Mining”, P. Tan et al. Addison Wesley. 2005
References
211. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Balakrishnan, S., & Chopra, S. (2012, February). Collaborative ranking. In Proceedings of the fifth ACM international
conference on Web search and data mining (pp. 143-152). ACM.
Burges, C., Shaked, T., Renshaw, E., Lazier, A., Deeds, M., Hamilton, N., & Hullender, G. (2005, August). Learning to rank
using gradient descent. In Proceedings of the 22nd international conference on Machine learning (pp. 89-96). ACM.
Cao, Z., Qin, T., Liu, T. Y., Tsai, M. F., & Li, H. (2007, June). Learning to rank: from pairwise approach to listwise approach.
In Proceedings of the 24th international conference on Machine learning (pp. 129-136). ACM.
Chapelle, O., Metlzer, D., Zhang, Y., & Grinspan, P. (2009, November). Expected reciprocal rank for graded relevance. In
Proceedings of the 18th ACM conference on Information and knowledge management (pp. 621-630). ACM.
Joachims, T. (2002, July). Optimizing search engines using clickthrough data. In Proceedings of the eighth ACM SIGKDD
international conference on Knowledge discovery and data mining (pp. 133-142). ACM.
Koren, Y. (2008, August). Factorization meets the neighborhood: a multifaceted collaborative filtering model. In
Proceedings of the 14th ACM SIGKDD international conference on Knowledge discovery and data mining (pp. 426-434).
ACM.
Koren, Y., Bell, R., & Volinsky, C. (2009). Matrix factorization techniques for recommender systems. Computer, 42(8), 30-37.
Koren, Y., & Sill, J. (2011, October). OrdRec: an ordinal model for predicting personalized item rating distributions. In
Proceedings of the fifth ACM conference on Recommender systems (pp. 117-124). ACM.
Liu, N. N., & Yang, Q. (2008, July). Eigenrank: a ranking-oriented approach to collaborative filtering. In Proceedings of the
31st annual international ACM SIGIR conference on Research and development in information retrieval (pp. 83-90). ACM
Liu, N. N., Zhao, M., & Yang, Q. (2009, November). Probabilistic latent preference analysis for collaborative filtering. In
Proceedings of the 18th ACM conference on Information and knowledge management (pp. 759-766). ACM.
Quoc, C., & Le, V. (2007). Learning to rank with nonsmooth cost functions. Proceedings of the Advances in Neural
Information Processing Systems, 19, 193-200.
Rendle, S., Freudenthaler, C., Gantner, Z., & Schmidt-Thieme, L. (2009, June). BPR: Bayesian personalized ranking from
implicit feedback. In Proceedings of the Twenty-Fifth Conference on Uncertainty in Artificial Intelligence (pp. 452-461).
AUAI Press.
References
212. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Salakhutdinov, R., Mnih, A., & Hinton, G. (2007, June). Restricted Boltzmann machines for collaborative filtering. In
Proceedings of the 24th international conference on Machine learning (pp. 791-798). ACM.
Shi, Y., Larson, M., & Hanjalic, A. (2010, September). List-wise learning to rank with matrix factorization for collaborative
filtering. In Proceedings of the fourth ACM conference on Recommender systems (pp. 269-272). ACM.
Shi, Y., Karatzoglou, A., Baltrunas, L., Larson, M., Hanjalic, A., & Oliver, N. (2012a, August). TFMAP: Optimizing MAP for top-
n context-aware recommendation. In Proceedings of the 35th international ACM SIGIR conference on Research and
development in information retrieval (pp. 155-164). ACM.
Shi, Y., Karatzoglou, A., Baltrunas, L., Larson, M., Oliver, N., & Hanjalic, A. (2012b, September). CLiMF: learning to maximize
reciprocal rank with collaborative less-is-more filtering. In Proceedings of the sixth ACM conference on Recommender
systems (pp. 139-146). ACM.
Taylor, M., Guiver, J., Robertson, S., & Minka, T. (2008, February). Softrank: optimizing non-smooth rank metrics. In
Proceedings of the international conference on Web search and web data mining (pp. 77-86). ACM..
Volkovs, M., & Zemel, R. S. (2012). Collaborative ranking with 17 parameters. In Advances in Neural Information Processing
Systems (pp. 2303-2311).
Weimer, M., Karatzoglou, A., Le, Q. V., & Smola, A. J. (2007). Cofi rank-maximum margin matrix factorization for
collaborative ranking. In Advances in neural information processing systems (pp. 1593-1600).
Xu, J., & Li, H. (2007, July). Adarank: a boosting algorithm for information retrieval. In Proceedings of the 30th annual
international ACM SIGIR conference on Research and development in information retrieval (pp. 391-398). ACM.
Yue, Y., Finley, T., Radlinski, F., & Joachims, T. (2007, July). A support vector method for optimizing average precision. In
Proceedings of the 30th annual international ACM SIGIR conference on Research and development in information retrieval
(pp. 271-278). ACM.
References
213. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Recsys Wiki: http://recsyswiki.com/
Recsys conference Webpage: http://recsys.acm.org/
Recommender Systems Books Webpage:
http://www.recommenderbook.net/
Mahout Project: http://mahout.apache.org/
MyMediaLite Project: http://www.mymedialite.net/
Online resources
214. MLSS Sydney, February 18, 2015 – Machine Learning for Recommender Systems
Thank you!
Questions?
Alexandros Karatzoglou
alexk@tid.es
@alexk_z