máthēma · Revue de vulgarisation mathématique
Google, ou les mots sous un autre angle
Google, ou
les mots sous un
autre angle
Vendredi soir, 19 h 30. Vous avez faim. Faim pour un hamburger ou… quelque chose du genre. Vous prenez votre téléphone cellulaire et tapez « restaurants hamburger » sur Google.
Sans surprise, quelques restaurants spécialisés dans la galette carnée s'affichent d'abord.
Puis, d'autres offres apparaissent : hot-dogs, tacos, fajitas…
Ces choix vous semblent logiques par rapport à votre requête initiale. Vous finissez même par opter pour un restaurant mexicain où vous pourrez déguster un taco au bœuf garni de vos accompagnements préférés. Après tout, nous ne sommes pas si loin de votre envie initiale.
Mais la question se pose : comment Google a-t-il su vous présenter des offres différentes de votre demande de départ, tout en respectant une certaine proximité avec elle ? Car, même en faisant défiler à nouveau les nombreuses options présentées, vous remarquez qu’aucune ne concerne un plat de pâtes carbonara ou encore une assiette de poulet Général Tao. Comment Google arrive-t-il à reconnaître la similarité entre certains mots et la divergence avec d'autres ?
Possède-t-il un nombre incalculable de listes de mots apparentés ?
Est-ce seulement une question de priorité publicitaire ?
La réponse à cette question réside dans la technique dite du word embedding ou son équivalent français, le plongement lexical.
Cette technique est désarmante de simplicité et tout étudiant ayant suivi un cours d'algèbre linéaire et de géométrie vectorielle possède les qualifications pour en comprendre les rouages.
Le word embedding
Pour illustrer le concept, nous allons reprendre certains des mots cités plus haut, soit hamburger, hot-dog, tacos et carbonara. La clé de la technique consiste à définir un certain nombre de caractéristiques qui peuvent qualifier ces mots. Ensuite, on quantifie la présence de cette caractéristique sur une échelle de 0 (pas du tout) à 1 (complètement).
Dans notre cas, prenons les caractéristiques suivantes :
- Repas de type fast-foodIndique si le repas est typiquement servi dans des restaurants rapides.
- Repas de type sandwichDésigne si le repas est considéré comme un sandwich.
- Présence de viandeMesure dans quelle mesure le plat est centré sur la viande.
- Coût élevéÉvalue si le repas est généralement considéré comme coûteux.
- Nécessite des ustensilesIndique si le repas nécessite l'utilisation de couverts pour être consommé proprement.
Chaque mot est ensuite converti en un vecteur (ici à 5 dimensions) quantifiant les différents aspects. Cela pourrait donner quelque chose comme :
Évidemment, ces nombres peuvent être sujets à débat et certains seront offusqués de voir un hot-dog considéré comme un représentant de la famille des sandwichs ! Libre à vous de faire les adaptations nécessaires.
Un important pas a été franchi : les mots sont devenus des vecteurs et ont ainsi pénétré le monde des mathématiques. De là, une vaste gamme d'outils peuvent permettre de les manipuler. La méthode qu'utilise Google (ou ChatGPT, par ailleurs) est le calcul de l'angle entre les vecteurs (et donc entre les mots). Ainsi, plus deux vecteurs sont séparés par un angle faible, plus les mots qu'ils représentent sont considérés comme apparentés.
Le calcul de l'angle entre ces vecteurs s'effectue à l'aide des deux définitions du produit scalaire (voir encadré).
En appliquant ce processus à chaque duo de vecteurs, on obtient :
| DUO DE REPAS | ANGLE OBTENU |
|---|---|
| Burger vs hot-dog | 7,01° |
| Burger vs tacos | 11,95° |
| Burger vs carbonara | 61,00° |
| Hot-dog vs tacos | 10,16° |
| Hot-dog vs carbonara | 63,29° |
| Tacos vs carbonara | 54,71° |
Ces angles montrent que les plats plus similaires en termes de caractéristiques (comme hamburger et hot-dog) ont de petits angles entre leurs vecteurs, indiquant qu'ils sont physiquement proches dans l'espace vectoriel. À l'inverse, les plats très différents (comme carbonara par rapport à hamburger ou hot-dog) ont de grands angles entre leurs vecteurs, indiquant une grande disparité dans leurs caractéristiques.
Atelier interactif en ligne
Cette page comporte un atelier interactif. Pour l’essayer, rendez-vous à https://revuemathema.com/1/google-ou-les-mots-sous-un-autre-angle/ ou balayez le code QR.
Libre à vous de faire les adaptations
Atelier interactifModifiez les notes (de 0 à 1) : les six angles sont recalculés aussitôt. Touchez un duo pour voir le détail du calcul.
C'est donc sur cette base que votre recherche Google vous présente des résultats si apparentés et laisse de côté ceux qui s'éloignent trop, au propre comme au figuré, les uns des autres. Évidemment, dans la pratique, on utilise plutôt des centaines de caractéristiques pour définir les mots, permettant ainsi une bien meilleure finesse dans la comparaison entre ceux-ci.
Cette technique a l'avantage de pouvoir s'appliquer dans tous les contextes et pour tous les mots auxquels vous pouvez penser, que ce soit pour décrire des sports, des films ou encore des races de chiens. La force de cette méthode est immense et sa beauté réside dans la simplicité et l'accessibilité des concepts mathématiques qui la sous-tendent.
Comme quoi même les concepts vus au collégial peuvent révolutionner la vie quotidienne des internautes de la planète.
Sources
Mikolov, T., Chen, K., Corrado, G. et Dean, J. (2013). « Efficient Estimation of Word Representations in Vector Space ». arXiv, 1301.3781. https://arxiv.org/abs/1301.3781
Texte de Maxime Savary, paru dans máthēma, revue de vulgarisation mathématique, numéro 1 (Septembre 2024).
Version en ligne et ateliers interactifs : https://revuemathema.com/1/google-ou-les-mots-sous-un-autre-angle/
Ne manquez pas le prochain numéro
Trois parutions par année, directement dans votre boîte courriel. C’est gratuit, et vous pouvez vous désabonner en tout temps.