Slides (en français) de la présentation du papier CORIA 2015 "Suggestion Contextuelle Composite" par Thibaut Thonet, Romain Deveaud, Iadh Ounis, et Craig Macdonald.
3. Motivations
Envie de se divertir dans des lieux d’activités situés à proximité
Images tirées de Google Map et Foursquare, février 2014.
Suggestion Contextuelle Composite 2 / 15
4. Motivations
Chaque utilisateur a des goûts uniques
Images tirées de Google Map et Foursquare, février 2014.
Suggestion Contextuelle Composite 2 / 15
5. Motivations
Nécessité de personnaliser les lieux suggérés
Images tirées de Google Map et Foursquare, février 2014.
Suggestion Contextuelle Composite 2 / 15
6. Problématique
Similaire à la problématique proposée dans TREC Contextual Suggestion [1]
Données à disposition :
Villes
Profils d’utilisateurs (notes d’intérêt sur
un échantillon de lieux d’activités)
Objectif : proposer pour chaque paire utilisateur/ville une liste personnalisée de
suggestions de lieux d’activités situés dans la ville
[1] Dean-Hall, A., Thomas, P., Clarke, C. L. A., Simone, N., Kamps, J., & Voorhees, E. (2013). Overview of the TREC 2013 Contextual Suggestion Track.
Proc. of TREC ’13 (pp. 1–13).
Suggestion Contextuelle Composite 3 / 15
7. Travaux existants
Les systèmes existants suggèrent uniquement des lieux d’activités similaires aux
lieux appréciés par l’utilisateur =⇒ absence de diversité dans les suggestions
Cependant la diversification a montré son importance :
En RI ad-hoc [2]
Dans les systèmes de recommandation [3]
[2] Clarke, C. L. A., Kolla, M., Cormack, G. V., Vechtomova, O., Ashkan, A., Büttcher, S., & MacKinnon, I. (2008). Novelty and Diversity in Information Retrieval
Evaluation. Proc. of SIGIR ’08 (pp. 659–666).
[3] Vargas, S., & Castells, P. (2013). Exploiting the Diversity of User Preferences for Recommendation. Proc. of OAIR ’13 (pp. 129–136).
Suggestion Contextuelle Composite 4 / 15
8. Notre Modèle
Intuition
Regrouper les suggestions en grappes thématiquement cohésives
1 grappe = 1 thème (p. ex. musées d’art, bars, restaurants chinois)
Choix parmi plusieurs grappes =⇒ diversification des thèmes
Suggestion Contextuelle Composite 5 / 15
9. Notre Modèle
Intuition
Regrouper les suggestions en grappes thématiquement cohésives
1 grappe = 1 thème (p. ex. musées d’art, bars, restaurants chinois)
Choix parmi plusieurs grappes =⇒ diversification des thèmes
Suggestion Contextuelle Composite 5 / 15
10. Notre Modèle
Distance thématique
Distance thématique entre lieux d’activités basée sur une taxonomie de catégories
(root)
Food
Chinese Restaurant
Cantonese Restaurant
Fast Food
Arts & Entertainment
Museum
History MuseumArt Museum
Aquarium
tdist("Wo Hop", "New York Aquarium")
= ?
Suggestion Contextuelle Composite 6 / 15
11. Notre Modèle
Distance thématique
Distance thématique entre lieux d’activités basée sur une taxonomie de catégories
(root)
Food
Chinese Restaurant
Cantonese Restaurant
Fast Food
Arts & Entertainment
Museum
History MuseumArt Museum
Aquarium
tdist("Wo Hop", "New York Aquarium")
= | "Fast Food" → "Food" → "(root)" → "Arts & Entertainment" → "Aquarium" |
= 4
Suggestion Contextuelle Composite 6 / 15
12. Notre Modèle
Distance thématique
Distance thématique entre lieux d’activités basée sur une taxonomie de catégories
(root)
Food
Chinese Restaurant
Cantonese Restaurant
Fast Food
Arts & Entertainment
Museum
History MuseumArt Museum
Aquarium
Distance entre deux lieux d’activités v ∈ V et w ∈ V de catégories Cv et Cw
tdist(v, w) = min
cv ∈Cv
cw ∈Cw
|shortest_path(cv , cw )|
Suggestion Contextuelle Composite 6 / 15
13. Notre Modèle
Critères de qualité des grappes
Classement des grappes =⇒ score d’une grappe basé sur quels critères ?
Popularité globale [4]
Popularité globale d’un lieu d’activités v ∈ V
opop(v) =
pop(v)
maxw∈V pop(w)
Popularité globale d’une grappe b = {v1, . . . , vn}
opop(b) = v∈b opop(v)
|b|
[4] Deveaud, R., Albakour, M.-D., Macdonald, C., & Ounis, I. (2014). On the Importance of Venue-Dependent Features for Learning to Rank Contextual
Suggestions. Proc. of CIKM ’14 (pp. 1827-1830).
Suggestion Contextuelle Composite 7 / 15
14. Notre Modèle
Critères de qualité des grappes
Classement des grappes =⇒ score d’une grappe basé sur quels critères ?
Popularité globale [4]
Cohésion thématique
Similarité thématique entre deux lieux d’activités v ∈ V et w ∈ V
tsim(v, w) =
1
1 + tdist(v, w)
Cohésion thématique d’une grappe b = {v1, . . . , vn}
tcoh(b) =
v,w∈b tsim(v, w)
|b|2
[4] Deveaud, R., Albakour, M.-D., Macdonald, C., & Ounis, I. (2014). On the Importance of Venue-Dependent Features for Learning to Rank Contextual
Suggestions. Proc. of CIKM ’14 (pp. 1827-1830).
Suggestion Contextuelle Composite 7 / 15
15. Notre Modèle
Critères de qualité des grappes
Classement des grappes =⇒ score d’une grappe basé sur quels critères ?
Popularité globale [4]
Cohésion thématique
Appréciation estimée
Appréciation estimée d’un utilisateur u ∈ U pour un lieu d’activités v ∈ V
eappu(v) =
w∈RVu
ratingu(w) · tsim(v, w)
w∈RVu
tsim(v, w)
Appréciation estimée d’un utilisateur u ∈ U pour une grappe b = {v1, . . . , vn}
eappu(b) = v∈b eappu(v)
|b|
[4] Deveaud, R., Albakour, M.-D., Macdonald, C., & Ounis, I. (2014). On the Importance of Venue-Dependent Features for Learning to Rank Contextual
Suggestions. Proc. of CIKM ’14 (pp. 1827-1830).
Suggestion Contextuelle Composite 7 / 15
16. Notre Modèle
Critères de qualité des grappes
Classement des grappes =⇒ score d’une grappe basé sur quels critères ?
Popularité globale [4]
Cohésion thématique
Appréciation estimée
Score d’une grappe b pour un utilisateur u ∈ U
scoreu(b) = opop(b)Copop
· tcoh(b)Ctcoh
· eappu(b)Ceapp
[4] Deveaud, R., Albakour, M.-D., Macdonald, C., & Ounis, I. (2014). On the Importance of Venue-Dependent Features for Learning to Rank Contextual
Suggestions. Proc. of CIKM ’14 (pp. 1827-1830).
Suggestion Contextuelle Composite 7 / 15
17. Notre Modèle
Formation des grappes
Choix des grappes optimales = problème NP-difficile [5]
Heuristique de formation des grappes adaptées de la RI Composite [5, 6]
1 Production d’un grand nombre de grappes, une par une (Bundles One-By-One)
[5] Amer-Yahia, S., Bonchi, F., Castillo, C., Feuerstein, E., Mendez-Diaz, I., & Zabala, P. (2014). Composite Retrieval of Diverse and Complementary Bundles.
IEEE Transactions on Knowledge and Data Engineering, 26(11) (pp. 2662–2675).
[6] Bota, H., Zhou, K., Jose, J. M., & Lalmas, M. (2014). Composite Retrieval of Heterogeneous Web Search. Proc. of WWW ’14 (pp. 119–130).
Suggestion Contextuelle Composite 8 / 15
18. Notre Modèle
Formation des grappes
Choix des grappes optimales = problème NP-difficile [5]
Heuristique de formation des grappes adaptées de la RI Composite [5, 6]
1 Production d’un grand nombre de grappes, une par une (Bundles One-By-One)
[5] Amer-Yahia, S., Bonchi, F., Castillo, C., Feuerstein, E., Mendez-Diaz, I., & Zabala, P. (2014). Composite Retrieval of Diverse and Complementary Bundles.
IEEE Transactions on Knowledge and Data Engineering, 26(11) (pp. 2662–2675).
[6] Bota, H., Zhou, K., Jose, J. M., & Lalmas, M. (2014). Composite Retrieval of Heterogeneous Web Search. Proc. of WWW ’14 (pp. 119–130).
Suggestion Contextuelle Composite 8 / 15
19. Notre Modèle
Formation des grappes
Choix des grappes optimales = problème NP-difficile [5]
Heuristique de formation des grappes adaptées de la RI Composite [5, 6]
1 Production d’un grand nombre de grappes, une par une (Bundles One-By-One)
2 Sélection des meilleures grappes et extraction des lieux d’activités les plus populaires
[5] Amer-Yahia, S., Bonchi, F., Castillo, C., Feuerstein, E., Mendez-Diaz, I., & Zabala, P. (2014). Composite Retrieval of Diverse and Complementary Bundles.
IEEE Transactions on Knowledge and Data Engineering, 26(11) (pp. 2662–2675).
[6] Bota, H., Zhou, K., Jose, J. M., & Lalmas, M. (2014). Composite Retrieval of Heterogeneous Web Search. Proc. of WWW ’14 (pp. 119–130).
Suggestion Contextuelle Composite 8 / 15
20. Expérimentations
Cadre
Expérimentations sur la collection de TREC Contextual Suggestion 2013
Optimisation des paramètres
Analyse de l’impact de la diversité, personnalisation et popularité
Participation à TREC Contextual Suggestion 2014
Utilisation de Foursquare pour constituer les suggestions de lieux d’activités
Lieux d’activités associés à des catégories thématiques organisées en taxonomie
Pré-filtrage des lieux d’activités en fonction des villes données
Suggestion Contextuelle Composite 9 / 15
21. Expérimentations
Métriques
Évaluation de la pertinence par les métriques officielles de TREC [1]
Précision à 5 (P@5)
Mean Reciprocal Rank (MRR)
Time-Biased Gain (TBG)
Définition d’une métrique de diversité inspirée de [7]
Intralist Diversity (ILD) d’une liste l de lieux d’activités :
ILD(l) =
v, w∈l 1 − tsim(v, w)
|l|2
Mean Intralist Diversity (MILD) d’un ensemble L de listes de lieux d’activités :
MILD(L) = l∈L ILD(l)
|L|
[1] Dean-Hall, A., Thomas, P., Clarke, C. L. A., Simone, N., Kamps, J., & Voorhees, E. (2013). Overview of the TREC 2013 Contextual Suggestion Track.
Proc. of TREC ’13 (pp. 1–13).
[7] Ziegler, C.-N., McNee, S. M., Konstan, J. A., & Lausen, G. (2005). Improving Recommendation Lists Through Topic Diversification. Proc. of WWW ’05 (pp.
22–32).
Suggestion Contextuelle Composite 10 / 15
22. Expérimentations
Optimisation des paramètres
Comparaison des différentes versions du système suivant plusieurs métriques
1 version = 1 jeu de paramètres
λ : poids de tsim par rapport à eapp lors de l’agrégation de lieux autour des pivots
Copop, Ctcoh, Ceapp : poids de opop, tcoh et eapp dans le score d’une grappe
β : nombre de lieux par grappe
Fusion des classements suivant chaque critère avec Borda Count [8]
Optimisation des paramètres λ, Copop, Ctcoh, Ceapp et β
Version λ Copop Ctcoh Ceapp β P@5 MRR MILD Points
1 0,5 1 1 1 5 0,3139 0,5463 0,5384
2 0 1 1 1 5 0,2906 0,4944 0,5347
3 1 1 1 1 5 0,3229 0,5422 0,5271
4 2/3 1 1 1 5 0,3139 0,5466 0,5375
5 1/3 1 1 1 5 0,3193 0,5451 0,5361
[8] Montague, M., & Aslam, J. A. (2002). Condorcet Fusion for Improved Retrieval. Proc. of CIKM ’02 (pp. 538–548).
Suggestion Contextuelle Composite 11 / 15
23. Expérimentations
Optimisation des paramètres
Comparaison des différentes versions du système suivant plusieurs métriques
1 version = 1 jeu de paramètres
λ : poids de tsim par rapport à eapp lors de l’agrégation de lieux autour des pivots
Copop, Ctcoh, Ceapp : poids de opop, tcoh et eapp dans le score d’une grappe
β : nombre de lieux par grappe
Fusion des classements suivant chaque critère avec Borda Count [8]
Optimisation des paramètres λ, Copop, Ctcoh, Ceapp et β
Version λ Copop Ctcoh Ceapp β P@5 MRR MILD Points
1 0,5 1 1 1 5 0,3139(2)
0,5463 0,5384
2 0 1 1 1 5 0,2906(1)
0,4944 0,5347
3 1 1 1 1 5 0,3229(5)
0,5422 0,5271
4 2/3 1 1 1 5 0,3139(3)
0,5466 0,5375
5 1/3 1 1 1 5 0,3193(4)
0,5451 0,5361
[8] Montague, M., & Aslam, J. A. (2002). Condorcet Fusion for Improved Retrieval. Proc. of CIKM ’02 (pp. 538–548).
Suggestion Contextuelle Composite 11 / 15
24. Expérimentations
Optimisation des paramètres
Comparaison des différentes versions du système suivant plusieurs métriques
1 version = 1 jeu de paramètres
λ : poids de tsim par rapport à eapp lors de l’agrégation de lieux autour des pivots
Copop, Ctcoh, Ceapp : poids de opop, tcoh et eapp dans le score d’une grappe
β : nombre de lieux par grappe
Fusion des classements suivant chaque critère avec Borda Count [8]
Optimisation des paramètres λ, Copop, Ctcoh, Ceapp et β
Version λ Copop Ctcoh Ceapp β P@5 MRR MILD Points
1 0,5 1 1 1 5 0,3139(2)
0,5463(4)
0,5384(5)
2 0 1 1 1 5 0,2906(1)
0,4944(1)
0,5347(2)
3 1 1 1 1 5 0,3229(5)
0,5422(2)
0,5271(1)
4 2/3 1 1 1 5 0,3139(3)
0,5466(5)
0,5375(4)
5 1/3 1 1 1 5 0,3193(4)
0,5451(3)
0,5361(3)
[8] Montague, M., & Aslam, J. A. (2002). Condorcet Fusion for Improved Retrieval. Proc. of CIKM ’02 (pp. 538–548).
Suggestion Contextuelle Composite 11 / 15
25. Expérimentations
Optimisation des paramètres
Comparaison des différentes versions du système suivant plusieurs métriques
1 version = 1 jeu de paramètres
λ : poids de tsim par rapport à eapp lors de l’agrégation de lieux autour des pivots
Copop, Ctcoh, Ceapp : poids de opop, tcoh et eapp dans le score d’une grappe
β : nombre de lieux par grappe
Fusion des classements suivant chaque critère avec Borda Count [8]
Optimisation des paramètres λ, Copop, Ctcoh, Ceapp et β
Version λ Copop Ctcoh Ceapp β P@5 MRR MILD Points
1 0,5 1 1 1 5 0,3139(2)
0,5463(4)
0,5384(5)
2 + 4 + 5 = 11
2 0 1 1 1 5 0,2906(1)
0,4944(1)
0,5347(2)
1 + 1 + 2 = 4
3 1 1 1 1 5 0,3229(5)
0,5422(2)
0,5271(1)
5 + 2 + 1 = 8
4 2/3 1 1 1 5 0,3139(3)
0,5466(5)
0,5375(4)
3 + 5 + 4 = 12
5 1/3 1 1 1 5 0,3193(4)
0,5451(3)
0,5361(3)
4 + 3 + 3 = 10
[8] Montague, M., & Aslam, J. A. (2002). Condorcet Fusion for Improved Retrieval. Proc. of CIKM ’02 (pp. 538–548).
Suggestion Contextuelle Composite 11 / 15
26. Expérimentations
Impact de la diversité, personnalisation et popularité
Version λ Copop Ctcoh Ceapp β P@5 MRR MILD Points
div + perso + pop 2/3 5 1 10 7 0,3139(5)
0,5635(7)
0,5602(5)
17
div + perso 2/3 0 1 10 7 0,1336(2)
0,2741(2)
0,5780(6)
10
div + pop 1 5 1 0 7 0,3148(6)
0,5466(6)
0,5549(4)
16
perso + pop - 5 - 10 1 0,3157(7)
0,5152(5)
0,5341(2)
14
div 1 0 1 0 7 0,1309(1)
0,2428(1)
0,5960(7)
9
perso - 0 - 10 1 0,1605(3)
0,3074(3)
0,4720(1)
7
pop - 5 - 0 1 0,3094(4)
0,5113(4)
0,5350(3)
11
Meilleures performances obtenues en combinant diversité, personnalisation et
popularité
Importance de la popularité des suggestions [4]
Comparaison de div + perso + pop avec perso + pop
MILD : +6%
MRR : +9%
P@5 : -2%
=⇒ Diversification des suggestions sans détérioration de la pertinence
[4] Deveaud, R., Albakour, M.-D., Macdonald, C., & Ounis, I. (2014). On the Importance of Venue-Dependent Features for Learning to Rank Contextual
Suggestions. Proc. of CIKM ’14 (pp. 1827-1830).
Suggestion Contextuelle Composite 12 / 15
27. Expérimentations
Participation à TREC CS 2014
25 systèmes soumis utilisant l’Open Web
Système λ Copop Ctcoh Ceapp β P@5 (rang) TBG (rang) MRR (rang)
UDInfoCS2014_2 - - - - - 0,5585 (1) 2,7021 (1) 0,7482 (1)
RAMARUN2 - - - - - 0,5017 (2) 2,3718 (2) 0,6846 (2)
BJUTa - - - - - 0,5010 (3) 2,2209 (4) 0,6677 (4)
BJUTb - - - - - 0,4983 (4) 2,1949 (5) 0,6626 (6)
uogTrBunSumF 2/3 1 1 10 5 0,4943 (5) 2,1526 (7) 0,6704 (3)
Notre système (uogTrBunSumF) a respectivement obtenu les rangs de 5ème
,
7ème
et 3ème
sur 25 en P@5, TBG et MRR
Faible différence en P@5 pour les systèmes classés de la 2ème
à la 5ème
position
=⇒ Notre système renvoie des suggestions de pertinence comparable aux meilleurs
systèmes de suggestion contextuelle existants
Suggestion Contextuelle Composite 13 / 15
28. Conclusions & Perspectives
Proposition d’un modèle de suggestion contextuelle regroupant les suggestions
en grappes thématiquement cohésives afin de diversifier les lieux d’activités
Expérimentations sur les collections TREC CS 2013 et 2014
Importance de la popularité des suggestions
Possibilité de diversifier les suggestions sans dégrader leur pertinence
Performances comparables aux meilleurs systèmes de suggestion contextuelle
Travaux futurs
Active Learning pour améliorer la personnalisation et apprendre les paramètres
Évaluation auprès d’utilisateurs réels pour comparer un système de suggestion
contextuelle classique avec un système de suggestion contextuelle composite
Suggestion Contextuelle Composite 14 / 15
30. Bonus !
Complexité
Paramètres :
|V| : nombre de lieux situés dans une ville donnée (≈ 1000)
c : nombre de grappes candidates à produire (≈ 50)
β : nombre de lieux d’activités par grappe (≈ 5)
k : nombre de suggestions à renvoyer (≈ 5)
Complexité :
Création de la liste de pivots : c × β × |V|
Agrégation des lieux autour des pivots : c × β × |V| − c×β
2
Sélection des meilleures grappes : k × c
k β |V| =⇒ C = O c × β × 2 × |V| − c×β
2
Suggestion Contextuelle Composite 15 / 15