Slides UMAP'13 paper "Exploiting the Semantic Similarity of Contextual Situations for Pre-filtering Recommendation"
1. Exploiting the Semantic Similarity of
Contextual Situations for Pre-Filtering
Recommendation
Victor Codina
Francesco Ricci
Luigi Ceccaroni
UMAP 2013
2. UMAP – June 2013, Rome, Italy
Outline
2
State of the art
Novel contextual pre-filtering approach
Evaluation
Context-Aware Recommender Systems (CARS)
3. UMAP – June 2013, Rome, Italy
Context matters
3
Main assumption: items can be experienced differently
by the users depending on the current context
4. UMAP – June 2013, Rome, Italy
Context-Aware Recommender Systems
(CARS)
4
CARS are locally adapted prediction models
Adapted to the “local” user contextual situation
Goal: to find the right level of contextualitzation for a
target user and contextual situation
Global (all user ratings) vs. Local model (user ratings in context)
Difficult task: the optimal level of contextualization
depends on several factors
Context relevance, enough ratings in context, …
5. UMAP – June 2013, Rome, Italy
Outline
5
State of the art
Novel contextual pre-filtering approach
Evaluation
Context-Aware Recommender Systems (CARS)
6. UMAP – June 2013, Rome, Italy
Direct approach that builds a strict local prediction
model for each possible contextual situation
Only ratings acquired in the target context are used
Main limitation: its lack of flexibility
Always uses the maximum level of contextualization
It produces too narrow prediction models that fail when:
Target context is not relevant enough
Not enough ratings acquired in the situation (sparsity problem)
Exact pre-filtering
6
7. UMAP – June 2013, Rome, Italy
It exploits context taxonomies to build generalized local
models when needed (Adomavicius et al., 2005)
Example:
Performance limited to the quality of the context model
The pre-defined generalization may or may not suit the data
Generalized pre-filtering
7
8. UMAP – June 2013, Rome, Italy
All build a global MF model that integrates contextual
information as additional model parameters
Which implies that all ratings are used during model learning
Two main ways of extending MF with context
Tensor Factorization, where context is integrated using high-
order MF techniques (Karatzoglou et al., 2010)
Context-Aware MF, where context is integrated as contextual
biases associated to the items/users (Baltrunas et al., 2011)
Main limitations
Computation complexity (especially in Tensor Factorization)
Potential similarities between situations are not exploited
Approaches based on extended Matrix
Factorization (MF)
8
9. UMAP – June 2013, Rome, Italy
Outline
9
State of the art
Novel contextual pre-filtering approach
Evaluation
Context-Aware Recommender Systems (CARS)
10. UMAP – June 2013, Rome, Italy
Similar idea as in generalized pre-filtering
Our approach also builds semantically-related local models
Key difference: we use a novel notion of semantic
similarities between conditions
Based on their effect on the users’ ratings (altering the value)
Advantages:
No external knowledge is needed (only rating data)
Non-conventional (cross-factor) similarities can be found
Our solution: semantic pre-filtering
10
11. Main assumption: two conditions are similar if they
influence the users’ ratings similarly
Example (item-based):
UMAP – June 2013, Rome, Italy
Similarity calculation between conditions
based on their implicit semantics (I)
11
Contextual
Condition
Natural
Park 1
Natural
Park 2
Natural
Park 3
Walking
Route 1
Museum
1
Museum
2
sunny - -
family - - -
rainy -
12. To mitigate the sparsity of the co-occurrence matrix we
reduce its dimensionality applying SVD
Example:
UMAP – June 2013, Rome, Italy
Similarity calculation between conditions
based on their implicit semantics (II)
12
Contextual
Condition
Latent
Feature 1
Latent
Feature
2
Latent
Feature
3
sunny
family
rainy
Cosine similarity
13. UMAP – June 2013, Rome, Italy
Similarity calculation between conditions:
an example in a tourism recommender
13
Similarities calculated from a tourism rating data set
(Top-5 similar conditions to cold weather)
14. We experimented with two pairwise similarity strategies
for estimating a global similarity between two situations
Best-pairs
All-pairs
Similarity calculation between situations
defined by several conditions
UMAP – June 2013, Rome, Italy 14
target
sunny
sad
unknown
candidate
unknown
happy
weekend
target
sunny
sad
unknown
candidate
unknown
happy
weekend
Contextual
Factors
Weather
Mood
Day of the week
15. Building the semantically-related
local prediction models
UMAP – June 2013, Rome, Italy 15
Ratings filtering
All
ratings
(Y)
Relevant
ratings (X)
Local prediction
model building
target contextual situation
(c*)
Rating predictions
β
FOR EACH (user u, item i) in Y DO
IF exists THEN
ADD to X
ELSE
GET Sui = { : Sim(c,c*) ≥ }
ADD AVG(Sui) = to X
END IF
END FOR
16. The similarity threshold controls
the level of contextualization
UMAP – June 2013, Rome, Italy 16
If (β = 1) works as in exact pre-filtering
Sim(c,c*) = 1 only when c = c*
If (β = -1) works as in the global model
All ratings are used for training the model
Two methods to set the optimal threshold (β)
Using a global threshold for all the possible target situations
Using a local threshold per target situation
17. UMAP – June 2013, Rome, Italy
Outline
17
State of the art
Novel contextual pre-filtering approach
Evaluation
Context-Aware Recommender Systems (CARS)
18. Semantic pre-filtering vs. Context-Aware MF (CAMF)
CAMF-CC and CAMF-CI variants (Baltrunas et al., 2011)
Two approaches as baseline
Exact pre-filtering
Bias MF (Context-free)
Exact and Semantic pre-filtering use the Bias MF to build
the local rating prediction models
Experimental Setup (I)
UMAP – June 2013, Rome, Italy 18
Overall
rating average
User
bias
Item
bias
19. Rating prediction accuracy measured in terms of:
Mean Absolute Error (MAE)
Root Mean Squared Error (RMSE)
Per-user training/test splitting protocol
For each user 5 test ratings randomly selected
Only users with more than 10 ratings used for testing
We discarded a test rating if the user has not rated at
least 1 additional item in the same contextual situation
A necessary condition for applying MF with exact pre-filtering
Experimental Setup (II)
UMAP – June 2013, Rome, Italy 19
20. 5 contextually tagged rating data sets:
Different types of contextual information:
One condition per situation in Music and Tourism
Several conditions per situation in the other data sets
In MovieLens and LibraryThing user tags are used as context
Data sets
UMAP – June 2013, Rome, Italy 20
21. Error reduction (MAE) with respect to Bias MF
Performance comparison for data sets
with one condition per situation
UMAP – June 2013, Rome, Italy 21
22. Error reduction (MAE) with respect to Bias MF
Performance comparison in data sets
with several conditions per situation
UMAP – June 2013, Rome, Italy 22
23. Novel contextual pre-filtering approach
which is able to outperform state-of-the-art context-aware MF
models by aggregating rating data acquired in situations that
are similar to the target contextual situation
Novel notion of semantic similarity between conditions
which estimates two conditions as similar if they influence the
users’ ratings similarly
Conclusions
UMAP – June 2013, Rome, Italy 23
24. New semantic pre-filtering variants
To improve the precision of situation-to-situation similarities
To better exploit the similarities during ratings’ filtering
Extended evaluation
New data sets / offline metrics (e.g. top-n recommendation)
User study
New semantically-enhanced context-aware approaches
Using the post-filtering strategy
Using the contextual modeling strategy (e.g. extended MF)
Future work
UMAP – June 2013, Rome, Italy 24
25. UMAP – June 2013, Rome, Italy 25
Exploiting the Semantic Similarity of
Contextual Situations for Pre-Filtering
Recommendation
Any comments or questions?
Victor Codina
vcodina@lsi.upc.edu
Notas del editor
Introduce myself. This work has been done with the collaboration of Francesco Ricci from the free university of bolzano and of Luigi Ceccaroni from Bdigital a technology centre in Barcelona Main message: what we present in this work?
Divided into two parts: 1 part about main ideas behind CARS and limitations of current approaches 2 part about our novel prefiltering approach and its preliminary evaluation
Main assumption (ratings can be influence by the current context) Explain examples (different weather conditions completely change the user experience of visiting these two points of interest)
How do we see CARS? -> as locally adapted prediction models Main goal: to find the optimal level of contextualization. But determining this optimal level is a difficult task: several factors are influencing (the relevance of the situation, the quantity of ratings acquired in this context…)
Is the approach that rigidly implements this idea of locally adapted prediction models Main limitation its lack of flexibility… and therefore it only works where in the target context…
Solution based on the exploitation of hierarchical relations between conditions Main limilation is that its performance depends on the pre-defined context taxonomy which may suit or not the data. Here you can see an example of such a taxonomy in an e-commerce application.
A More recent family of CARS approaches consists of extending the well-known MF prediction model with additional parameters… so using these approachs a global model is built The are two main ways to extending MF: TF and using contextual baseline predictors. Main limitations: Computation complexity Similarities between situations/conditions are not exploited,
Similarly as …, we also propose a pre-filtering approach that… Key difference is the that we used a novel notion of semantic similarity based on … instead of relying on pre-defined context taxonomies. Main advantages
Main assumption of our method for semantic similarity calculation is that The method consists of buidling a co-occurrence matrix where each entry measures the influence of the condition with respect to an item or user, than can be positive or negative. This table shows an example of such a coocurrence matrix using items of systems, in this case, points of interest.. To simplify here we only show the sign of the influence but we actually store real values. As it is shown in this formula we measure the influence… Future work: Instead of measuring the influence of each condition separately, measure it using situations directly (only most popular ones?) (maybe in tag data sets can be useful) Ricci comment: explain better the formula… (5 min extra)
In order to mitigate the sparsity problem of high dimensional matrices… Cosine similarity of the latent feature vectors
As an example, here I show some of the similarities estimated… In particular only shows the top-5 similar condition to the weather condition using the item-based or user-based semantics. Clear differences: item-based similarities reflect that the condtions influence similarly the same items, and in the user-based that the conditions influence similarly the same users. Unexpected similarities
In complex situations, defined by several conditions, we need a similarity measure that can compare them. We experimented with two paiwise simialrity strategies, which compute a global similarity… Best-pairs = only best-matching pairs of conditions, as it is shows in the example… All-pairs = all the possible similarities
Having these similarities between situations, our prefilering approach works as follows: given… and given… we select as relevant ratings those that were acquired.. After this process, in the case of having several ratings for the same user and item we … Once selected the relevant ratings we use them to …
Threshold controls the level of contextualization (1 exact prefiltering and -1 global model) It can be learnt at different granularities. Two variants: one using a global threshold …
Performance comparitive with respect to state of the art MF model for building local models in prefiltering approaches in order to properly compare the perfomrance (but other recommendation models can also be used) In particular we have used a standard MF…
Rating prediction accuracy metrics Per-user training/test splitting protocol In this experiment we only used as test ratings those provided in contextual situations in which the user rated at least 1 additional item, because it a necessary condition of exact pre-filtering to be able to make predictions.
We have considered 5 data sets
Bar charts show performance using data sets where… here we compare two variants: one using the global threshold…. On the one hand, semantic prefiltering variants outperform On the other hand, the one using the global thresholds achieves the best results in both data sets (change color)