systèmes de recommandations

Le machine learning pour les systèmes de recommandations

Lundi soir, 20h00. Vous rentrez à la maison, épuisés d’une longue journée de travail. Vous vous installez confortablement devant Netflix et à 2h du matin le même soir, vous y êtes encore. Si vous connaissez ce scénario, on vous comprend ! Ce n’est pas seulement de votre faute (mouais…vous devriez faire un peu attention quand même hahaa), les systèmes de recommandations en sont pour beaucoup.

Le machine learning pour les systèmes de recommandations

Il faut dire que Netflix sait comment vous garder sur sa plateforme. Et pour cela, ils développent des algorithmes de recommandations très robustes. C’est même ça le cœur de leur métier. Les algorithmes de recommandations sont de plus en plus présents dans notre quotidien. Ils sont utilisés principalement en e-commerce pour la recommandation de produits, par les plateformes de divertissements comme Netflix ou YouTube. On les retrouve aussi dans les algorithmes de newsfeed des réseaux sociaux.

Comment fonctionnent les algorithmes de recommandations en pratique ?


De façon intuitive, les algorithmes de recommandations reposent sur l’estimation de la probabilité qu’une personne aime un certain produit. Pour calculer cette probabilité, il existe différentes manières d’appréhender le problème.

Systèmes de recommandations qui reposent sur la popularité d’un contenu

Le système le plus basique que l’on puisse trouver repose sur un principe simple. L’idée est que si quelque chose plaît à beaucoup d’utilisateurs, elle devrait vous plaire à vous aussi. Le principe est très intuitif et ne fait intervenir de machine learning à aucun moment.

Pour cela, la plateforme construit des tendances en analysant des statistiques simples sur le produit. Par exemple, Netflix construit la rubrique Tendances à partir du nombre d’utilisateurs qui ont suivi un film et une série. Elle prend aussi en compte le temps moyens regardés pour chaque contenu.

Systèmes de recommandations de Netflix
Système de recommandation de Netflix

Content based filtering

La seconde approche, celle dite de “content based filtering”, repose sur l’évaluation de la similarité entre différents produits. Ainsi, si vous achetez régulièrement des produits d’une marque X, le système vous recommandera les produits de la marque X avec une plus grande probabilité.

Systèmes de recommandations : content based filtering
Principe du content based filtering

Le problème est donc ramené à un problème de classification des produits. Le calcul de la similarité entre les différents produits peut se faire de différentes façon, on peut par exemple classifier les produits grâce à leurs images ou avec leur descriptions. Nous cherchons à concevoir un outil de machine learning pour classer des produits à partir de leurs descriptions.

Ainsi, on voit que les systèmes de recommandations font intervenir des techniques diverses de machine learning : NLP, traitements d’images, traitements de vidéos ou de bandes sons, etc. L’objectif est toujours de transformer les objets traités en données exploitables par les machines. La mode aujourd’hui est de travailler avec des vecteurs. Beaucoup de modèles existent pour faire cette transformation, voici quelques exemples :

  • Word2vec pour les données textuelles
  • Wav2vec pour la reconnaissance vocale
  • Doc2vec pour des documents divers

Systèmes de recommandations de type filtrage collaboratif

La troisième méthode est la plus utilisée, elle est appelée filtrage collaboratif. Elle repose sur un principe de base : dites moi qui sont vos amis, je vous dirais qui vous êtes. Le filtrage collaboratif est une méthode qui permet de détecter des ressemblances dans le comportement de certains clients.

Cette technique fonctionne de la même manière que la technique précédente, sauf qu’ici on s’intéresse aux similarités entres les individus. Si deux utilisateurs ont aimés les mêmes produits à plusieurs reprises, on peut prédire de façon plus ou moins précise l’avis d’un des deux utilisateurs à partir de celui du deuxième.

Le machine learning pour les systèmes de recommandations
Illustration du filtrage collaboratif

Sur l’exemple ci-dessus, le dernier utilisateurs semble avoir les mêmes préférences que le 4ème, on peut donc lui proposer de regarder Marvel avec une probabilité qu’il apprécie ce film assez élevée. En revanche, la probabilité que le 4ème film lui plaise est assez faible, on ne le lui proposera pas.

Le machine learning pour les systèmes de recommandations
Filtrage collaboratif (2)

Ce n’est pas illustré dans cet exemple, mais on pourrait aussi considérer le cas d’utilisateurs qui auraient des goûts opposés. A l’heure actuelle, il semblerait que les algorithmes utilisés par les grandes entreprises seraient un mix entre l’approche qui repose sur le contenu et l’approche qui compare les avis des utilisateurs. Mais le vrai défi repose essentiellement dans le traitement et l’encodage des objets manipulés.

Enjeux éthiques des systèmes de recommandations

Ce type d’algorithmes décident pour vous. En plus de vous suggérer des films à regarder, ils décident de ce que vous allez manger ce soir, ce que vous allez porter demain et peuvent même choisir vos amis à votre place..

C’est pour cela que les enjeux éthiques des systèmes de recommandations sont à prendre en considération. En plus d’être parfois intrusives dans la vie privée des utilisateurs, les algorithmes de recommandations ont une influence sérieuse sur le quotidien de millions de personnes dans le monde.

Protection des données de l’utilisateurs

Vous l’aurez compris, pour construire un algorithme de recommandation, les data scientist ont besoins de vos données. Les données sont variées, ils concernent vos anciens achats, vos clics sur les différents produits, le temps que vous avez passé sur tel site, vos recherches sur internet et beaucoup d’autres choses.

Naturellement, cela pose des problèmes d’éthiques. Même si les données récoltées sont souvent anonymisées, internet semble être un lieu ou la protection de la vie privée est devenue un aspect secondaire.

Les algorithmes de recommandations ont plus de pouvoirs que vous ne le pensez

Lorsque l’on parle d’intelligence artificielle, les gens pensent souvent aux robots tueurs qui prennent le contrôle de l’humanité. Effectivement l’IA peut être dangereuse, mais il faut avoir conscience que le danger des IA ce n’est pas les robots tueurs misent en scène dans les films de science fiction, le danger des IA réside dans les algorithmes que nous utilisons au quotidien. Vous devriez craindre beaucoup plus les algorithmes de newsfeed que les robots tueurs de Terminator !

A ce sujet, une étude réalisée en 2013 par Facebook en partenariat avec les universités de Cornell et de l’UC San Diego, a montré comment une modification minime dans l’algorithme de Facebook, a affecté l’humeur de milliers d’utilisateurs.

Ceci est lié au fait que Facebook stock chacune de vos réactions aux différents contenus qui vous sont proposés. L’algorithme sait donc exactement ce que vous aimez, il sait quel type de contenu est susceptible de vous effrayer, il sait comment vous rendre triste et quels type de contenu vous fait rire…

Le problème de fixation

Un danger moins évident des systèmes de recommandations est celui qui repose sur le problème de fixation. Pour illustrer ce problème, considérons une urne composée de boules bleues et rouges en quantité égales initialement.

A la première étape on tire une boule au hasard, la probabilité de tomber sur une boule rouge (respectivement bleu) est de ½. A chaque étape si on tire une boule rouge on la remet et on en rajoute 2 de la même couleur. Au bout de plusieurs étapes, on verra apparaître un phénomène de fixation sur la couleur rouge. On peut même prouver que la probabilité de tomber sur une boule rouge tendra vers 1 au fur et à mesure des étapes.

Problème de fixation en machine learning
Illustration du problème de fixation

Je vous parle de ce problème car ce phénomène est observable dans l’algorithme de YouTube. Imaginons maintenant que les boules rouges représentent des vidéos politiques de droites et les boules bleues des vidéos de gauche. Au fur et à mesure que l’utilisateur cliquera sur des vidéos, son opinion politique sera de plus en plus influencée.

Ce problème de fixation peut donc être à l’origine de pensées extrémistes. Evidemment, il est important d’avoir conscience des enjeux éthiques des algorithmes de recommandations, mais cela ne doit pas ralentir le développement de ces techniques.

Même s’ils peuvent être dangereux, lorsqu’ils sont utilisés de façon responsable il ne peuvent qu’être bénéfique pour la société. Un effort doit être fait pour rendre les systèmes de recommandations éthiques, explicables et bénéfiques pour l’utilisateur, sans perdre en efficacité.