Présentation sur l'expérimentation (bilan intermédiaire au 1er juin 2010) men...
Cross-domain recommandation system for flights and hotels
1. Projet de fin d’étude
Avril-Juillet 2016
Shanghai Jiao Tong University - Chine
1
Nora DIOURI
INSA Lyon – Département Télécommunications
Services et Usages
Tuteurs :
Dr. Jian CAO
Dr. Frédéric LE MOUEL
Président du Jury :
Dr. Fabrice VALOIS
2. Introduction
Partie 1 :
1. Contexte
2. Description de la problématique
3. Etat de l’art : les systèmes de recommandation
Partie 2 :
1. Solution et hypothèses
2. Les outils utilisés
3. Expériences et résultats
Partie 3 :
1. Retour Personnel
2. Conclusion
2INSA Lyon - Département Télécommunications Services et Usages
3. Augmentation de la masse des données
Filtrage et recherche d’information
Les systèmes de recommandation
INSA Lyon - Département Télécommunications Services et Usages
3
4. INSA Lyon - Département Télécommunications Services et Usages
4
5. INSA Lyon - Département Télécommunications Services et Usages
5
6. Quel modèle mettre en place pour réaliser un système
de recommandation vol-hôtel ?
Challenges :
Pré-processing des données
Méthode de résolution
Manque de données
Optimisation de la recommandation
INSA Lyon - Département Télécommunications Services et Usages
6
7. INSA Lyon - Département Télécommunications Services et Usages
7
Un système de recommandation est un
outil logiciel qui vise à prédire l’intérêt
d’un utilisateur pour un article donné.
1. Cross-domain Recommendation System
Content-based recommendation
Collaborative Filtering
Knowledge model
Hybrid model
2. Les approches existantes :
Définition
3. Factorisation Matricielle
8. INSA Lyon - Département Télécommunications Services et Usages
8
Tan et Al / Neurocomputing 127 ( 2014 ) p.125
Les préférences d’un utilisateur sur une ou plusieurs
catégories peuvent être inférer sur d’autres domaines.
Transfère des intérêts des utilisateurs sur deux domaines (livres et films)
9. La recommandation à partir du contenu des
articles ou produits déjà choisi par
l’utilisateur.
INSA Lyon - Département Télécommunications Services et Usages
9
• Techniques basées sur
• L’apprentissage automatique
• Classification
• Data mining
Inconvénients :
Risque de sur-spécialisation
Classification vs. Recommendation
Difficile à appliquer sur des données multimédias
Ne convient pas pour des systèmes dont les types de données
sont différentes mais reliées.
• Données textuelles
• Term-Frequency algorithm
Avantages :
Un score de préférence peut être obtenu pour chaque couple utilisateur-article.
10. INSA Lyon - Département Télécommunications Services et Usages
10
CF ou social filtering réalise des
recommandations en se basant sur
un groupe ou une communauté
d’utilisateurs.
Mesure de similarités :
• Pearson correlation
• Vector cosine distance
Avantages :
CF peut s’appliquer à de nombreux domaines
Inconvénients :
Difficulté de choisir le bon cluster pour l’utilisateur
Un article ne peut être recommandé que s’il a été suffisamment noté
Cold-Start Problem
Taille de la liste de recommandation à produire
Clustering algorithmes
• K Nearest Neighbours
11. Demographic approach
◦ Basée sur le collaboratif filetring
◦ Age, historique, intérêt sportif, politique, films etc.
INSA Lyon - Département Télécommunications Services et Usages
11
Inconvénients :
Nécessite une contribution de l’utilisateur
Risque de sur-généralisation
Avantages :
Ces techniques peuvent s’utiliser en complément des autres méthodes
Former graduellement le profil de l’utilisateur.
12. Weighted hybrid RS : donne des poids à chaque stratégie utilisée et
associe les résultats à chacune d’elle afin de réaliser la
recommandation.
Chacune des techniques est utilisée en fonction de ce que l’on
souhaite recommander.
Inconvénients :
Quantité considérable de calcul
Difficulté à prédire la performance d’un algorithme de
recommandation
INSA Lyon - Département Télécommunications Services et Usages
12
Combine une ou plusieurs méthodes
afin d’améliorer la qualité de la recommandation.
13. INSA Lyon - Département Télécommunications Services et Usages
13
Source : Paper 14
Détermination de facteurs latents grâce à la factorisation matricielle
15. ◦ Rassembler les hôtels et les vols par prix
◦ A chaque utilisateur corresponds le nombre de
réservation des vols et des hôtels.
Challenge:
Matrice grande et creuse
Limite de la recommandation : Un utilisateur qui
choisit un vol low cost ne choisit pas forcèment un
hôtel lowcast
INSA Lyon - Département Télécommunications Services et Usages
15
Low Average High
30 50 20
16. Création de groupes de vols et d’hôtels en se
basant sur plusieurs attributs.
INSA Lyon - Département Télécommunications Services et Usages
16
La compagnie
aérienne
Prix
Classe
Vols Hôtels
Marque
Prix
Nombre d’étoiles
Localisation
17. INSA Lyon - Département Télécommunications Services et Usages
17
4 … 2
5 … 1
3 …
2 3 … 3
…
G_Vol 1 G_Vol 2 G_Hotel_1 G_Hotel_2 G_Hotel_YG_Vol x
4 … 2
5 … 1
3 …
2 3 … 3
…
Détermination des facteurs latents grâce à la factorisation matricielle
18. Création de groupes d’utilisateurs
Algorithmes : K Nearest Neighbors
Limites:
◦ Détermination des utilisateurs experts
INSA Lyon - Département Télécommunications Services et Usages
18
19. INSA Lyon - Département Télécommunications Services et Usages
19
4 … 2
5 … 1
3 …
2 3 … 3
…
G_Vol 1 G_Vol 2 G_Hotel_1 G_Hotel_2 G_Hotel_YG_Vol x
4 … 2
5 … 1
3 …
2 3 … 3
…
Détermination des facteurs latents grâce à la factorisation matricielle
G_utiliateurs 1
G_utiliateurs 2
G_utiliateurs 3
G_utiliateurs 4
G_utiliateurs n
20. INSA Lyon - Département Télécommunications Services et Usages
20
21. INSA Lyon - Département Télécommunications Services et Usages
21
• Utilisateurs ayant effectués plus de 10
réservations
• Sur le site Ctrip.com
• Entre Mars 2015 et Mars 2016
Utilisateurs
(nb)
Vols
(nb)
Vols
réservés
(nb)
Hôtels
(nb)
Hôtels
réservés
(nb)
Pékin 8106 1744 130383 7553 137420
Shanghai 7523 1700 120787 6930 130535
22. INSA Lyon - Département Télécommunications Services et Usages
22
Histogramme des prix des hôtels
Prix (CNY)
nombre d’hôtels
3 catégories de prix
Inférieur à 1000 CNY
Entre 1000 et 3000 CNY
Supérieur à 3000 CNY
23. Utilisation de scikit-learn
Les librairies importées sont :
◦ La librairie Pandas
◦ Kmeans clustering model à partir de sklearn.cluster
◦ PCA model à partir de sklearn.decomposition
Lecture du fichier csv.
Utilisation de l’algorithme K-means :
◦ Choix du nombre de clusters
◦ Utilisation des données numériques
INSA Lyon - Département Télécommunications Services et Usages
23
24. INSA Lyon - Département Télécommunications Services et Usages
24
R : la matrice à factoriser de dimension N x M
P : matrice de dimension N x K
Q : matrice de dimension M x K
K : le nombre de facteurs latents
Steps : le nombre maximum de pas afin de réaliser l’optimisation
Alpha : le taux d’apprentissage
Beta : le paramètre de régularisation
Sortie : obtention des matrices P et Q.
25. Expérience dans un laboratoire de recherche asiatique
Compétences développées:
◦ les systèmes de recommandation
◦ Matrix Factorization
◦ Python
Difficultés :
◦ Très peu de travaux de recherche pour la recommandation vols-
hôtels
◦ Adaptation des approches existantes
INSA Lyon - Département Télécommunications Services et Usages
25
26. Pour répondre à notre problème :
◦ Collaborative filtering
◦ Matrix Factorization
Challenge :
◦ Cold-Start Problem
La recherche dans les systèmes de recommandation cross-
domain n’en n’est qu’à ses débuts…
Recommender Systems Handbook
Réel besoin pour la recommandation
INSA Lyon - Département Télécommunications Services et Usages
26
27. 1 Linden, G., Smith, B., & York, J. (2003). Amazon. com recommendations: Item-to-item collaborative
filtering. IEEE Internet computing, 7(1), 76-80.
2 Gomez-Uribe, C. A., & Hunt, N. (2016). The Netflix recommender system: Algorithms, business value, and
innovation. ACM Transactions on Management Information Systems (TMIS), 6(4), 13.
3 Liu, J., Dolan, P., & Pedersen, E. R. (2010, February). Personalized news recommendation based on click
behavior. In Proceedings of the 15th international conference on Intelligent user interfaces (pp. 31-40).
ACM.
4 Winoto, P., & Tang, T. (2008). If you like the devil wears prada the book, will you also enjoy the devil wears
prada the movie? a study of cross-domain recommendations. New Generation Computing, 26(3), 209-225.
5 Tan, S., Bu, J., Qin, X., Chen, C., & Cai, D. (2014). Cross domain recommendation based on multi-type
media fusion. Neurocomputing, 127, 124-134.
6 Fernández-Tobías, I., Cantador, I., Kaminskas, M., & Ricci, F. (2012, June). Cross-domain recommender
systems: A survey of the state of the art. InSpanish Conference on Information Retrieval.
7 Li, B. (2011, November). Cross-domain collaborative filtering: A brief survey. In2011 IEEE 23rd
International Conference on Tools with Artificial Intelligence(pp. 1085-1086). IEEE.
8 Delporte, J. (2014). Factorisation matricielle, application à la recommandation personnalisée de
préférences (Doctoral dissertation, Rouen, INSA).
9 Lu, Z., Pan, W., Xiang, E. W., Yang, Q., Zhao, L., & Zhong, E. (2013, May). Selective Transfer
Learning for Cross Domain Recommendation. In SDM (pp. 641-649).
10 Hu, L., Cao, J., Xu, G., Cao, L., Gu, Z., & Zhu, C. (2013, May). Personalized recommendation via
cross-domain triadic factorization. In Proceedings of the 22nd international conference on World
Wide Web (pp. 595-606). ACM.
INSA Lyon - Département Télécommunications Services et Usages
27
28. 11 Loizou, A. (2009). How to recommend music to film buffs (Doctoral dissertation, UNIVERSITY OF
SOUTHAMPTON).
12 SAHEBI, Shaghayegh et BRUSILOVSKY, Peter. Cross-domain collaborative recommendation in a cold-start
context: The impact of user profile size on the quality of recommendation. In : User Modeling, Adaptation,
and Personalization. Springer Berlin Heidelberg, 2013. p. 289-295.
13 Salakhutdinov, R., & Mnih, A. (2011, September). Probabilistic matrix factorization. In NIPS (Vol. 20, pp.
1-8).
14 JAMALI, Mohsen et LAKSHMANAN, Laks. HeteroMF: recommendation in heterogeneous information
networks using context dependent factor models. In : Proceedings of the 22nd international conference on
World Wide Web. International World Wide Web Conferences Steering Committee, 2013. p. 643-654.
15 Hu, L., Cao, J., Xu, G., Wang, J., Gu, Z., & Cao, L. (2013, August). Cross-Domain Collaborative Filtering via
Bilinear Multilevel Analysis. In IJCAI.
16 TAN, Shulong, BU, Jiajun, QIN, Xuzhen, et al. Cross domain recommendation based on multi-type media
fusion. Neurocomputing, 2014, vol. 127, p. 124-134.
INSA Lyon - Département Télécommunications Services et Usages
28
30. INSA Lyon - Département Télécommunications Services et Usages
30
Notes de l'éditeur
Scénario : Un utilisateur se rend sur le site de réservation en ligne Ctrip.com pour réserver un vol. Grâce à ses informations nous devons lui proposer une liste d’hôtels.
Jeu de donnée réel fourni par Ctrip.com
Pas de ratings
Matrice creuse
Exemple : Football – English
Nouveau domaine de recherche et très peu de publications
Solutions :
Proposition d’un seul profil unifié contenant de nombreuses informations de l’utilisateur obtenues de différentes ressources. Mais, les recherches ne montrent pas comment utiliser le modèle sur des applications réelles.
Utilisation de l’approche hybrid CF afin de tenir de la diversité des interactions entre deux domaines. Mais, s’il y n’ a pas d’information sur le domaine cible, le modèle ne fonctionne pas.
Fig. 1. An example for transferring user interests cross domains. We consider two domains here, movies and books.
Variables produits et utilisateurs
Données temporelles et sociales
since the recommendation problem is reduced to the question “Is this item sufficiently similar to those in the training set?”.
A vector is constructed for each item containing values for the descriptive features of each item and is considered a point in a multidimensional space. Inter–item similarity is assessed by evaluating the distance between such points.
One of the strengths of this approach is the fact that a prediction score can be obtained for every resource–user pair, provided that the user has a non–empty profile. However, CBF systems often fail to produce recommendations that have different, but related content.
recommenders should return resources that are not only relevant, but
also useful to the user at the time of recommending.
NewsDude5) performs a content-based approach to learn users’ news-reading preferences and recommend a new story, that is, by comparing how frequently its words occur in those stories the user favors. Other content-based RS includes WebWatcher.
Cold-Start Problem :
Recommandation pour des nouveaux utilisateurs
Améliorer la précision :
Réduire la sparsity
Ajouter de la valeur aux recommandations
Diversity, novelty, serendipity
Enhancing user model
Découvrir les nouvelles préférences des utilisateurs
Levis.com Amazon
The active user is first matched to the group of most similar users using a similarity metric and a clustering algorithm – typically k Nearest Neighbours.
Due to the level of sparsity in the datasets RS typically deal with, users can appear equally similar to any other user if the similarity metrics used are not sensitive enoug
As such, the user is merely provided with recommendations for the items most popular with a group of ‘randomly’ selected users, and there could be a potentially high degree of disagreement among members of this group.
items can only be recommended after being rated by a sufficient number of users.
Small lists could miss out important resources, while large ones can prove useless and confusing to the users.
knowledge-based approach has not gained widespread popularity in commercial systems, because it is usually difficult to encourage users to contribute their time and efforts where more than one round of interaction is needed.
users are asked to provide de- mographic information such as their age, interest in sports, favourite TV programs, and purchasing history, among others.
it is possible that the quality of recommendations is negatively affected by the over–generalisation of user interests; it is highly improbable that someone interested in sports will follow each existing sport, or that a fan of horror movies would enjoy every film of that genre.
Heuristiques : sparsity index of the entire space, the number of available ratings for the active user,
Différentes heuristiques sont utilisés pour prédire la performance de l’algorithme mais des pertes sont observées en termes de précision de la recommandation.
Mise en place d’une matrice commune
4 clusters
Déterminer des clusters
( abundunt information)
Pour réaliser nos expérimentations, il faut donc choisir des utilisateurs dont on a des informations abondantes. Réaliser un apprentissage sur ces utilisateurs afin de réaliser des prédictions pour les utilisateurs dont on ne dispose pas d’assez d’informations.
Néanmoins, il faut être très prudent lors du choix des utilisateurs « experts » puisque ils sont représentatifs des différents groupes formés.
Déterminer des clusters
’engouement des chercheurs a fait grandement avancer les choses. Un livre surtout, Recommender Systems Handbook, présentant un bilan détaillé des systèmes de recommandation montre déjà une certaine maturité du domaine de recherche.
Les workshops et les thèmes de recherche consacrés aux systèmes de recommandation ont fait leur apparition essentiellement dans les conférences en apprentissage artificiel et en fouille de données.
l’apparition de nouvelles problématiques et de contraintes techniques tel que le temps de clacul et le stockage des données, assurent un avenir florissant à ce domaine de recherche.