SlideShare une entreprise Scribd logo
1  sur  57
Télécharger pour lire hors ligne
Institut Mines-Télécom
Les systèmes de
recommandations
Romain Picot-Clémente
Institut Mines-Télécom
Introduction
21/07/2015 Les systèmes de recommandations2
Institut Mines-Télécom
Origines
• Personnalisation de la présentation (feuille de
style, disposition des éléments, etc.)
• Personnalisation de la navigation (modification
du graphe hypermédia)
• Personnalisation du contenu (modification de la
complexité du contenu selon contexte, profil,
etc.)
21/07/2015 Les systèmes de recommandations - Introduction3
Systèmes hypermédia adaptatifs
Systèmes de recommandations
Systèmes hypermédia adaptatifs (Brusilovsky et al., 1996)
Introduit initialement
pour le e-learning
Institut Mines-Télécom
Origines
Personnalisation de la navigation (modification du
graphe hypermédia)
21/07/2015 Les systèmes de recommandations - Introduction4
Systèmes hypermédia adaptatifs
Systèmes de recommandations
Systèmes de recommandations
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations - Introduction5
Pour l’utilisateur
Pour le fournisseur
Intérêt utilisateur
Systèmes de recommandations :
A quoi ça sert ?
• Réduire le temps de recherche d’information
• Découvrir des produits difficiles à trouver
• …
𝐴𝑚é𝑙𝑖𝑜𝑟𝑒𝑟 𝑙′
𝑒𝑥𝑝é𝑟𝑖𝑒𝑛𝑐𝑒 𝑢𝑡𝑖𝑙𝑖𝑠𝑎𝑡𝑒𝑢𝑟
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations - Introduction6
Pour l’utilisateur
Pour le fournisseur
Intérêt pour fournisseur du service
Systèmes de recommandations :
A quoi ça sert ?
• Garder/engager/fidéliser les clients
• Orienter les clients
• Augmenter les bénéfices
• …
Institut Mines-Télécom
Applications
21/07/2015 Les systèmes de recommandations - Introduction7
Exemples de domaines d’application
• Films (Netflix, Allocine, …)
• Musiques (Deezer, …)
• Jeux vidéo (Steam, Microsoft Xbox Live, ...)
• Livres (Amazon, Fnac, …)
• « Amis » (Facebook, Twitter, Google+, …)
• Tourisme (Expedia, …)
• e-Shopping (Cdiscount, eBay, Amazon, Fnac, …)
• Publicité ciblée (Criteo, …)
• Nutrition/sport/bien-être (Withings, Fitnext, …)
• Médical
• …
Institut Mines-Télécom
Définitions, types de
systèmes de recommandation
21/07/2015 Les systèmes de recommandations8
Institut Mines-Télécom
• Utilisateurs : individus cibles de la recommandation
• Items : ensemble des éléments possiblement recommandables
aux utilisateurs
Items, utilisateurs, matrice d’usage
21/07/2015 Les systèmes de recommandations9
Deux classes d’entités
Matrice d’usage
Items et utilisateurs
Institut Mines-Télécom
Items, utilisateurs, matrice d’usage
21/07/2015 Les systèmes de recommandations10
Deux classes d’entités
Matrice d’usage
Matrice d’usage : relie utilisateurs et items par une
matrice de score
HP1 HP2 HP3 TW SW1 SW2 SW3
A 4 5 1
B 5 5 4
C 2 4 5
D 3 3
Valeur inconnue
Utilisateurs
Items
Le score peut représenter
différents types d’interaction : une
note, un nombre d’utilisation, une
durée, un « like », etc.
Institut Mines-Télécom
Deux grands groupes de systèmes de
recommandations
21/07/2015 Les systèmes de recommandations11
Basé sur la similarité du profil de l’utilisateur avec le profil des items
Basé sur le contenu (content-based)
Filtrage collaboratif (collaborative filtering)
Systèmes de recommandations basés sur le contenu
Institut Mines-Télécom
Deux grands groupes de systèmes de
recommandations
21/07/2015 Les systèmes de recommandations12
Basé sur la similarité de comportement (achats, visites, clics, notes, etc.)
entre les utilisateurs
Basé sur le contenu (content-based)
Filtrage collaboratif (collaborative filtering)
Systèmes de recommandations par filtrage collaboratif
Institut Mines-Télécom
Systèmes de recommandations
basés sur le contenu
21/07/2015 Les systèmes de recommandations13
Institut Mines-Télécom
Principe général de la recommandation
basée sur le contenu
21/07/2015 Les systèmes de recommandations14
Profilage items et utilisateur
Recommandation par distance
• Profil items : vecteur de scores sur des attributs/descripteurs
• Profilage utilisateurs :
─ Implicite (selon les interactions avec les items)
─ Explicite (question directe)
Utilisateur
Profil
utilisateur
(vecteur
d’attributs)
Items
Profilage
items Profils
items
(vecteurs
d’attributs)
Profilage
utilisateur
Interactions
Faire attention aux
échelles entres attributs
Institut Mines-Télécom
Principe général de la recommandation
basée sur le contenu
21/07/2015 Les systèmes de recommandations15
Profilage items et utilisateur
Recommandation par distance
Utilisateur
Profil
utilisateur
(vecteur
d’attributs)
Items
Profilage
items Profils
items
(vecteurs
d’attributs)
Calcul de
distances
Les items avec
des profils
proches sont
recommandés
Profilage
utilisateur
Interactions
• Calcul de distances entre profils utilisateur-items
(distance cosinus, jaccard (pour 0-1 scores), Pearson, …)
• Recommandation des items les plus proches
Institut Mines-Télécom
• Bob a aimé A et C
─ Vecteur utilisateur :
• Profilage de Bob
─ Vecteur profil :
• Recommandation
─ Distance de Pearson entre 𝑝 et chaque vecteur film/genre (ligne de 𝐼)
─ Recommandation des films dont les distances avec 𝑝 sont les plus proches
21/07/2015 Les systèmes de recommandations16
Approche classique
Horreur Epouvante Action Romance Comédie Animation Sci-Fi Film
d’auteur
A 1 1 1
B 1 1 1
C 1 1 1
D 1 1
E 1 1
Films
Genre
Matrice 𝐼 =
𝑢 = 1 0 1 0 0
𝑝 = 𝑢. 𝐼 = 1 0 2 0 2 1 0 0
Horreur Epouvante Action Romance Comédie Animation Sci-Fi Film
d’auteur
A B C D E
Autres approches
Approche classique : exemple
Approches pour la recommandation basée
sur le contenu
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations17
Approches pour la recommandation basée
sur le contenu
Approche classique
Autres approches
• Passage dans un espace latent de dimensions plus faibles, pour
augmenter la densité de la matrice item-attribut (classification
non-supervisée des items). Calcul de distance utilisateur-item
dans cet espace.
• Réduction de dimension par utilisation d’ontologies pour relier
des attributs dont les concepts sont plus ou moins éloignés (ex:
maths et physiques en sciences). Toujours dans le but
d’augmenter la densité de la matrice item-attribut.
• Modèle d’apprentissage pour chaque utilisateur (réseau de
neurones, arbre de décision, forêt aléatoire, SVM, etc.) pour
prédire si un item va correspondre à l’utilisateur ou non.
Autres approches
Institut Mines-Télécom
Système de recommandation
basé sur le filtrage collaboratif
21/07/2015 Les systèmes de recommandations18
Institut Mines-Télécom
Principe de base de la recommandation par
filtrage collaboratif
21/07/2015 Les systèmes de recommandations19
Interaction utilisateurs
sur items
Matrice d’usage
Similarités entre
les utilisateurs
sim(Alice, Bob) > sim(Chris, Bob)
Recommandation basée sur la similarité des usages entre
utilisateurs
Matrice d’usage
1 1
1 1
0 −1
−1 1
0 −1
1 0
1 0
−1 0
Les recommandations pour un utilisateur
U sont les items qui sont aimés par les
utilisateurs qui lui sont similaires
Institut Mines-Télécom
Approches pour la recommandation par
filtrage collaboratif
21/07/2015 Les systèmes de recommandations20
HP1 HP2 HP3 TW SW1 SW2 SW3
A 4 5 1
B 5 5 4
C 2 4 5
D 3 3
Utilisateurs
Films
HP1 HP2 HP3 TW SW1 SW2 SW3
A 2/3 5/3 -7/3
B 1/3 1/3 -2/3
C -5/3 1/3 4/3
D 0 0
Utilisateurs
Films
A savoir:
Il existe aussi le
filtrage collaboratif
par voisinage item
Approche classique : voisinage utilisateur
Factorisation matricielle
Exemple 1 : filtrage collaboratif par voisinage utilisateur
• Matrice d’usage
• Utilisateur cible 𝐴
• Normalisation par ligne (soustractions de la valeur moyenne)
• Similarités de Pearson
𝑠𝑖𝑚(𝐴, 𝐵) = 0,06 ; 𝑠𝑖𝑚(𝐴, 𝐶) = −0,69 ; 𝑠𝑖𝑚(𝐴, 𝐷) = 0
• Recommandations : 𝑠𝑐𝑜𝑟𝑒 𝐴, 𝑖𝑡𝑒𝑚 =
sim A,u × score u,itemu∈utilisateurs
sim A,uu∈utilisateurs
𝑠𝑐𝑜𝑟𝑒 𝐴, 𝐻𝑃2 = 0,03 ; 𝑠𝑐𝑜𝑟𝑒 𝐴, 𝐻𝑃3 = −0,05 ;
𝑠𝑐𝑜𝑟𝑒(𝐴, 𝑆𝑊2) = −1,23 ; 𝑠𝑐𝑜𝑟𝑒(𝐴, 𝑆𝑊3) = 0
Inconvénients
- Temps de calcul important s’il y
a beaucoup d’utilisateurs/items
- Difficile de trouver des
similarités dans des matrices
d’usage peu dense (ce qui est
généralement le cas)
Clustering
Autres
Institut Mines-Télécom
Approches pour la recommandation par
filtrage collaboratif
21/07/2015 Les systèmes de recommandations21
Approche classique : voisinage utilisateur
Factorisation matricielle
Exemple 2 : filtrage collaboratif par regroupement (clustering)
• Matrice d’usage
• Regroupement des items
• Le score d’un utilisateur pour un item est le score pour son cluster. Exemple :
𝑠𝑐𝑜𝑟𝑒(𝐴, 𝐻𝑃2) = 4
• S’il n’y a aucune valeur (ou 𝑠𝑐𝑜𝑟𝑒 = 0) alors calcul du score basé sur similarité des
utilisateurs (comme exemple précédent) sur la matrice de utilisateurs- clusters
Clustering
Autres
HP1 HP2 HP3 TW SW1 SW2 SW3
A 4 5 1
B 5 5 4
C 2 4 5
D 3 3
Utilisateurs
Films
Le clustering peut se
faire sur les
utilisateurs et/ou
items, et plusieurs fois
si besoin
HP TW SW
A 4 5 1
B 4,67
C 2 4,5
D 3 3
Utilisateurs
Cluster de films
Institut Mines-Télécom
Approches pour la recommandation par
filtrage collaboratif
21/07/2015 Les systèmes de recommandations22
Approche classique : voisinage utilisateur
Factorisation matricielle
Exemple 3: filtrage collaboratif par factorisation matricielle SVD
• Soit une matrice d’usage 𝑀 ∶ 𝑈𝑡𝑖𝑙𝑖𝑠𝑎𝑡𝑒𝑢𝑟𝑠 × 𝐼𝑡𝑒𝑚𝑠
• Factorisation matricielle 𝑆𝑉𝐷 (singular value decomposition)
𝑀 = 𝑈𝑆𝑉 𝑇
• Les 𝑛 premières valeurs singulières de 𝑆 sont gardées et donne une nouvelle matrice
diagonale 𝑆’
• Nouvelle matrice de score selon les valeurs singulières sélectionnées
𝑀’ = 𝑈𝑆′
𝑉 𝑇
• Les items avec les plus grands scores sont recommandés à l’utilisateur
Clustering
Autres
Il existe de nombreux
autres types de
factorisation
matricielle
Institut Mines-Télécom
Approches pour la recommandation par
filtrage collaboratif
21/07/2015 Les systèmes de recommandations23
Approche classique : voisinage utilisateur
Factorisation matricielle
Clustering
Autres
De nombreuses autres approches
• Règles d’association
• Parcours de graphe
• Modèle d’apprentissage
Institut Mines-Télécom
Avantages et inconvénients
des deux approches
21/07/2015 Les systèmes de recommandations24
Institut Mines-Télécom
Avantages et inconvénients des deux
approches
21/07/2015 Les systèmes de recommandations25
SR basé sur le contenu
• Avantages
─ Permet des recommandations de nouveaux items
─ Un nouvel utilisateur peut recevoir des recommandations
dés ses premières interactions avec le système
• Inconvénient
─ Nécessite une quantité importante de descripteurs sur les
items et/ou utilisateurs
Systèmes de recommandations basés sur le contenu
SR basé sur le filtrage collaboratif
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations26
SR basé sur le contenu
• Avantage
─ Pas besoin de descripteurs sur les items/utilisateurs
• Inconvénient
─ Problème de démarrage à froid, pas de recommandations
possibles s’il n’y a pas eu suffisamment d’interactions
utilisateurs/items
Systèmes de recommandations basés sur le filtrage collaboratif
SR basé sur le filtrage collaboratif
Avantages et inconvénients des deux
approches
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations27
SR basé sur le contenu
SR basé sur le filtrage collaboratif
Ces deux approches ne sont pas
disjointes et sont la plupart du temps
combinées
Avantages et inconvénients des deux
approches
Institut Mines-Télécom
Recommandation tenant compte
d’informations additionnelles
21/07/2015 Les systèmes de recommandations28
Institut Mines-Télécom
De nombreuses informations additionnelles
21/07/2015 Les systèmes de recommandations29
Sur utilisateurs/items
Informations additionnelles sur utilisateurs/items
• Informations personnels (âge, métier, genre, …)
• Réseau social
• Tags
• Positions géographiques
• Commentaires, avis textuels
Sur interactions U-I
Institut Mines-Télécom
De nombreuses informations additionnelles
21/07/2015 Les systèmes de recommandations30
Sur utilisateurs/items
Sur interactions U-I
Informations contextuelles associées aux interactions U-I
• Temps (Heure)
• Météo
• Humeur
• Position géographique
Institut Mines-Télécom
De nombreuses informations additionnelles
21/07/2015 Les systèmes de recommandations31
Sur utilisateurs/items
Sur interactions U-I
Vers des systèmes de plus en plus sensibles au
contexte, au temps, aux habitudes, aux
interactions sociales, aux sentiments, …
Institut Mines-Télécom
Approches tenant compte d’informations
additionnelles sur utilisateurs/items
21/07/2015 Les systèmes de recommandations32
Matrice
U-I
Voisinage
utilisateur/item
Informations
additionnelles
utilisateurs
Voisinage
utilisateur
Voisinage
item
Information
additionnelles
items
Recommandations
Approches par voisinages
Voisinages
Modèles à facteurs latents
Modèles d’apprentissage
Graphes
Institut Mines-Télécom
Approches tenant compte d’informations
additionnelles sur utilisateurs/items
21/07/2015 Les systèmes de recommandations33
Voisinages
Modèles à facteurs latents
Modèles d’apprentissage
Graphes
Matrice
U-I
Paramètres
Informations
additionnelles
utilisateurs
Informations
additionnelles
items
Apprentissage d’un
modèle prédictif
basé sur les
paramètres
Paramètres
Paramètres
Recommandations
Approches par modèles d’apprentissage
Institut Mines-Télécom
Approches tenant compte d’informations
additionnelles sur utilisateurs/items
21/07/2015 Les systèmes de recommandations34
Voisinages
Modèles d’apprentissage
Graphes
Approches par modèles à facteurs latents
Modèle prédictif
Matrice
U-I U
Informations
additionnelles
utilisateurs
Informations
additionnelles
items
Recommandations
V
U
P
V
Q
Factorisation de U-I sous contrainte
des informations additionnelles
Modèles à facteurs latents
Institut Mines-Télécom
Approches tenant compte d’informations
additionnelles sur utilisateurs/items
21/07/2015 Les systèmes de recommandations35
Voisinages
Modèles d’apprentissage
Graphes
Approches par graphes
Modèles à facteurs latents
Matrice
U-I
Informations
additionnelles
utilisateurs
Informations
additionnelles
items
Approches par
exploration du
graphe
Recommandations
Graphe incluant
utilisateurs, items,
entités issues des
informations
additionnelles, et
leurs relations
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations36
Approches
Complexité du
modèle
Complexité
spatiale
Complexité
temporelle
Explicabilité
des résultats
Voisinages Moyenne Importante Importante Importante
Modèles Importante Faible Importante Faible
Graphes Faible Moyenne Importante Moyenne
Approches tenant compte d’informations
additionnelles sur utilisateurs/items
Propriétés succinctes des approches
Institut Mines-Télécom
Approches tenant compte d’informations
contextuelles liées aux interactions U-I
21/07/2015 Les systèmes de recommandations37
Dépendantes du temps
« Factorization Machines »
Factorisation tensorielle
Graphes
Méthodes par filtrage collaboratif dépendantes du temps
Méthodes qui favorisent les interactions plus récentes afin
de proposer des recommandations plus en phase avec les
profils courants.
Méthodes très spécifiques à
l’information temporelle, ne sont
pas généralisable aux autres
données contextuelles
Institut Mines-Télécom
Approches tenant compte d’informations
contextuelles liées aux interactions U-I
21/07/2015 Les systèmes de recommandations38
Dépendantes du temps
« Factorization Machines »
Factorisation tensorielle
Graphes
Méthodes par factorisation tensorielle
Matrice
U-I
Informations
contextuelles
liées aux
interactions
Tenseur
Utilisateurs
Items
U
V
Modèle
prédictif
Recommandations
Institut Mines-Télécom
Approches tenant compte d’informations
contextuelles liées aux interactions U-I
21/07/2015 Les systèmes de recommandations39
Dépendantes du temps
« Factorization Machines »
Factorisation tensorielle
Graphes
Méthodes par « Factorization Machines » [Rendle, 2010]
• Est une généralisation des méthodes
à base de factorisation
• Permet de considérer à la fois les
informations de contexte et les
informations en rapport avec
items/utilisateurs
« one-hot encoding »
Où il s’agit de déterminer
Factorization machine de degré 2:
Institut Mines-Télécom
Approches tenant compte d’informations
contextuelles liées aux interactions U-I
21/07/2015 Les systèmes de recommandations40
Dépendantes du temps
« Factorization Machines »
Factorisation tensorielle
Graphes
Méthodes par graphes
Matrice
U-I
Informations
additionnelles
Approches par
exploration du
graphe
Recommandations
Graphe incluant
utilisateurs, items,
entités issues des
informations
additionnelles, et
leurs relations
Permet de considérer à la fois les
informations de contexte et les
informations en rapport avec
items/utilisateurs
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations41
Approches
Complexité du
modèle
Complexité
spatiale
Complexité
temporelle
Explicabilité
des résultats
Tenseurs Importante Faible Importante Faible
Factorization
machines
Importante Faible Importante Faible
Graphes Faible Moyenne Importante Moyenne
Les méthodes FC dépendantes du temps ne sont pas pertinentes dans cette comparaison
elles ne représentent pas un framework général d’utilisation d’information contextuelle pour la recommandation, elles se
limitent à l’utilisation du temps
Propriétés succinctes des approches
Approches tenant compte d’informations
contextuelles liées aux interactions U-I
Institut Mines-Télécom
Quelques contributions
21/07/2015 Les systèmes de recommandations42
Institut Mines-Télécom
Recommandation de lieux pour des réseaux
sociaux géographiques
21/07/2015 Les systèmes de recommandations43
Informations
géographiques
Réseau social
Réseau social de partage de lieux
(Location-Based Social Network)
Réseau social géographique ?
Institut Mines-Télécom
Graph-based approach for location
recommendation in LBSNs using Katz Centrality
21/07/2015 Les systèmes de recommandations44
𝑪 =
𝜶𝑺 𝜷𝑭
𝜷𝑭 𝑻
𝜸𝑮Places
Places
Users
Users
F=
⋯ ⋯ ⋯
⋮ ⋱ ⋮
⋯ ⋯ ⋯Users
Places
Graphe de fréquentation (matrice d’usage)
S=
0 ⋯ ⋯
⋮ ⋱ ⋮
⋯ ⋯ 0Users
Users
Graphe social
Graphe géographique?
Graphe considérant frequentations, social et positions
géographiques (des lieux)
Institut Mines-Télécom
𝑪 =
𝜶𝑺 𝜷𝑭
𝜷𝑭 𝑻
𝜸𝑮Places
Places
Users
Users
21/07/2015 Les systèmes de recommandations45
G =
0 ⋯
⋯ 0
⋯ ⋯ ⋯
⋯ ⋯ ⋯
⋯ ⋯
⋯ ⋯
⋯ ⋯
0 ⋯ ⋯
⋯
⋯
0
⋯
⋯
0
Places
Places
𝑓(𝑥) = 𝑎𝑥 𝑏
𝑓(𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒(𝑃𝑙𝑎𝑐𝑒𝑖, 𝑃𝑙𝑎𝑐𝑒𝑗))
Global distribution of all users visits
according to the mutual distances
Low distances between places gives
high values in G, and inverselyScores are computed according to
the distances between places
Graph-based approach for location
recommendation in LBSNs using Katz Centrality
Graphe géographique
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations46
𝐾𝑎𝑡𝑧 𝐶 = 𝛽𝐶 + 𝛽2
𝐶2
+ 𝛽3
𝐶3
+ ⋯
converge pour 0 ≤ 𝛽 <
1
max( 𝜆 𝐶 )
max( 𝜆 𝐶 ) est la plus grande valeur propre de 𝐶 (appelé rayon spectral)
𝐾𝑎𝑡𝑧(𝐶) = ⋯ 𝐹′
⋯ ⋯
Matrice des scores de prédiction
après propagation de Katz
Users
Users
Places
Places
Complexité algorithmique:
𝑂 𝑁 𝑢 × 𝑛𝑛𝑧 , avec 𝑁 𝑢, le nombre de
d’utilisateurs et 𝑛𝑛𝑧, le nombre de
« non-zero » dans 𝐹𝐹 𝑇 𝑘
𝐾𝑎𝑡𝑧 𝐶 12 = 𝛽 𝐹 + 𝛽2
𝑆𝐹 + 𝐹𝐺
+ 𝛽3
𝑆2
𝐹 + 𝐹𝐹 𝑇
𝐹 + 𝑆𝐹𝐺 + 𝐹𝐺2
+ ⋯
Graph-based approach for location
recommendation in LBSNs using Katz Centrality
Centralité de Katz [Katz, 1953]
Permet d’identifier des relations
distantes entre des nœuds d’un
graphe
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations47
𝐾𝑎𝑡𝑧 𝐶 12 = 𝛽 𝐹 + 𝛽2
𝑆𝐹 + 𝐹𝐺
+ 𝛽3
𝑆2
𝐹 + 𝐹𝐹 𝑇
𝐹 + 𝑆𝐹𝐺 + 𝐹𝐺2
+ ⋯
Places visited by friends
Places close to the
visited places
Places visited by friends
of friends
Places visited by users
that have visited the
same places
Places close to places
visited by friends
Places close to places
close to the visited
places
Graph-based approach for location
recommendation in LBSNs using Katz Centrality
Les chemins considérés dans 𝑲𝒂𝒕𝒛 𝑪 𝟏𝟐
Institut Mines-Télécom
Context and social based recommender
system using association rules
21/07/2015 Les systèmes de recommandations48
DB History
Learning part
Offline
Recommendation part
Online
Association rules
mining
All users' past
visiting sessions
Rules selection
DB
Association
Rules
Rules scoringItems selection
- visiting session
- position
- desired TOR
- friends
Profile
selected rules
with scores
recommendations
Recommandation contextuelle et sociale de lieux qui dépend du type de
recommandation désiré par l’utilisateur
• Contexte :
─ Session de visites
─ Position courante
─ Type de recommandation
désiré (veut-il des
recommandations évidentes
? surprenantes ? rares ?
populaires ?)
• Visites passées des amis
Institut Mines-Télécom
Context and social based recommender
system using association rules
21/07/2015 Les systèmes de recommandations49
Partie hors-ligne, apprentissage
de règles d’association
Learning part
Recommendation part
• Transaction : session de visites
(ensemble de lieux)
• Extraction de toutes les règles
d’association
Institut Mines-Télécom
Context and social based recommender
system using association rules
21/07/2015 Les systèmes de recommandations50
Partie en-ligne, temps-réelle,
moteur de recommandation
Learning part
Recommendation part
• Sélection de règles
correspondantes à la session de
visites de l’utilisateur
• Calcul de scores de pertinences
pour chaque règles sélectionnées
selon une mesure de pertinence
• Pondération et sélection des
items à recommander
𝑀 𝑝 𝑟𝑖 = 𝑀𝑔 𝑟𝑖 𝛼𝑀𝑖 𝑟𝑖 + 1 − 𝛼 𝑀𝑠 𝑟𝑖
• 𝑴𝒊 dépend du type de recommandation désiré:
Confiance, Surprise, Rareté, Popularité
• 𝑴 𝐠 dépend de la position géographique courante de
l’utilisateur. Elle met en avant les règles dont le lieu
conséquent n’est pas trop éloigné de l’utilisateur.
• 𝑴 𝐬 dépend des visites des utilisateurs amis. Elle met en
avant les règles qui se sont vérifiées souvent chez les
amis de l’utilisateur courant.
Institut Mines-Télécom
Evaluation de la qualité des
recommandations
21/07/2015 Les systèmes de recommandations51
Institut Mines-Télécom21/07/2015 Les systèmes de recommandations52
Hors ligne
Evaluation hors ligne
• Jeux d’apprentissage et de test
─ Pas de convention pour définir ces jeux
• Algorithme de recommandation sur jeu d’apprentissage
• Matrice de score prédis ou k-recommandations
• Mesures de qualité
─ RMSE entre scores prédis et scores réels
─ Rappel, Précision, F1-Score, ROC
En ligne
Problème
Chercher à « améliorer la prédiction des
futures scores/actions des utilisateurs »,
diffère de « améliorer la qualité des
recommandations »
Evaluation de la qualité des recommandations
Institut Mines-Télécom
Evaluation de la qualité des recommandations
21/07/2015 Les systèmes de recommandations53
Hors ligne
Evaluation en ligne
• A/B testing
─ Test de recommandations différentes sur un groupe A et un groupe B
d’individus
─ Validation méthode dont les recommandations ont amélioré une fonction
objectif (augmentation du nombre d’achat, du bénéfice, du temps passé par
les utilisateurs sur les pages, satisfaction des utilisateur, etc.)
En ligne
Problème
Très couteux à mettre en place
Institut Mines-Télécom
Quelques perspectives du
domaine
Quelles pistes pour améliorer les
recommandations ?
21/07/2015 Les systèmes de recommandations54
Institut Mines-Télécom
Quelques perspectives du domaine
o Social
• Identification d’utilisateurs plus enclins à la recommandation sociale
• Quelle est la nature exacte de la corrélation entre les intérêts utilisateurs et les relations sociales ?
Quel impact sur les recommandations ?
• Recommandation considérant les relations sociales négatives
o Recommandation pour un groupe
• Etude de la structure/dynamique d’un groupe pour la recommandation (qui est le chef ? qui est
influençable ? comment se propage l’information ?)
o Recommandations interactives
• Profilage interactif de l’utilisateur par des questions/propositions explicites
o Profilage plus précis par analyse textuelle
o Intégration des interactions textuelles, analyse de sentiments
o Acquisition et intégration des tendances relatives aux habitudes
o Méthodes à apprentissage profond, deep learning
o Formalisation des conditions d’évaluation des systèmes de
recommandation selon les caractéristiques du jeu de données et les
objectifs de recommandation
o Recommandation combinatoire (cf. ma thèse)
o Est-ce que les recommandations fournies par mon modèle tendent à
uniformiser les profils des utilisateurs ? Quelle est sa convergence ?
o Plus généralement : systèmes de recommandation sensibles au temps
(TARS) et sensibles au contexte (CARS)
21/07/2015 Les systèmes de recommandations55
Institut Mines-Télécom
Conclusion
21/07/2015 Les systèmes de recommandations56
Institut Mines-Télécom
Conclusion
o Un système de recommandation demande un(e):
• Analyse/modélisation des interactions, comportements
• Analyse/profilage des utilisateurs, items
• Méthode/algorithme de recommandation basé sur ces analyses/modèles et
dépendante des contraintes, objectifs de recommandation
• Méthode d’évaluation détaillée, comparaison avec d’autres méthodes dans les
mêmes conditions
o De nombreuses pistes à développer dans le domaine
21/07/2015 Les systèmes de recommandations57

Contenu connexe

Tendances

Systèmes de recommandation: applications en bibliothèque, archives et documen...
Systèmes de recommandation: applications en bibliothèque, archives et documen...Systèmes de recommandation: applications en bibliothèque, archives et documen...
Systèmes de recommandation: applications en bibliothèque, archives et documen...Ecole hôtelière de Lausanne - EHL
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigFelipe Sanchez Garzon
 
Présentation sur le Data Mining
Présentation sur le Data MiningPrésentation sur le Data Mining
Présentation sur le Data MiningTakfarinas KENOUCHE
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2Amal Abid
 
BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : SparkLilia Sfaxi
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data miningDonia Hammami
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopLilia Sfaxi
 
Data mining - Introduction générale
Data mining - Introduction généraleData mining - Introduction générale
Data mining - Introduction généraleMohamed Heny SELMI
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheMohamed Heny SELMI
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceLilia Sfaxi
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisinsBoris Guarisma
 
Cours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkCours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkAmal Abid
 
Cours Big Data Chap5
Cours Big Data Chap5Cours Big Data Chap5
Cours Big Data Chap5Amal Abid
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning Niji
 
Etat de l’art approche et outils BI
Etat de l’art approche et outils BIEtat de l’art approche et outils BI
Etat de l’art approche et outils BISaid Sadik
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataLilia Sfaxi
 

Tendances (20)

Systèmes de recommandation: applications en bibliothèque, archives et documen...
Systèmes de recommandation: applications en bibliothèque, archives et documen...Systèmes de recommandation: applications en bibliothèque, archives et documen...
Systèmes de recommandation: applications en bibliothèque, archives et documen...
 
AI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine LearnigAI Apprentissage Automatique, Machine Learnig
AI Apprentissage Automatique, Machine Learnig
 
Présentation sur le Data Mining
Présentation sur le Data MiningPrésentation sur le Data Mining
Présentation sur le Data Mining
 
Cours Big Data Chap2
Cours Big Data Chap2Cours Big Data Chap2
Cours Big Data Chap2
 
BigData_TP3 : Spark
BigData_TP3 : SparkBigData_TP3 : Spark
BigData_TP3 : Spark
 
Techniques du data mining
Techniques du data miningTechniques du data mining
Techniques du data mining
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 
Base des données réparties
Base des données répartiesBase des données réparties
Base des données réparties
 
Data mining - Introduction générale
Data mining - Introduction généraleData mining - Introduction générale
Data mining - Introduction générale
 
Technologies pour le Big Data
Technologies pour le Big DataTechnologies pour le Big Data
Technologies pour le Big Data
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de recherche
 
BigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-ReduceBigData_Chp2: Hadoop & Map-Reduce
BigData_Chp2: Hadoop & Map-Reduce
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisins
 
Cours Big Data Chap4 - Spark
Cours Big Data Chap4 - SparkCours Big Data Chap4 - Spark
Cours Big Data Chap4 - Spark
 
clustering
clusteringclustering
clustering
 
Cours Big Data Chap5
Cours Big Data Chap5Cours Big Data Chap5
Cours Big Data Chap5
 
Introduction au Deep Learning
Introduction au Deep Learning Introduction au Deep Learning
Introduction au Deep Learning
 
Etat de l’art approche et outils BI
Etat de l’art approche et outils BIEtat de l’art approche et outils BI
Etat de l’art approche et outils BI
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big Data
 

Similaire à Les systèmes de recommandations

Cross-domain recommandation system for flights and hotels
Cross-domain recommandation system for flights and hotelsCross-domain recommandation system for flights and hotels
Cross-domain recommandation system for flights and hotelsNora Diouri
 
PFC L3 2018.pptx
PFC L3 2018.pptxPFC L3 2018.pptx
PFC L3 2018.pptxNAbderrahim
 
Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...
Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...
Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...Bilel Moulahi
 
IODS : Retour d’expériences au sein du Center for Data Science
IODS : Retour d’expériences au sein du Center for Data ScienceIODS : Retour d’expériences au sein du Center for Data Science
IODS : Retour d’expériences au sein du Center for Data ScienceBorderCloud
 
Recommander des films - Andreea - Fullstack Lyon #1
Recommander des films - Andreea - Fullstack Lyon #1Recommander des films - Andreea - Fullstack Lyon #1
Recommander des films - Andreea - Fullstack Lyon #1Jedha Bootcamp
 
Introduction au Machine Learning
Introduction au Machine Learning Introduction au Machine Learning
Introduction au Machine Learning Novagen Conseil
 
Movie Recommendation system
Movie Recommendation systemMovie Recommendation system
Movie Recommendation systemSakher BELOUADAH
 
Dicen Tagging Mars2010
Dicen Tagging Mars2010Dicen Tagging Mars2010
Dicen Tagging Mars2010Freddy Limpens
 
Main recsys factorisation
Main recsys factorisationMain recsys factorisation
Main recsys factorisationStéphane Canu
 
Les tests utilisateurs pour les petits budgets
Les tests utilisateurs pour les petits budgetsLes tests utilisateurs pour les petits budgets
Les tests utilisateurs pour les petits budgetsL_Demontiers
 
ENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT ChicagoENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT ChicagoArnaud Lempereur
 
Introduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal LyonIntroduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal LyonOlivier Lorrain
 
L'analyse qualitative informatique pas cher
L'analyse qualitative informatique pas cherL'analyse qualitative informatique pas cher
L'analyse qualitative informatique pas cherHubert Maisonneuve
 
UX Design - Soutenance 2016 Marie Glandus
UX Design - Soutenance 2016 Marie GlandusUX Design - Soutenance 2016 Marie Glandus
UX Design - Soutenance 2016 Marie GlandusMarie Glandus
 
1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdfWafaNeji1
 
Social network metrics and trust based recommendation
Social network metrics and trust based recommendationSocial network metrics and trust based recommendation
Social network metrics and trust based recommendationJimmy Siméon
 
Cm internet 2010 2011_rennes2 v2
Cm internet 2010 2011_rennes2 v2Cm internet 2010 2011_rennes2 v2
Cm internet 2010 2011_rennes2 v2BELVEZE Damien
 

Similaire à Les systèmes de recommandations (20)

presentationdecide.pptx
presentationdecide.pptxpresentationdecide.pptx
presentationdecide.pptx
 
Cross-domain recommandation system for flights and hotels
Cross-domain recommandation system for flights and hotelsCross-domain recommandation system for flights and hotels
Cross-domain recommandation system for flights and hotels
 
PFC L3 2018.pptx
PFC L3 2018.pptxPFC L3 2018.pptx
PFC L3 2018.pptx
 
Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...
Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...
Définition et évaluation de modèles d'agrégation pour l'estimation de la pert...
 
IODS : Retour d’expériences au sein du Center for Data Science
IODS : Retour d’expériences au sein du Center for Data ScienceIODS : Retour d’expériences au sein du Center for Data Science
IODS : Retour d’expériences au sein du Center for Data Science
 
Recommander des films - Andreea - Fullstack Lyon #1
Recommander des films - Andreea - Fullstack Lyon #1Recommander des films - Andreea - Fullstack Lyon #1
Recommander des films - Andreea - Fullstack Lyon #1
 
Introduction au Machine Learning
Introduction au Machine Learning Introduction au Machine Learning
Introduction au Machine Learning
 
Movie Recommendation system
Movie Recommendation systemMovie Recommendation system
Movie Recommendation system
 
Dicen Tagging Mars2010
Dicen Tagging Mars2010Dicen Tagging Mars2010
Dicen Tagging Mars2010
 
Main recsys factorisation
Main recsys factorisationMain recsys factorisation
Main recsys factorisation
 
Les tests utilisateurs pour les petits budgets
Les tests utilisateurs pour les petits budgetsLes tests utilisateurs pour les petits budgets
Les tests utilisateurs pour les petits budgets
 
ENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT ChicagoENSEIRB - Stage 3A @IIT Chicago
ENSEIRB - Stage 3A @IIT Chicago
 
Introduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal LyonIntroduction à l'ergonomie - Drupal Lyon
Introduction à l'ergonomie - Drupal Lyon
 
Extreme Data Science
Extreme Data ScienceExtreme Data Science
Extreme Data Science
 
L'analyse qualitative informatique pas cher
L'analyse qualitative informatique pas cherL'analyse qualitative informatique pas cher
L'analyse qualitative informatique pas cher
 
UX Design - Soutenance 2016 Marie Glandus
UX Design - Soutenance 2016 Marie GlandusUX Design - Soutenance 2016 Marie Glandus
UX Design - Soutenance 2016 Marie Glandus
 
CM patterns
CM patternsCM patterns
CM patterns
 
1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf1bis_ProcessusUnifie.pdf
1bis_ProcessusUnifie.pdf
 
Social network metrics and trust based recommendation
Social network metrics and trust based recommendationSocial network metrics and trust based recommendation
Social network metrics and trust based recommendation
 
Cm internet 2010 2011_rennes2 v2
Cm internet 2010 2011_rennes2 v2Cm internet 2010 2011_rennes2 v2
Cm internet 2010 2011_rennes2 v2
 

Les systèmes de recommandations

  • 1. Institut Mines-Télécom Les systèmes de recommandations Romain Picot-Clémente
  • 3. Institut Mines-Télécom Origines • Personnalisation de la présentation (feuille de style, disposition des éléments, etc.) • Personnalisation de la navigation (modification du graphe hypermédia) • Personnalisation du contenu (modification de la complexité du contenu selon contexte, profil, etc.) 21/07/2015 Les systèmes de recommandations - Introduction3 Systèmes hypermédia adaptatifs Systèmes de recommandations Systèmes hypermédia adaptatifs (Brusilovsky et al., 1996) Introduit initialement pour le e-learning
  • 4. Institut Mines-Télécom Origines Personnalisation de la navigation (modification du graphe hypermédia) 21/07/2015 Les systèmes de recommandations - Introduction4 Systèmes hypermédia adaptatifs Systèmes de recommandations Systèmes de recommandations
  • 5. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations - Introduction5 Pour l’utilisateur Pour le fournisseur Intérêt utilisateur Systèmes de recommandations : A quoi ça sert ? • Réduire le temps de recherche d’information • Découvrir des produits difficiles à trouver • … 𝐴𝑚é𝑙𝑖𝑜𝑟𝑒𝑟 𝑙′ 𝑒𝑥𝑝é𝑟𝑖𝑒𝑛𝑐𝑒 𝑢𝑡𝑖𝑙𝑖𝑠𝑎𝑡𝑒𝑢𝑟
  • 6. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations - Introduction6 Pour l’utilisateur Pour le fournisseur Intérêt pour fournisseur du service Systèmes de recommandations : A quoi ça sert ? • Garder/engager/fidéliser les clients • Orienter les clients • Augmenter les bénéfices • …
  • 7. Institut Mines-Télécom Applications 21/07/2015 Les systèmes de recommandations - Introduction7 Exemples de domaines d’application • Films (Netflix, Allocine, …) • Musiques (Deezer, …) • Jeux vidéo (Steam, Microsoft Xbox Live, ...) • Livres (Amazon, Fnac, …) • « Amis » (Facebook, Twitter, Google+, …) • Tourisme (Expedia, …) • e-Shopping (Cdiscount, eBay, Amazon, Fnac, …) • Publicité ciblée (Criteo, …) • Nutrition/sport/bien-être (Withings, Fitnext, …) • Médical • …
  • 8. Institut Mines-Télécom Définitions, types de systèmes de recommandation 21/07/2015 Les systèmes de recommandations8
  • 9. Institut Mines-Télécom • Utilisateurs : individus cibles de la recommandation • Items : ensemble des éléments possiblement recommandables aux utilisateurs Items, utilisateurs, matrice d’usage 21/07/2015 Les systèmes de recommandations9 Deux classes d’entités Matrice d’usage Items et utilisateurs
  • 10. Institut Mines-Télécom Items, utilisateurs, matrice d’usage 21/07/2015 Les systèmes de recommandations10 Deux classes d’entités Matrice d’usage Matrice d’usage : relie utilisateurs et items par une matrice de score HP1 HP2 HP3 TW SW1 SW2 SW3 A 4 5 1 B 5 5 4 C 2 4 5 D 3 3 Valeur inconnue Utilisateurs Items Le score peut représenter différents types d’interaction : une note, un nombre d’utilisation, une durée, un « like », etc.
  • 11. Institut Mines-Télécom Deux grands groupes de systèmes de recommandations 21/07/2015 Les systèmes de recommandations11 Basé sur la similarité du profil de l’utilisateur avec le profil des items Basé sur le contenu (content-based) Filtrage collaboratif (collaborative filtering) Systèmes de recommandations basés sur le contenu
  • 12. Institut Mines-Télécom Deux grands groupes de systèmes de recommandations 21/07/2015 Les systèmes de recommandations12 Basé sur la similarité de comportement (achats, visites, clics, notes, etc.) entre les utilisateurs Basé sur le contenu (content-based) Filtrage collaboratif (collaborative filtering) Systèmes de recommandations par filtrage collaboratif
  • 13. Institut Mines-Télécom Systèmes de recommandations basés sur le contenu 21/07/2015 Les systèmes de recommandations13
  • 14. Institut Mines-Télécom Principe général de la recommandation basée sur le contenu 21/07/2015 Les systèmes de recommandations14 Profilage items et utilisateur Recommandation par distance • Profil items : vecteur de scores sur des attributs/descripteurs • Profilage utilisateurs : ─ Implicite (selon les interactions avec les items) ─ Explicite (question directe) Utilisateur Profil utilisateur (vecteur d’attributs) Items Profilage items Profils items (vecteurs d’attributs) Profilage utilisateur Interactions Faire attention aux échelles entres attributs
  • 15. Institut Mines-Télécom Principe général de la recommandation basée sur le contenu 21/07/2015 Les systèmes de recommandations15 Profilage items et utilisateur Recommandation par distance Utilisateur Profil utilisateur (vecteur d’attributs) Items Profilage items Profils items (vecteurs d’attributs) Calcul de distances Les items avec des profils proches sont recommandés Profilage utilisateur Interactions • Calcul de distances entre profils utilisateur-items (distance cosinus, jaccard (pour 0-1 scores), Pearson, …) • Recommandation des items les plus proches
  • 16. Institut Mines-Télécom • Bob a aimé A et C ─ Vecteur utilisateur : • Profilage de Bob ─ Vecteur profil : • Recommandation ─ Distance de Pearson entre 𝑝 et chaque vecteur film/genre (ligne de 𝐼) ─ Recommandation des films dont les distances avec 𝑝 sont les plus proches 21/07/2015 Les systèmes de recommandations16 Approche classique Horreur Epouvante Action Romance Comédie Animation Sci-Fi Film d’auteur A 1 1 1 B 1 1 1 C 1 1 1 D 1 1 E 1 1 Films Genre Matrice 𝐼 = 𝑢 = 1 0 1 0 0 𝑝 = 𝑢. 𝐼 = 1 0 2 0 2 1 0 0 Horreur Epouvante Action Romance Comédie Animation Sci-Fi Film d’auteur A B C D E Autres approches Approche classique : exemple Approches pour la recommandation basée sur le contenu
  • 17. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations17 Approches pour la recommandation basée sur le contenu Approche classique Autres approches • Passage dans un espace latent de dimensions plus faibles, pour augmenter la densité de la matrice item-attribut (classification non-supervisée des items). Calcul de distance utilisateur-item dans cet espace. • Réduction de dimension par utilisation d’ontologies pour relier des attributs dont les concepts sont plus ou moins éloignés (ex: maths et physiques en sciences). Toujours dans le but d’augmenter la densité de la matrice item-attribut. • Modèle d’apprentissage pour chaque utilisateur (réseau de neurones, arbre de décision, forêt aléatoire, SVM, etc.) pour prédire si un item va correspondre à l’utilisateur ou non. Autres approches
  • 18. Institut Mines-Télécom Système de recommandation basé sur le filtrage collaboratif 21/07/2015 Les systèmes de recommandations18
  • 19. Institut Mines-Télécom Principe de base de la recommandation par filtrage collaboratif 21/07/2015 Les systèmes de recommandations19 Interaction utilisateurs sur items Matrice d’usage Similarités entre les utilisateurs sim(Alice, Bob) > sim(Chris, Bob) Recommandation basée sur la similarité des usages entre utilisateurs Matrice d’usage 1 1 1 1 0 −1 −1 1 0 −1 1 0 1 0 −1 0 Les recommandations pour un utilisateur U sont les items qui sont aimés par les utilisateurs qui lui sont similaires
  • 20. Institut Mines-Télécom Approches pour la recommandation par filtrage collaboratif 21/07/2015 Les systèmes de recommandations20 HP1 HP2 HP3 TW SW1 SW2 SW3 A 4 5 1 B 5 5 4 C 2 4 5 D 3 3 Utilisateurs Films HP1 HP2 HP3 TW SW1 SW2 SW3 A 2/3 5/3 -7/3 B 1/3 1/3 -2/3 C -5/3 1/3 4/3 D 0 0 Utilisateurs Films A savoir: Il existe aussi le filtrage collaboratif par voisinage item Approche classique : voisinage utilisateur Factorisation matricielle Exemple 1 : filtrage collaboratif par voisinage utilisateur • Matrice d’usage • Utilisateur cible 𝐴 • Normalisation par ligne (soustractions de la valeur moyenne) • Similarités de Pearson 𝑠𝑖𝑚(𝐴, 𝐵) = 0,06 ; 𝑠𝑖𝑚(𝐴, 𝐶) = −0,69 ; 𝑠𝑖𝑚(𝐴, 𝐷) = 0 • Recommandations : 𝑠𝑐𝑜𝑟𝑒 𝐴, 𝑖𝑡𝑒𝑚 = sim A,u × score u,itemu∈utilisateurs sim A,uu∈utilisateurs 𝑠𝑐𝑜𝑟𝑒 𝐴, 𝐻𝑃2 = 0,03 ; 𝑠𝑐𝑜𝑟𝑒 𝐴, 𝐻𝑃3 = −0,05 ; 𝑠𝑐𝑜𝑟𝑒(𝐴, 𝑆𝑊2) = −1,23 ; 𝑠𝑐𝑜𝑟𝑒(𝐴, 𝑆𝑊3) = 0 Inconvénients - Temps de calcul important s’il y a beaucoup d’utilisateurs/items - Difficile de trouver des similarités dans des matrices d’usage peu dense (ce qui est généralement le cas) Clustering Autres
  • 21. Institut Mines-Télécom Approches pour la recommandation par filtrage collaboratif 21/07/2015 Les systèmes de recommandations21 Approche classique : voisinage utilisateur Factorisation matricielle Exemple 2 : filtrage collaboratif par regroupement (clustering) • Matrice d’usage • Regroupement des items • Le score d’un utilisateur pour un item est le score pour son cluster. Exemple : 𝑠𝑐𝑜𝑟𝑒(𝐴, 𝐻𝑃2) = 4 • S’il n’y a aucune valeur (ou 𝑠𝑐𝑜𝑟𝑒 = 0) alors calcul du score basé sur similarité des utilisateurs (comme exemple précédent) sur la matrice de utilisateurs- clusters Clustering Autres HP1 HP2 HP3 TW SW1 SW2 SW3 A 4 5 1 B 5 5 4 C 2 4 5 D 3 3 Utilisateurs Films Le clustering peut se faire sur les utilisateurs et/ou items, et plusieurs fois si besoin HP TW SW A 4 5 1 B 4,67 C 2 4,5 D 3 3 Utilisateurs Cluster de films
  • 22. Institut Mines-Télécom Approches pour la recommandation par filtrage collaboratif 21/07/2015 Les systèmes de recommandations22 Approche classique : voisinage utilisateur Factorisation matricielle Exemple 3: filtrage collaboratif par factorisation matricielle SVD • Soit une matrice d’usage 𝑀 ∶ 𝑈𝑡𝑖𝑙𝑖𝑠𝑎𝑡𝑒𝑢𝑟𝑠 × 𝐼𝑡𝑒𝑚𝑠 • Factorisation matricielle 𝑆𝑉𝐷 (singular value decomposition) 𝑀 = 𝑈𝑆𝑉 𝑇 • Les 𝑛 premières valeurs singulières de 𝑆 sont gardées et donne une nouvelle matrice diagonale 𝑆’ • Nouvelle matrice de score selon les valeurs singulières sélectionnées 𝑀’ = 𝑈𝑆′ 𝑉 𝑇 • Les items avec les plus grands scores sont recommandés à l’utilisateur Clustering Autres Il existe de nombreux autres types de factorisation matricielle
  • 23. Institut Mines-Télécom Approches pour la recommandation par filtrage collaboratif 21/07/2015 Les systèmes de recommandations23 Approche classique : voisinage utilisateur Factorisation matricielle Clustering Autres De nombreuses autres approches • Règles d’association • Parcours de graphe • Modèle d’apprentissage
  • 24. Institut Mines-Télécom Avantages et inconvénients des deux approches 21/07/2015 Les systèmes de recommandations24
  • 25. Institut Mines-Télécom Avantages et inconvénients des deux approches 21/07/2015 Les systèmes de recommandations25 SR basé sur le contenu • Avantages ─ Permet des recommandations de nouveaux items ─ Un nouvel utilisateur peut recevoir des recommandations dés ses premières interactions avec le système • Inconvénient ─ Nécessite une quantité importante de descripteurs sur les items et/ou utilisateurs Systèmes de recommandations basés sur le contenu SR basé sur le filtrage collaboratif
  • 26. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations26 SR basé sur le contenu • Avantage ─ Pas besoin de descripteurs sur les items/utilisateurs • Inconvénient ─ Problème de démarrage à froid, pas de recommandations possibles s’il n’y a pas eu suffisamment d’interactions utilisateurs/items Systèmes de recommandations basés sur le filtrage collaboratif SR basé sur le filtrage collaboratif Avantages et inconvénients des deux approches
  • 27. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations27 SR basé sur le contenu SR basé sur le filtrage collaboratif Ces deux approches ne sont pas disjointes et sont la plupart du temps combinées Avantages et inconvénients des deux approches
  • 28. Institut Mines-Télécom Recommandation tenant compte d’informations additionnelles 21/07/2015 Les systèmes de recommandations28
  • 29. Institut Mines-Télécom De nombreuses informations additionnelles 21/07/2015 Les systèmes de recommandations29 Sur utilisateurs/items Informations additionnelles sur utilisateurs/items • Informations personnels (âge, métier, genre, …) • Réseau social • Tags • Positions géographiques • Commentaires, avis textuels Sur interactions U-I
  • 30. Institut Mines-Télécom De nombreuses informations additionnelles 21/07/2015 Les systèmes de recommandations30 Sur utilisateurs/items Sur interactions U-I Informations contextuelles associées aux interactions U-I • Temps (Heure) • Météo • Humeur • Position géographique
  • 31. Institut Mines-Télécom De nombreuses informations additionnelles 21/07/2015 Les systèmes de recommandations31 Sur utilisateurs/items Sur interactions U-I Vers des systèmes de plus en plus sensibles au contexte, au temps, aux habitudes, aux interactions sociales, aux sentiments, …
  • 32. Institut Mines-Télécom Approches tenant compte d’informations additionnelles sur utilisateurs/items 21/07/2015 Les systèmes de recommandations32 Matrice U-I Voisinage utilisateur/item Informations additionnelles utilisateurs Voisinage utilisateur Voisinage item Information additionnelles items Recommandations Approches par voisinages Voisinages Modèles à facteurs latents Modèles d’apprentissage Graphes
  • 33. Institut Mines-Télécom Approches tenant compte d’informations additionnelles sur utilisateurs/items 21/07/2015 Les systèmes de recommandations33 Voisinages Modèles à facteurs latents Modèles d’apprentissage Graphes Matrice U-I Paramètres Informations additionnelles utilisateurs Informations additionnelles items Apprentissage d’un modèle prédictif basé sur les paramètres Paramètres Paramètres Recommandations Approches par modèles d’apprentissage
  • 34. Institut Mines-Télécom Approches tenant compte d’informations additionnelles sur utilisateurs/items 21/07/2015 Les systèmes de recommandations34 Voisinages Modèles d’apprentissage Graphes Approches par modèles à facteurs latents Modèle prédictif Matrice U-I U Informations additionnelles utilisateurs Informations additionnelles items Recommandations V U P V Q Factorisation de U-I sous contrainte des informations additionnelles Modèles à facteurs latents
  • 35. Institut Mines-Télécom Approches tenant compte d’informations additionnelles sur utilisateurs/items 21/07/2015 Les systèmes de recommandations35 Voisinages Modèles d’apprentissage Graphes Approches par graphes Modèles à facteurs latents Matrice U-I Informations additionnelles utilisateurs Informations additionnelles items Approches par exploration du graphe Recommandations Graphe incluant utilisateurs, items, entités issues des informations additionnelles, et leurs relations
  • 36. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations36 Approches Complexité du modèle Complexité spatiale Complexité temporelle Explicabilité des résultats Voisinages Moyenne Importante Importante Importante Modèles Importante Faible Importante Faible Graphes Faible Moyenne Importante Moyenne Approches tenant compte d’informations additionnelles sur utilisateurs/items Propriétés succinctes des approches
  • 37. Institut Mines-Télécom Approches tenant compte d’informations contextuelles liées aux interactions U-I 21/07/2015 Les systèmes de recommandations37 Dépendantes du temps « Factorization Machines » Factorisation tensorielle Graphes Méthodes par filtrage collaboratif dépendantes du temps Méthodes qui favorisent les interactions plus récentes afin de proposer des recommandations plus en phase avec les profils courants. Méthodes très spécifiques à l’information temporelle, ne sont pas généralisable aux autres données contextuelles
  • 38. Institut Mines-Télécom Approches tenant compte d’informations contextuelles liées aux interactions U-I 21/07/2015 Les systèmes de recommandations38 Dépendantes du temps « Factorization Machines » Factorisation tensorielle Graphes Méthodes par factorisation tensorielle Matrice U-I Informations contextuelles liées aux interactions Tenseur Utilisateurs Items U V Modèle prédictif Recommandations
  • 39. Institut Mines-Télécom Approches tenant compte d’informations contextuelles liées aux interactions U-I 21/07/2015 Les systèmes de recommandations39 Dépendantes du temps « Factorization Machines » Factorisation tensorielle Graphes Méthodes par « Factorization Machines » [Rendle, 2010] • Est une généralisation des méthodes à base de factorisation • Permet de considérer à la fois les informations de contexte et les informations en rapport avec items/utilisateurs « one-hot encoding » Où il s’agit de déterminer Factorization machine de degré 2:
  • 40. Institut Mines-Télécom Approches tenant compte d’informations contextuelles liées aux interactions U-I 21/07/2015 Les systèmes de recommandations40 Dépendantes du temps « Factorization Machines » Factorisation tensorielle Graphes Méthodes par graphes Matrice U-I Informations additionnelles Approches par exploration du graphe Recommandations Graphe incluant utilisateurs, items, entités issues des informations additionnelles, et leurs relations Permet de considérer à la fois les informations de contexte et les informations en rapport avec items/utilisateurs
  • 41. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations41 Approches Complexité du modèle Complexité spatiale Complexité temporelle Explicabilité des résultats Tenseurs Importante Faible Importante Faible Factorization machines Importante Faible Importante Faible Graphes Faible Moyenne Importante Moyenne Les méthodes FC dépendantes du temps ne sont pas pertinentes dans cette comparaison elles ne représentent pas un framework général d’utilisation d’information contextuelle pour la recommandation, elles se limitent à l’utilisation du temps Propriétés succinctes des approches Approches tenant compte d’informations contextuelles liées aux interactions U-I
  • 43. Institut Mines-Télécom Recommandation de lieux pour des réseaux sociaux géographiques 21/07/2015 Les systèmes de recommandations43 Informations géographiques Réseau social Réseau social de partage de lieux (Location-Based Social Network) Réseau social géographique ?
  • 44. Institut Mines-Télécom Graph-based approach for location recommendation in LBSNs using Katz Centrality 21/07/2015 Les systèmes de recommandations44 𝑪 = 𝜶𝑺 𝜷𝑭 𝜷𝑭 𝑻 𝜸𝑮Places Places Users Users F= ⋯ ⋯ ⋯ ⋮ ⋱ ⋮ ⋯ ⋯ ⋯Users Places Graphe de fréquentation (matrice d’usage) S= 0 ⋯ ⋯ ⋮ ⋱ ⋮ ⋯ ⋯ 0Users Users Graphe social Graphe géographique? Graphe considérant frequentations, social et positions géographiques (des lieux)
  • 45. Institut Mines-Télécom 𝑪 = 𝜶𝑺 𝜷𝑭 𝜷𝑭 𝑻 𝜸𝑮Places Places Users Users 21/07/2015 Les systèmes de recommandations45 G = 0 ⋯ ⋯ 0 ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ 0 ⋯ ⋯ ⋯ ⋯ 0 ⋯ ⋯ 0 Places Places 𝑓(𝑥) = 𝑎𝑥 𝑏 𝑓(𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒(𝑃𝑙𝑎𝑐𝑒𝑖, 𝑃𝑙𝑎𝑐𝑒𝑗)) Global distribution of all users visits according to the mutual distances Low distances between places gives high values in G, and inverselyScores are computed according to the distances between places Graph-based approach for location recommendation in LBSNs using Katz Centrality Graphe géographique
  • 46. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations46 𝐾𝑎𝑡𝑧 𝐶 = 𝛽𝐶 + 𝛽2 𝐶2 + 𝛽3 𝐶3 + ⋯ converge pour 0 ≤ 𝛽 < 1 max( 𝜆 𝐶 ) max( 𝜆 𝐶 ) est la plus grande valeur propre de 𝐶 (appelé rayon spectral) 𝐾𝑎𝑡𝑧(𝐶) = ⋯ 𝐹′ ⋯ ⋯ Matrice des scores de prédiction après propagation de Katz Users Users Places Places Complexité algorithmique: 𝑂 𝑁 𝑢 × 𝑛𝑛𝑧 , avec 𝑁 𝑢, le nombre de d’utilisateurs et 𝑛𝑛𝑧, le nombre de « non-zero » dans 𝐹𝐹 𝑇 𝑘 𝐾𝑎𝑡𝑧 𝐶 12 = 𝛽 𝐹 + 𝛽2 𝑆𝐹 + 𝐹𝐺 + 𝛽3 𝑆2 𝐹 + 𝐹𝐹 𝑇 𝐹 + 𝑆𝐹𝐺 + 𝐹𝐺2 + ⋯ Graph-based approach for location recommendation in LBSNs using Katz Centrality Centralité de Katz [Katz, 1953] Permet d’identifier des relations distantes entre des nœuds d’un graphe
  • 47. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations47 𝐾𝑎𝑡𝑧 𝐶 12 = 𝛽 𝐹 + 𝛽2 𝑆𝐹 + 𝐹𝐺 + 𝛽3 𝑆2 𝐹 + 𝐹𝐹 𝑇 𝐹 + 𝑆𝐹𝐺 + 𝐹𝐺2 + ⋯ Places visited by friends Places close to the visited places Places visited by friends of friends Places visited by users that have visited the same places Places close to places visited by friends Places close to places close to the visited places Graph-based approach for location recommendation in LBSNs using Katz Centrality Les chemins considérés dans 𝑲𝒂𝒕𝒛 𝑪 𝟏𝟐
  • 48. Institut Mines-Télécom Context and social based recommender system using association rules 21/07/2015 Les systèmes de recommandations48 DB History Learning part Offline Recommendation part Online Association rules mining All users' past visiting sessions Rules selection DB Association Rules Rules scoringItems selection - visiting session - position - desired TOR - friends Profile selected rules with scores recommendations Recommandation contextuelle et sociale de lieux qui dépend du type de recommandation désiré par l’utilisateur • Contexte : ─ Session de visites ─ Position courante ─ Type de recommandation désiré (veut-il des recommandations évidentes ? surprenantes ? rares ? populaires ?) • Visites passées des amis
  • 49. Institut Mines-Télécom Context and social based recommender system using association rules 21/07/2015 Les systèmes de recommandations49 Partie hors-ligne, apprentissage de règles d’association Learning part Recommendation part • Transaction : session de visites (ensemble de lieux) • Extraction de toutes les règles d’association
  • 50. Institut Mines-Télécom Context and social based recommender system using association rules 21/07/2015 Les systèmes de recommandations50 Partie en-ligne, temps-réelle, moteur de recommandation Learning part Recommendation part • Sélection de règles correspondantes à la session de visites de l’utilisateur • Calcul de scores de pertinences pour chaque règles sélectionnées selon une mesure de pertinence • Pondération et sélection des items à recommander 𝑀 𝑝 𝑟𝑖 = 𝑀𝑔 𝑟𝑖 𝛼𝑀𝑖 𝑟𝑖 + 1 − 𝛼 𝑀𝑠 𝑟𝑖 • 𝑴𝒊 dépend du type de recommandation désiré: Confiance, Surprise, Rareté, Popularité • 𝑴 𝐠 dépend de la position géographique courante de l’utilisateur. Elle met en avant les règles dont le lieu conséquent n’est pas trop éloigné de l’utilisateur. • 𝑴 𝐬 dépend des visites des utilisateurs amis. Elle met en avant les règles qui se sont vérifiées souvent chez les amis de l’utilisateur courant.
  • 51. Institut Mines-Télécom Evaluation de la qualité des recommandations 21/07/2015 Les systèmes de recommandations51
  • 52. Institut Mines-Télécom21/07/2015 Les systèmes de recommandations52 Hors ligne Evaluation hors ligne • Jeux d’apprentissage et de test ─ Pas de convention pour définir ces jeux • Algorithme de recommandation sur jeu d’apprentissage • Matrice de score prédis ou k-recommandations • Mesures de qualité ─ RMSE entre scores prédis et scores réels ─ Rappel, Précision, F1-Score, ROC En ligne Problème Chercher à « améliorer la prédiction des futures scores/actions des utilisateurs », diffère de « améliorer la qualité des recommandations » Evaluation de la qualité des recommandations
  • 53. Institut Mines-Télécom Evaluation de la qualité des recommandations 21/07/2015 Les systèmes de recommandations53 Hors ligne Evaluation en ligne • A/B testing ─ Test de recommandations différentes sur un groupe A et un groupe B d’individus ─ Validation méthode dont les recommandations ont amélioré une fonction objectif (augmentation du nombre d’achat, du bénéfice, du temps passé par les utilisateurs sur les pages, satisfaction des utilisateur, etc.) En ligne Problème Très couteux à mettre en place
  • 54. Institut Mines-Télécom Quelques perspectives du domaine Quelles pistes pour améliorer les recommandations ? 21/07/2015 Les systèmes de recommandations54
  • 55. Institut Mines-Télécom Quelques perspectives du domaine o Social • Identification d’utilisateurs plus enclins à la recommandation sociale • Quelle est la nature exacte de la corrélation entre les intérêts utilisateurs et les relations sociales ? Quel impact sur les recommandations ? • Recommandation considérant les relations sociales négatives o Recommandation pour un groupe • Etude de la structure/dynamique d’un groupe pour la recommandation (qui est le chef ? qui est influençable ? comment se propage l’information ?) o Recommandations interactives • Profilage interactif de l’utilisateur par des questions/propositions explicites o Profilage plus précis par analyse textuelle o Intégration des interactions textuelles, analyse de sentiments o Acquisition et intégration des tendances relatives aux habitudes o Méthodes à apprentissage profond, deep learning o Formalisation des conditions d’évaluation des systèmes de recommandation selon les caractéristiques du jeu de données et les objectifs de recommandation o Recommandation combinatoire (cf. ma thèse) o Est-ce que les recommandations fournies par mon modèle tendent à uniformiser les profils des utilisateurs ? Quelle est sa convergence ? o Plus généralement : systèmes de recommandation sensibles au temps (TARS) et sensibles au contexte (CARS) 21/07/2015 Les systèmes de recommandations55
  • 56. Institut Mines-Télécom Conclusion 21/07/2015 Les systèmes de recommandations56
  • 57. Institut Mines-Télécom Conclusion o Un système de recommandation demande un(e): • Analyse/modélisation des interactions, comportements • Analyse/profilage des utilisateurs, items • Méthode/algorithme de recommandation basé sur ces analyses/modèles et dépendante des contraintes, objectifs de recommandation • Méthode d’évaluation détaillée, comparaison avec d’autres méthodes dans les mêmes conditions o De nombreuses pistes à développer dans le domaine 21/07/2015 Les systèmes de recommandations57