Temps de lecture : 7 minutes

Netflix conseille des séries à ses utilisateurs de manière personnalisée, grâce à son algorithme de recommandation

 

En tant qu’internautes, nous sommes chaque jour confrontés à des dizaines de recommandations différentes. Qu’il s’agisse de recommandations de vidéos sur des sites de streaming, de produits à acheter sur des sites d’e-commerce ou encore de publications à lire sur les réseaux sociaux, une large partie du contenu que nous consommons nous est en fait recommandé. Par exemple, Netflix, leader mondial du streaming de films et séries, estime que 80% du contenu qui est regardé sur sa plateforme provient des recommandations faites aux utilisateurs en amont.

Les systèmes de recommandation des plateformes telles que Youtube, Netflix ou Amazon sont complexes et composés de multiples briques différentes, afin de pouvoir recommander plusieurs millions de produits à des millions d’utilisateurs en temps réel. D’autre part, seule une partie des informations concernant ces moteurs est accessible : les principaux détails de leur fonctionnement sont confidentiels, car protégés par leurs créateurs. On peut cependant classer ces moteurs selon leur construction, et ainsi comprendre les grands principes de leur fonctionnement.

 

Un pré-requis : le feedback utilisateur

De nombreuses méthodes permettent de recommander des produits à des utilisateurs. Toutefois, quel que soit l’algorithme choisi, la recommandation de contenu nécessite une forme d’évaluation des produits de la part des utilisateurs. On parle alors de « feedback ». En d’autres termes, les produits doivent avoir été évalués par les anciens utilisateurs avant d’être recommandés à de nouveaux utilisateurs. Ce feedback peut être explicite, comme dans le cas des notes attribuées aux produits vendus sur Amazon ou des mentions « J’aime » sur Facebook. Mais dans une large majorité des cas, le feedback est implicite : il s’agit par exemple du nombre de fois que la page d’un produit a été visitée, ou du temps de visionnage d’une vidéo. Les systèmes disposant de peu ou pas de feedback ont généralement des performances insatisfaisantes. Avec le temps, et en récoltant de plus en plus de feedback, ces systèmes s’auto-alimentent et s’améliorent.

 

Les méthodes classiques

Les premiers algorithmes de recommandation sont historiquement apparus il y a une vingtaine d’années. Il s’agit des algorithmes basés sur le contenu des produits et des algorithmes de filtrage collaboratif.

Comme leur nom l’indique, les algorithmes basés sur le contenu des produits utilisent les caractéristiques de ceux-ci afin d’effectuer des recommandations. En somme, ces algorithmes recommandent des produits dont les contenus sont similaires. Pour pouvoir les utiliser, il y a un pré-requis : disposer d’informations concernant le contenu des produits. Dans le cas d’un site de streaming, cela suppose par exemple de connaître le type de la vidéo : s’agit-il d’une vidéo d’informations ? Humoristique ? Culturelle ? Ces informations sont le plus souvent renseignées par l’hébergeur lui-même. Netflix a par exemple des employés dédiés au visionnage des vidéos, afin de pouvoir catégoriser leur contenu.
Sur la base de ces éléments et du feedback des utilisateurs, l’algorithme propose à une personne des produits dont le contenu est susceptible de l’intéresser. Par exemple, si un utilisateur de Youtube a fourni un feedback indiquant qu’il a apprécié une vidéo de chats, l’algorithme lui recommandera d’autres vidéos contenant des chats.

Les algorithmes de filtrage collaboratif reposent quant à eux sur l’idée suivante : ce sont les préférences collectives des utilisateurs qui filtrent le bon et le mauvais contenu. Comme pour la méthode précédente, il y a un pré-requis : ici, il s’agit d’avoir un minimum de connaissance sur les préférences des utilisateurs. C’est par exemple pourquoi lors d’une inscription sur Netflix, il est demandé à l’utilisateur de choisir trois séries ou films favoris.
Sur la base des préférences d’un utilisateur A, l’algorithme détermine les utilisateurs B et C qui ont des préférences similaires. Ceci est possible par un calcul de distance1 ou en utilisant des méthodes de machine learning, comme celle des K plus proches voisins2. L’algorithme peut alors recommander les produits appréciés par B et C à l’utilisateur A (car B et C lui sont similaires). Par exemple, si A est similaire à B et C et que ceux-ci sont fans de rock métal, l’algorithme recommandera des vidéos de rock métal à l’utilisateur A.
On parle de filtrage collaboratif « centré utilisateur ». Une variante, le filtrage collaboratif « centré produit » est également couramment utilisée.

 

Des méthodes « boîte noire » plus performantes

Afin de dépasser les méthodes précédentes, Netflix organisa en 2006 une compétition durant laquelle les participants devaient développer leur propre algorithme de recommandation. L’objectif : battre les performances de l’algorithme de recommandation de Netflix, avec pour seules informations les notes individuellement attribuées par les utilisateurs aux différents films. Plus exactement, il était nécessaire de prédire les notes attribuées aux différents films par chaque utilisateur. Un prix de 1 million de dollars était prévu pour l’équipe parvenant à battre de 10% les performances de Netflix sur ce problème.

Il a fallu attendre trois ans pour qu’enfin une équipe parvienne à remporter le prix : en juillet 2009, l’équipe « BellKor’s Pragmatic Chaos » composée de neuf personnes – pour la plupart chercheurs – est parvenue à battre les performances de l’algorithme de Netflix de 10.06%3. Leur solution au problème de recommandation était basée sur une méthode dite de  « factorisation de matrice ». L’idée générale est de laisser l’algorithme apprendre lui-même les caractéristiques latentes (les « facteurs ») permettant de dire si deux films sont similaires ou non.

Exemple de factorisation de matrice sur les données de la compétition Netflix : si deux films sont proches l’un de l’autre dans ce plan, alors l’algorithme a estimé qu’ils étaient similaires. Ils seront alors recommandés simultanément. Source : Matrix factorization techniques for recommender systems (Koren, Bell & Volinsky 2009, vainqueurs de la competition Netflix)

Cette première dans le domaine des recommandations a ouvert la voie à de nombreuses méthodes basées sur la même idée. Toutes permettent d’apprendre des facteurs latents indiquant si deux produits sont similaires ou non. Aujourd’hui, pour désigner ces facteurs, on parle plus généralement « d’embeddings » (plongements en français). Les algorithmes de recommandation les plus récents utilisent ainsi des méthodes de « deep learning » (soit à base de réseaux de neurones profonds) afin d’apprendre ces embeddings.

Cependant, bien que performantes, ces méthodes de recommandations ont un aspect « boîte noire » très prononcé. En effet, puisque la recommandation se fait sur la base de facteurs latents et donc, par définition, inobservables, il est compliqué d’expliquer pourquoi un produit est recommandé à un utilisateur donné. Il ne s’agit là que d’un des nombreux problèmes éthiques que posent les méthodes de recommandations récentes.

 

Des enjeux éthiques souvent mis de côté : le phénomène de bulles filtrantes

Recommandation de vidéos complotistes, suggestions de partenaires sur la base de critères ethniques ou de produits selon le niveau de vie de la ville de livraison… autant de dérives constatées chaque jour dans les suggestions de différents algorithmes de recommandation. Dans la majorité des cas, ceux-ci sont en effet conçus pour maximiser le temps que l’utilisateur passe sur la plateforme. L’un des principaux risques liés à cette stratégie est l’entretien de bulles filtrantes(ou “bulle de filtres”) : les internautes sont enfermés dans des bulles où le contenu qui leur est recommandé est toujours de la même nature. Plus formellement, l’expression “bulle filtrante” désigne l’état d’isolement intellectuel dans lequel se trouvent les internautes, suite au filtrage de l’information et du contenu qui leur est proposé. Ces bulles sont la résultante des choix faits par les internautes, mais aussi – et surtout – du fonctionnement des moteurs de recommandation de contenu. Le concept fut développé par Eli Pariser, activiste américain en faveur d’un filtrage juste de l’information.

Dans une interview accordée à La Data En Clair, Guillaume Chaslot, ex-salarié de Youtube et fondateur de l’association AlgoTransparency4, revenait sur ce phénomène de bulles filtrantes sur le site de vidéos le plus populaire du monde (voir l’interview sur notre site ici). Selon lui, ces bulles sont une conséquence inhérente au fonctionnement de l’algorithme de recommandation de vidéos de Youtube. En effet, celui-ci a pour principal objectif la maximisation du temps visionnage de vidéos, qui induit la maximisation des revenus publicitaires du site. Et l’une des solutions pour s’assurer que les internautes continuent à regarder des vidéos est de leur proposer exclusivement le même type de contenu que celui qu’ils ont déjà visionné5.

Le phénomène de bulle filtrante est également prédominant sur les réseaux sociaux, en particulier Facebook ou Twitter. Les opinions des internautes y sont auto-renforcées : le contenu qui est proposé à un utilisateur ne l’est que parce qu’il correspond aux idées de celui-ci. Par exemple, un internaute verra majoritairement du contenu en phase avec sa sensibilité politique. Les moteurs de recommandations contribuent donc à renforcer le biais de confirmation dont nous sommes souvent victimes6. Il s’agit là d’une des principales raisons pour laquelle les réseaux sociaux sont de nos jours un terrain de campagne et de recrutement crucial pour tous partis politiques… mais aussi pour les groupes terroristes.

S’il est facile de mettre en lumière les dérives engendrées par les systèmes de recommandations actuels, il est moins aisé de définir ce qu’est une bonne recommandation et une métrique permettant de l’évaluer. La bonne solution serait peut être de laisser l’utilisateur définir lui même ce qu’est une bonne recommandation pour lui. Ainsi, certaines extensions pour navigateur web permettent déjà de donner plus de contrôle à l’utilisateur sur le contenu qui lui est proposé. On peut par exemple citer Distraction Free Youtube pour la plateforme de vidéos de Google : il s’agit d’un plugin permettant de supprimer la lecture automatique, la barre de recommandation ou encore les commentaires sur Youtube. De même, l’extension StayFocusd, utilisée par plus de 750 000 internautes, permet de définir le temps maximal que l’on souhaite passer sur différents sites de façon totalement modulable. Elle permet également de bloquer certains types de contenu sur un site et donc d’atténuer le phénomène de bulles filtrantes.

Ces extensions sont une alternative possible, mais seule une prise de conscience de la part des fournisseurs de recommandations constituerait une solution durable au problème. A l’heure où les algorithmes de recommandations dictent une grande partie de nos comportements sur internet, il semble urgent de remettre l’utilisateur au cœur du processus en lui laissant plus de contrôle et de visibilité sur ce qu’il souhaite voir.

________________________________________________________________________________________________

Notes et Références:

1. Les préférences des utilisateurs sont en fait représentées comme des vecteurs. Par exemple, un utilisateur ayant noté 3 films avec des notes de 2/5, 4/5 et 3/5 sera représenté par le vecteur (2,4,3). On peut alors calculer la distance euclidienne entre les différents vecteurs des utilisateurs pour déterminer à quel point ils ont les mêmes préférences (c’est-à-dire à quel point ils ont donné la même note à un film donné)
2. Il s’agit d’une des méthodes les plus classiques en machine learning, permettant de déterminer les K plus proches voisins d’une observation donnée
3. Voir le site de la compétition : https://www.netflixprize.com/
4. AlgoTransparency milite pour rendre explicable les algorithmes de machine learning. Voir https://algotransparency.org
5. Pour plus de détails sur le fonctionnement de l’algorithme de recommandations de Youtube, on peut consulter l’article de l’équipe de recherche en charge du produit : Deep neural networks for Youtube recommendations (en anglais)
6. Biais cognitif consistant à privilégier et amasser des preuves renforçant nos croyances tout en occultant celles qui les contredisent