Parlons recommandation : Partie 2 / Le modèle Spotify
Après un premier article sur les modèles de recommandation, nous revoilà comme promis avec un second article dédié au cas Spotify, acteur culturel passé maître dans l’art de la recommandation.
Spotify et le Discover Weekly
Discover Weekly est une application proposant tous les lundis une playlist de 30 chansons faite sur mesure. Chaque chanson recommandée est soigneusement choisie en fonction des goûts de l’utilisateur. Mais Spotify ne se contente pas de rassembler des chansons déjà écoutées dans une playlist, le vrai plus de cette nouvelle fonctionnalité réside dans la découverte de nouveaux artistes et de nouveaux styles encore inconnus de l’utilisateur.
Quid du « connais-toi toi-même » ?
Spotify semble défier la célèbre maxime socratique en proposant des titres que nous ne serions pas allés chercher tout seuls. Et ça marche ! Les tweets faisant acte de l’efficacité des recommandations ne manquent pas, en voici quelques-uns à l’appui :
La recommandation made in Spotify
Pour parvenir à ce résultat, Spotify utilise à la fois le collaborative filtering et le content-based filtering, les deux modèles dont nous avons décrit les mécanismes dans un premier article (à lire ici!).
Le collaborative filtering
Toutes les données collectées sur Spotify sont des données de goûts « implicites ». En effet, il n’y a pas de système de notation des contenus comme on peut le trouver sur Netflix ou sur YouTube. Sur Spotify, les données des utilisateurs sont des données de navigation, d’écoute, et de playlist. On va regarder par exemple si la personne a visité la page d’un artiste après avoir écouté une chanson, quelles chansons il a enregistré dans sa playlist, le temps d’écoute moyen sur tel genre etc.
Le but de tout cela, c’est de comparer les goûts des utilisateurs afin d’identifier des similarités de goûts entre eux. Par exemple, si Oliver et Marc écoutent tous les deux les chansons A, B, C, et D, on va en déduire qu’ils ont des goûts similaires. A partir de là, l’algorithme supposera que chaque chanson écoutée par l’un est susceptible d’intéresser l’autre. Si Oliver écoute une chanson E, l’algorithme de Spotify la recommandera donc à Marc. De la même manière, si Marc écoute une chanson F, Spotify la recommandera à Oliver.
Le concept est plutôt basique, mais le volume rend les choses ardues. Ce système de recommandation est en réalité une véritable machine algorithmique faisant tourner un nombre de données assez impressionnant. On parle ici de plusieurs centaines de millions de chansons recommandées sur la base d’autres millions de préférences de goût analysées.
Le content-based filtering
Le deuxième mode de recommandation utilisé par Spotify est le content-based filtering. Contrairement au collaborative filtering, le content-based filtering se nourrit de données sur les contenus et non sur le comportement des utilisateurs. Dans le cas de Spotify, le contenu analysé est, d’une part, du contenu textuel, et d’autre part, de l’analyse sonore.
Données textuelles
Spotify récolte et analyse des données textuelles sur internet. Cette méthode fait partie de ce qu’on appelle le Traitement Automatique des Langues (“TAL” ou en anglais “Natural Language Processing”). L’entreprise de streaming collecte donc ce qui se dit sur tel artiste ou tel album, les adjectifs utilisés, la fréquence des mentions ou encore les autres artistes ou chansons dont on parle en même temps. Des “top terms” sont alors identifiés, et chacun d’entre eux a un poids associé selon la probabilité que quelqu’un décrive l’artiste ou la chanson en employant ce terme. Dans l’exemple ci-dessous, la probabilité que l’artiste soit qualifié de “perky”, ou “gai » en français, est la plus haute.
Ensuite, Spotify peut rapprocher les contenus similaires en fonction de ces « top terms » (qui évoluent constamment) et baser ses recommandations sur la base de ces rapprochements, à l’image du collaborative filtering.
Données sonores
Spotify récole également des données sonores : rythme, tempo, niveau de basses etc. L’objectif est le même que pour le textuel, caractériser des contenus, mais avec un atout supplémentaire considérable, qui est celui d’éviter la discrimination et la redirection vers des contenus déjà très populaires.
Imaginons qu’un jeune artiste encore peu connu mette une chanson sur Spotify et ne cumule que 50 écoutes. Les deux modes de recommandation précédents ne permettraient pas de le trouver puisqu’il y a très peu d’écoutes à l’origine et donc peu de “matchs” probables. De la même manière, il y aurait encore peu de données textuelles sur internet, donc le deuxième modèle passe à côté également. Pas de discrimination en revanche avec le mode d’analyse sonore entre les nouveaux et anciens sons : la chanson du jeune artiste aura autant de chances de se retrouver dans une playlist qu’une chanson très écoutée.
Le tweet ci-dessous rédigé par un artiste s’étonnant de voir les écoutes de son titre augmenter sur Spotify illustre bien cet effet non discriminant :
…La découverte : nouveau graal de la recommandation ?
Spotify a travaillé dur pour connaître les appétences culturelles de ses utilisateurs. Mais n’est-ce pas que la première étape ? Les efforts de l’entreprise de streaming pour favoriser la découverte de nouveaux artistes nous montrent que l’enjeu principal se situe plutôt en aval : ouvrir les portes de la consommation culturelle. Il reste encore beaucoup à faire, mais un futur dans lequel l’innovation dans la recommandation servira la cause de la diversité semble se dessiner avec de plus en plus de force, et ce n’est pas pour nous déplaire !
#serendipity
PS: Un grand merci à Sophia Ciocca pour son excellent article sur Medium qui nous a beaucoup inspiré !
Originally published at delight-data.com on May 14, 2018.