Présentée en 2008 avec iTunes 8.0, la fonction de recommandation de morceaux Genius avait attiré l'attention ainsi que des questions sur son fonctionnement. Erik Goldman, un ancien ingénieur d'Apple ayant travaillé sur Genius, révèle aujourd'hui une partie de ses secrets.
Le point de départ, on s'en doutait, consiste à collecter les données des bibliothèques des utilisateurs, c'est-à-dire quels morceaux sont dans leur bibliothèque, et certainement la fréquence de lecture de chaque morceau. La totalité des données de tous les utilisateurs ayant activé Genius forme « une immense base de données d'utilisateurs et de morceaux ».
Toutes les bibliothèques sont comparées entre elles, et les données sont passées au filtre d'un premier algorithme assez simple de recommandation — le même genre d'algorithme que ceux que les boutiques en ligne utilisent pour vous proposer des objets en rapport avec ceux que vous avez déjà achetés.
« Les données sont calculées globalement à intervalles réguliers et stockées en cache » : la similarité entre deux morceaux change peu, les seules raisons d'un changement étant la sortie de nouveaux morceaux et l'arrivée de nouveaux artistes, et la variation des goûts des auditeurs, l'un influant sur l'autre.
Goldman ne peut pas révéler tous les secrets mathématiques se cachant derrière Genius : « si je vous le disais, je devrais vous tuer », blague-t-il pour dire poliment que c'est le genre de choses qu'Apple lui interdit de révéler.
Il donne tout de même quelques indices sur la manière dont Genius associe une chanson à une autre, et surtout sur la manière dont il préfère associer tel morceau plutôt que tel autre à une chanson. Pour faire simple, Genius utilise la méthode TF-IDF, une méthode statistique notamment utilisée en fouille de texte. Appliquée à Genius, elle permet d'évaluer l'importance d'une chanson dans une bibliothèque par rapport aux autres chansons : chaque nouvelle lecture d'un morceau lui accorde plus d'importance que les autres.
Il faut ensuite déterminer la pertinence de l'information : on va souvent trouver des bibliothèques ayant joué de nombreuses fois les Beatles, groupe universel. Si une bibliothèque a joué les Beatles beaucoup plus que la moyenne, Genius va creuser un peu plus loin. Et si une bibliothèque se concentre exclusivement sur un sous-genre obscur du métal, il y a là aussi matière à creuser. Le but du jeu est de se servir de la manière dont les utilisateurs écoutent leur musique, la manière dont ils associent les morceaux entre eux dans des listes de lecture, des compilations, etc., pour déterminer comment associer deux morceaux entre eux.
Enfin, les mathématiques et statistiques sont une nouvelle fois mises à contribution pour déterminer quelle chanson d'une chanson A et d'une chanson B est plus proche d'une chanson C. Au final, Genius est donc capable d'associer deux chansons, en combinant l'intelligence collective et l'intelligence artificielle.
Pour ceux qui veulent comprendre plus en détail le fonctionnement de Genius, Erik Goldman conseille d'aller lire l'article d'ingénieurs d'AT&T qui ont gagné un prix d'un million de dollars pour avoir trouvé un algorithme de recommandation plus simple et plus performant pour le loueur de films en ligne Netflix. Pour les autres, le résumé est simple : Genius fait des maths horriblement compliquées à partir des données agrégées des utilisateurs d'iTunes.
Le point de départ, on s'en doutait, consiste à collecter les données des bibliothèques des utilisateurs, c'est-à-dire quels morceaux sont dans leur bibliothèque, et certainement la fréquence de lecture de chaque morceau. La totalité des données de tous les utilisateurs ayant activé Genius forme « une immense base de données d'utilisateurs et de morceaux ».
Toutes les bibliothèques sont comparées entre elles, et les données sont passées au filtre d'un premier algorithme assez simple de recommandation — le même genre d'algorithme que ceux que les boutiques en ligne utilisent pour vous proposer des objets en rapport avec ceux que vous avez déjà achetés.
« Les données sont calculées globalement à intervalles réguliers et stockées en cache » : la similarité entre deux morceaux change peu, les seules raisons d'un changement étant la sortie de nouveaux morceaux et l'arrivée de nouveaux artistes, et la variation des goûts des auditeurs, l'un influant sur l'autre.
Goldman ne peut pas révéler tous les secrets mathématiques se cachant derrière Genius : « si je vous le disais, je devrais vous tuer », blague-t-il pour dire poliment que c'est le genre de choses qu'Apple lui interdit de révéler.
Il donne tout de même quelques indices sur la manière dont Genius associe une chanson à une autre, et surtout sur la manière dont il préfère associer tel morceau plutôt que tel autre à une chanson. Pour faire simple, Genius utilise la méthode TF-IDF, une méthode statistique notamment utilisée en fouille de texte. Appliquée à Genius, elle permet d'évaluer l'importance d'une chanson dans une bibliothèque par rapport aux autres chansons : chaque nouvelle lecture d'un morceau lui accorde plus d'importance que les autres.
Il faut ensuite déterminer la pertinence de l'information : on va souvent trouver des bibliothèques ayant joué de nombreuses fois les Beatles, groupe universel. Si une bibliothèque a joué les Beatles beaucoup plus que la moyenne, Genius va creuser un peu plus loin. Et si une bibliothèque se concentre exclusivement sur un sous-genre obscur du métal, il y a là aussi matière à creuser. Le but du jeu est de se servir de la manière dont les utilisateurs écoutent leur musique, la manière dont ils associent les morceaux entre eux dans des listes de lecture, des compilations, etc., pour déterminer comment associer deux morceaux entre eux.
Enfin, les mathématiques et statistiques sont une nouvelle fois mises à contribution pour déterminer quelle chanson d'une chanson A et d'une chanson B est plus proche d'une chanson C. Au final, Genius est donc capable d'associer deux chansons, en combinant l'intelligence collective et l'intelligence artificielle.
Pour ceux qui veulent comprendre plus en détail le fonctionnement de Genius, Erik Goldman conseille d'aller lire l'article d'ingénieurs d'AT&T qui ont gagné un prix d'un million de dollars pour avoir trouvé un algorithme de recommandation plus simple et plus performant pour le loueur de films en ligne Netflix. Pour les autres, le résumé est simple : Genius fait des maths horriblement compliquées à partir des données agrégées des utilisateurs d'iTunes.