Comment l’algorithme de YouTube fonctionne-t-il pour nous recommander ses vidéos?

Vous êtes-vous déjà demandé comment YouTube devine vos préférences et propose des vidéos à votre goût? La réponse est en trois mots: algorithmes de recommandation.

Sur le même sujet

abonné

Netflix, Facebook, Google ... Nos cerveaux adorent ça!

L’objectif de cet article est de présenter brièvement le principe de fonctionnement de ces algorithmes et de montrer comment de simples notions d’algèbre linéaire peuvent transformer un ordinateur en un véritable oracle. Dans la suite de l’article, nous prendrons YouTube comme exemple illustratif, mais le principe reste évidemment valable pour de nombreuses autres plateformes (Facebook, Netflix, Spotify, etc.).


• Lire aussi Science et vie : Netflix, Youtube: un contenu sans fin exaspère de plus en plus notre cortex visuel


Pour comprendre les préférences de chacun, rien de tel qu’une table

Le problème à résoudre est énoncé comme suit: considérez n vidéos et m Les internautes (m et n étant potentiellement très grande). Supposons que l’une des personnes ait déjà regardé certaines des vidéos disponibles. Alors, quelle (s) autre (s) vidéo (s) sera-t-elle le plus susceptible d’aimer?

Deux idées sont alors possibles: soit elle aimera des vidéos similaires à ce qu’elle a déjà aimé par le passé – on développe alors la technique du filtrage par contenu. Soit elle aimera ce qui a déjà plu à d’autres personnes comme elle – et nous opterons pour filtrage collaboratif.

La première idée nécessite une définition a priori de nombreux critères. En pratique, il n’est utilisé que dans des cas très spécifiques. Nous allons donc nous concentrer sur la deuxième idée.

Représentons notre problème avec une matrice D (de taille n X m) où chaque colonne représente une personne et chaque ligne représente une vidéo. Dans chaque case, nous mettons un nombre entre 0 et 4 (comme un système de notation avec 5 étoiles). La valeur 0 indique que la personne a détesté la vidéo et la valeur 4 indique qu’elle l’a aimé. Cette note varie selon le temps passé sur la vidéo, le fait d’avoir mis une mention «j’aime» ou non, le fait d’avoir commenté ou non, etc. Elle est en pratique calculée grâce à une recette confidentielle de YouTube. Une case correspondant à une vidéo qui n’a pas encore été visionnée par la personne reste vide. L’objectif de l’algorithme est alors de deviner les valeurs à mettre dans ces cases vides afin d’estimer quelle vidéo plaira le plus à l’utilisateur.

READ  Paulo Sousa est le nouvel entraîneur de l'équipe nationale. Pourquoi ça ne s'est pas bien passé ces derniers temps?
Nous créons un tableau avec les notes de chaque utilisateur pour les vidéos qu’il a vues. S’il n’a pas vu la vidéo, la boîte est vide.Athmane Bakhta, Auteur fourni

L’idée du filtrage collaboratif est de considérer que la préférence d’une personne pour une vidéo sera donnée par un “produit scalaire” de deux vecteurs. u et v représentant respectivement les caractéristiques de la personne et celles de la vidéo. S’il y a une absence totale de caractéristiques communes entre la personne et la vidéo, on dit que u est “orthogonal” à v et le produit scalaire uv est zéro. À l’inverse, si la personne et la vidéo ont des caractéristiques communes, les vecteurs u et v sont dits «quasi colinéaires» et leur produit scalaire donne un score élevé.

En déterminant les caractéristiques communes entre les vidéos et les internautes, on peut ainsi attribuer une note potentielle à chaque vidéo: la note que l’utilisateur placerait (peut-être) sur cette vidéo s’il la regardait.

Utilisez un outil d’algèbre linéaire de base

L’idée mathématique sous-jacente est de décomposer la matrice de données D en un produit de deux petites matrices U et V.Une telle décomposition permet de caractériser les personnes (via la matrice U) et les vidéos (via la matrice V) par un petit nombre k de vecteurs.

Ainsi, pour chaque case remplie (par exemple la case verte sur la figure), nous chercherons les vecteurs u (indiqué en bleu) et v (représenté en rouge) Matrices U et V telles que le produit u X v ou aussi proche que possible de la valeur de la case verte. Pour les plus curieux, cela revient à résoudre un problème d’optimisation.

READ  A Saint-Etienne (Loire), un hôpital privé au cœur de la deuxième vague du coronavirus

Il suffit en effet de multiplier les lignes de U par les colonnes de V pour trouver les valeurs de toutes les cases vides et ainsi estimer la préférence future de chaque personne pour chaque vidéo.


• Lire aussi Science et vie : Algorithmes: une nouvelle intelligence est née


En raison du nombre gigantesque de personnes et de vidéos, la résolution de ce problème nécessite l’utilisation dealgorithmes d’apprentissage comme les réseaux de neurones qui sont beaucoup plus rapides que les techniques d’optimisation traditionnelles.

Est-ce vraiment aussi simple que cela?

On se demande si c’est vraiment ce que fait YouTube – la réponse est oui en principe, mais avec beaucoup d’améliorations bien sûr. Le véritable système de recommandation de YouTube combine en fait deux réseaux de neurones profonds, comme expliqué dans cet article. Le premier permet d’identifier quelques centaines de candidats parmi les millions de vidéos disponibles et le second attribue un score à chaque candidat à l’aide de la décomposition matricielle expliquée dans cet article.La conversation

Cet article est republié à partir de The Conversation sous une licence Creative Commons. Lis learticle original.

Nous serions ravis de connaître votre avis

Laisser un commentaire

Mercatoshow.com