Contexte
Depuis son invention dans les années 1990, le web a rencontré un succès fulgurant et a bouleversé nos sociétés. On évalue qu’en 2018 plus de 4 milliards d’êtres humains sont connectés à Internet, soit 54% de la population mondiale [WeAreSocial 2017]. Le nombre de données générées par ces utilisateurs continue de croître exponentiellement, plus de 90% des données disponibles sur Internet ont été publiés après 2015 [IBM 2017]. Dans un rapport de Cisco publié en 2017 [Cisco 2017], les auteurs indiquent que le volume de données annuel transitant sur Internet a dépassé la limite du Zettabit, soit 1012 Gigabit. Le web a connu un véritable essor technologique à partir des années 2000 permettant aux plateformes internet de devenir de plus en plus dynamiques. Les utilisateurs ne sont plus cantonnés à un simple rôle d’observateur mais interagissent directement avec les services en publiant ou partageant du contenu. C’est la naissance du web 2.0, déjà prédit avec beaucoup de précision par Danny DiNucci en 1999 dans la revue Print [DiNucci 1999]. Elle prévoyait que le web allait devenir de plus en plus interactif et s’immiscer dans tous les objets du quotidien, de la voiture au téléphone portable en passant par la télévision.
État de l’art
Historique
L’histoire académique des systèmes de recommandation n’est pas évidente à retracer, mais deux principaux articles peuvent être notés comme étant à l’origine du concept. Jussi Karlgren [Karlgren 1990] alors jeune chercheur suédois en séjour à Columbia écrit un rapport technique de 11 pages dans lequel il décrit un modèle algébrique permettant de recommander des documents à des utilisateurs.
Ce rapport porte déjà la marque de nombreux questionnements qui ne cesseront de traverser la communauté des systèmes de recommandation. Il distingue ainsi les informations implicites qui sont collectées directement à partir des activités des utilisateurs, des informations explicites qui correspondent à un avis de la part de l’utilisateur. Le modèle de Karlgren utilise déjà un modèle de filtrage collaboratif qui repose sur les similarités entre utilisateurs pour faire des recommandations, avec l’intuition que des gens qui se comportent de la même façon vont avoir tendance à se comporter de la même façon dans le futur. On sent dans ce texte déjà l’ambition de créer une bibliothèque culturelle numérique qui aiderait les utilisateurs à référencer leurs goûts et leur collection d’œuvres afin de trouver de nouveaux contenus. Il cite l’exemple d’une bibliothèque numérique de livres qui serait en mesure de connaitre les goûts de ses utilisateurs afin de leur fournir des idées de livres à lire.
De façon assez ironique son travail n’aura qu’un impact très limité dans la sphère académique car sa publication dans la conférence INTERACT de 1990 s’est vue refuser au motif qu’utiliser les données des utilisateurs empièterait trop sur leur vie privée. Il faudra donc attendre 1992 pour voir le premier article clairement cité par la communauté internationale, article qui propose le terme « filtrage collaboratif » [Goldberg, Nichols, Oki, and Terry 1992]. Alors chercheurs à Xerox, les auteurs décrivent un système nommé Tapestry qui devrait, en théorie, remplacer le système de messagerie électronique de l’entreprise afin de réduire la quantité astronomique de messages que les employés reçoivent. L’idée est assez directe, les lecteurs de messages sont invités à les annoter (« excellent » ou « inutile » par exemple) afin de donner leurs avis. Chaque utilisateur peut filtrer ses messages par contenu, par exemple « Service Comptabilité » et par utilisateurs « Eric ayant annoté le document comme excellent ». Il revient donc aux utilisateurs de faire des requêtes de filtrage, on parle alors de filtrage collaboratif à la demande.
Mais l’article le plus abouti proviendra en 1994 du laboratoire GroupLens de l’université du Minnesota [Resnick, Iacovou, Suchak, Bergstrom, and Riedl 1994]. L’idée de cet article consiste à utiliser des notes laissées par des utilisateurs sur des groupes Usenet pour recommander des articles, c’est le premier modèle à reposer sur une similarité entre utilisateurs et à travailler sur une matrice utilisateurs/contenu. Le groupe de chercheurs derrière ce premier travail s’est ensuite engouffré dans la thématique des systèmes de recommandation. Ils ont eu l’intuition que la difficulté de trouver des jeux de données d’avis d’utilisateurs allait s’avérer critique et ils ont mis en place la plateforme MovieLens, un système public de recommandation de films. Les données récoltées par cette plateforme ont eu beaucoup d’impact car elles ont stimulé les recherches sur le sujet.
Ces données sont toujours accessibles [GroupLens]. On voit comment dès le départ l’intuition pour construire des systèmes de recommandation consistait à s’appuyer sur les similarités entre utilisateurs ou entre items, c’est à dire des méthodes de filtrage collaboratif. Le succès du système de recommandation d’Amazon mis en place en 1998 . Rapidement les liens entre industriels et chercheurs sont devenus extrêmement ténus dans ce champ de recherche. Il faudra attendre 2003 pour qu’Amazon rende public, succinctement, leur algorithme dans un article qui deviendra un classique de la communauté [Linden, Smith, and York 2003]. La simplicité du modèle et sa faculté à passer à l’échelle a probablement joué un rôle important dans son essor. En résumé l’idée de l’article consiste à décaler le positionnement des systèmes de recommandation jusque-là orientés utilisateurs vers des systèmes orientés contenu. Pour chacun des objets de la matrice, c’est à dire les produits vendus par Amazon, il est possible de calculer à froid les objets les plus similaires. Si leur algorithme semble donner des résultats satisfaisants, le système présente des problèmes de calcul en temps-réel et de qualité de recommandation.
L’étape clé suivante des systèmes de recommandation a été la création du prix Netflix en 2006. A l’époque, Netflix ne fait pas encore de vidéos à la demande et propose pour un abonnement mensuel une location illimitée de DVD. Ils créent alors un prix de 1 million de dollars pour récompenser l’équipe capable d’améliorer les performances de leur algorithme de 10% avec l’idée de stimuler la recherche sur le sujet. Ce cap des 10% d’amélioration sera dépassé en 2009 par l’équipe « BellKor’s Pragmatic Chaos » composée d’un mélange de chercheurs d’université publiques et privés (AT&T, Yahoo !) [Töscher, Jahrer, and Bell 2009]. La solution gagnante est une succession d’étape de factorisation imaginé par Yehuda Koren [Koren, Bell, and Volinsky 2009] qui deviendra un classique des modèles de recommandation. Netflix considèrera cependant que l’ajout énorme de complexité pour obtenir ces résultats n’est pas un compromis convenable et n’utilisera pas la solution proposée. Ce sera la dernière édition du prix Netflix, puisque des chercheurs de l’université d’Austin [Narayanan and Shmatikov 2006] démontrent que, même si les données rendues publiques par Netflix sont en apparence anonymisées, il est possible de retrouver les identités des utilisateurs du jeu de données en faisant un rapprochement avec les données IMDB. Quatre utilisateurs de Netflix intenteront même un procès estimant que le partage de leurs données est une infraction aux règles de confidentialité de la plateforme.
Données
Pour recommander du contenu pertinent à un individu il est nécessaire de comprendre ses goûts et donc de construire un profil de ses intérêts. Afin de construire ce profil utilisateur, les systèmes de recommandation peuvent se reposer sur deux types de données. On distinguera ainsi les données implicites, par exemple le temps passé à regarder une vidéo ou bien le nombre de fois qu’un album de musique a été écouté. Une information qui est donc intrinsèquement liée à l’usage de l’utilisateur. L’alternative étant d’utiliser des données explicites comme par exemple des notes de 1 à 5, un like, un partage, bref une information volontairement déposée par l’utilisateur. Si l’information explicite est plus difficile à collecter car elle nécessite la volonté de l’utilisateur de donner son avis, elle permet d’avoir des avis négatifs sur des objets. Avec une information implicite il est plus difficile d’inférer qu’un objet ne plaît pas à l’utilisateur [Rendle, Freudenthaler, Gantner, and Schmidt-Thieme 2009]. Il existe un long débat issu des sciences sociales pour déterminer quelles données sont les plus pertinentes à utiliser. En effet le problème de représentation de soi est un problème bien connu. Par exemple lors de recueil d’opinions concernant les usages télévisuels, la chaine Arte communément identifiée comme une chaine d’intellectuels, a tendance à être surreprésentée dans les résultats comparés aux audiences mesurées par télémétrie. Il y a donc un écart entre la façon dont les individus se décrivent et la façon dont ils se comportent.
La compétition pour remporter le prix Netflix, qui a contribué à dynamiser la recherche sur les systèmes de recommandation, nécessitait de traiter exclusivement des données explicites ce qui a biaisé la recherche académique sur ce type de données. Dans les faits, il existe peu de travaux comparants directement la qualité des résultats obtenus à partir de données implicites ou explicites. Cela s’explique par la difficulté de trouver des jeux de données contenant des données implicites, habituellement gardées précieusement par les entreprises privées qui peuvent les collecter directement sur leurs utilisateurs. Cependant, il existe quelques travaux qui s’intéressent à cette question, ainsi dans un article, Jawaheer et al [Jawaheer, Szomszor, and Kostkova 2010], comparent la qualité de prédiction d’un système de recommandation musical en se servant respectivement de données implicites ou de données explicites.
Ils obtiennent des résultats très comparables quelle que soit la source des informations utilisateurs et préconisent l’utilisation hybride des différents types de données. En revanche une étude comparative de différents algorithmes de recommandation selon s’ils utilisent des données implicites ou explicites [Zhao, Harper, Adomavicius, and Konstan 2018], explique que, de façon paradoxale, l’utilisation de données implicites nuit à la précision globale du système mais suscite davantage d’engagement de la part des utilisateurs. Le meilleur engagement des utilisateurs en utilisant des données implicites peut expliquer l’évolution des systèmes qui au départ utilisaient des données explicites qui progressivement utilisent de plus en plus de données implicites.
|
Table des matières
1 Introduction
1.1 Contexte
1.2 Notre Problématique
1.3 Contributions
1.4 Organisation de la thèse
2 État de l’art
2.1 Historique
2.2 Données
2.3 Recommandation orientée contenu
2.4 Recommandation par filtrage collaboratif
2.5 Modèles hybrides
2.6 Modèles pour plateformes sociales
2.7 Deep-Learning
2.8 Marches aléatoires : le cas twitter
2.9 Conclusion
3 Analyse de Twitter
3.1 Construction d’un jeu de données
3.2 Analyse des retweets
3.2.1 Durée de vie d’un tweet
3.2.2 Popularité des tweets
3.2.3 Popularité d’un message et durée de vie
3.2.4 Retweets par utilisateurs
3.3 Analyse du réseau Twitter
3.3.1 Topologie générale
3.3.2 Influence des Top-N utilisateurs les plus similaires
3.3.3 Homophilie
3.4 Conclusion
4 Recommandation de tweets
5 Conclusion