S'inscrire à la newsletter
Vecteurs de motsBrevetsSEO sémantique

Les vecteurs de mots et le SEO : le brevet Word2vec qui a appris à Google à placer les mots dans un espace de sens

Par 9 min de lecture
Vecteurs de mots : le brevet Word2vec de Google et le SEO, brevet US 9,037,464 B1Vecteurs de mots

Les vecteurs de mots sont des représentations numériques des mots, apprises à partir des mots qui les entourent, dans lesquelles les mots de sens proche sont voisins. Le brevet US 9,037,464 B1, « Calcul de représentations numériques des mots dans un espace de grande dimension », décrit comment Google les apprend. Google l'a déposé le 15 mars 2013, à partir d'une demande provisoire du 15 janvier 2013 intitulée « Calcul de représentations vectorielles », et le brevet a été délivré le 19 mai 2015.

Que décrit le brevet US 9,037,464 ?

Le brevet US 9,037,464 décrit un système qui entraîne une fonction de plongement et un classifieur à prédire des mots d'après leur contexte, puis conserve ce plongement comme représentation numérique de chaque mot. Ses 4 inventeurs sont Tomas Mikolov, Kai Chen, Gregory S. Corrado et Jeffrey A. Dean, et le titulaire d'origine est Google Inc. Ces 4 auteurs ont signé en 2013 le premier article de recherche sur Word2vec, « Estimation efficace des représentations de mots dans un espace vectoriel », et Jeffrey Dean a aussi cosigné le brevet sur l'indexation du texte d'ancre. Le brevet lui-même n'emploie jamais le nom Word2vec. Il compte 18 revendications et 5 planches de dessins.

Le résumé expose la méthode : obtenir « des suites de mots », entraîner « un classifieur et une fonction de plongement », puis traiter « chaque mot du vocabulaire » pour l'associer « à sa représentation numérique dans l'espace de grande dimension ».

Qu'est-ce qu'un vecteur de mot ?

Un vecteur de mot est une liste de nombres décimaux qui place un mot dans un espace de grande dimension. L'exemple simplifié du brevet : la fonction de plongement « peut associer le mot "chat" au vecteur [0.1, 0.5, 0.2] et le mot "tablette" au vecteur [0.3, 0.9, 0.0] ». Le brevet ajoute que les mots peuvent être représentés dans des espaces de très grande dimension, « par exemple des espaces de l'ordre de 1 000 dimensions, ce qui donne des représentations de meilleure qualité que dans des espaces de dimension relativement plus faible ».

La propriété clé : « la position des représentations dans l'espace de grande dimension peut refléter des similarités sémantiques, des similarités syntaxiques, ou les deux, entre les mots qu'elles représentent ».

Comment les vecteurs de mots sont-ils appris ?

Les vecteurs de mots sont appris en prédisant les mots à partir de leurs voisins. Le brevet décrit 2 architectures :

  1. Des mots voisins vers le mot manquant : le système reçoit les mots situés aux positions t − N à t + N autour d'un mot inconnu en position t, où N est un entier prédéterminé, associe chacun à un vecteur (par exemple au moyen d'une table de correspondance) et les fusionne en un seul vecteur. La fusion peut être une somme, une combinaison linéaire pondérée, un maximum composante par composante ou une combinaison linéaire à norme contrainte. L'exemple du brevet : « Atlanta » correspond à [0.1, 0.2, 0.3] et « hôtel » à [0.4, 0.5, 0.6], et leur somme vaut [0.5, 0.7, 0.9]. Un classifieur attribue ensuite un score à chaque mot d'« un ensemble prédéterminé de mots », et chaque score « représente la probabilité prédite que le mot correspondant soit le mot inconnu ».
  2. D'un mot vers ses voisins : le système reçoit un mot, l'associe à un vecteur et utilise « plusieurs classifieurs », chacun correspondant « à une position autour du mot d'entrée », pour prédire les mots qui l'entourent. Chaque classifieur a en général ses propres valeurs de paramètres et produit son propre vecteur de scores pour sa position.

Le classifieur peut être n'importe quel classifieur multiclasse ou multilabel, par exemple une régression logistique multiclasse, une machine à vecteurs de support multiclasse ou un classifieur bayésien. Dans certaines mises en œuvre, une fonction de classement (par exemple à perte charnière ou par paires) remplace le classifieur et ordonne les mots selon leur probabilité prédite.

Comment l'entraînement ajuste-t-il les vecteurs ?

L'entraînement ajuste les vecteurs par rétropropagation, sur des suites dont tous les mots sont connus. Quand les scores d'un classifieur « ne correspondent pas à la valeur réelle du mot inconnu », le classifieur ajuste ses paramètres « au moyen de méthodes classiques fondées sur le gradient », puis « envoie un signal d'erreur à la fonction de plongement », qui ajuste ses propres paramètres « au fil d'étapes successives de rétropropagation ».

Les mots d'entrée peuvent d'abord être découpés en unités, « de sorte que les composés connus, par exemple "New York", et d'autres noms d'entités soient traités comme un seul mot par le système ». Pour les grands ensembles d'entraînement, l'entraînement peut être parallélisé, par exemple avec les techniques de « Réseaux profonds distribués à grande échelle », un article de 2012 signé par Jeffrey Dean et d'autres. Le brevet affirme : « grâce à un système de prédiction de mots à architecture à deux couches et à la parallélisation de l'entraînement, le système peut être entraîné efficacement sur de très grands corpus, par exemple des corpus de l'ordre de 200 milliards de mots ».

Une fois l'entraînement terminé, le système traite chaque mot du vocabulaire avec la fonction de plongement entraînée et stocke les associations, « par exemple sous forme d'un jeu de données de mots et de leurs représentations associées ». Ces représentations « peuvent servir à de nombreux usages autres que l'entrée d'un classifieur ».

Que capturent les vecteurs de mots ?

Les vecteurs de mots capturent les similarités et les relations entre les mots. Le brevet donne 3 types d'exemples :

  1. La similarité syntaxique : « les mots proches du mot "small" (petit) incluent les mots "smaller" (plus petit), "tiny" (minuscule), "smallest" (le plus petit) ».
  2. La similarité sémantique : « le mot "reine" est proche des mots "roi" et "prince" ».
  3. Les analogies : « le mot "roi" est proche du mot "reine" au même sens que le mot "prince" est proche du mot "princesse" ».

Les relations deviennent des calculs. Des « soustractions et additions de vecteurs » permettent de trouver un mot ayant une relation donnée : pour trouver un mot qui a avec un mot A la même relation qu'un mot B avec un mot C, le système calcule vecteur(A) − vecteur(B) + vecteur(C). L'exemple du brevet : « l'opération vecteur("Roi") − vecteur("Homme") + vecteur("Femme") peut donner un vecteur qui est le plus proche de la représentation vectorielle du mot "Reine" ».

Que peut faire d'autre le système entraîné ?

Le système entraîné peut aussi utiliser directement ses prédictions. Le brevet cite 2 usages : prédire « des mots manquants à diverses positions dans des phrases », et un système de questions-réponses. Dans ce cas, le système « peut être entraîné sur des paires question-réponse connues, puis servir à prédire une question si tout ou partie d'une réponse est connue, ou une réponse si tout ou partie d'une question est connue ».

Que protègent les revendications ?

Les revendications protègent les 2 architectures, chacune sous forme de système et de méthode. Les 18 revendications comptent 4 revendications indépendantes :

  • Revendication 1 : un système dont la couche de plongement transforme les mots qui entourent un mot inconnu en une représentation numérique, une couche de classification qui note le mot inconnu probable, et des instructions pour calculer et associer la représentation de chaque mot du vocabulaire.
  • Revendication 5 : le même type de système avec un seul mot d'entrée et plusieurs classifieurs, un par position voisine.
  • Revendication 9 : la méthode qui entraîne plusieurs classifieurs et une fonction de plongement sur un mot d'entrée, puis attribue un point de l'espace de grande dimension à chaque mot du vocabulaire.
  • Revendication 14 : la méthode qui entraîne un classifieur et une fonction de plongement sur les mots qui entourent un mot inconnu, puis attribue un point à chaque mot du vocabulaire.

Les revendications dépendantes ajoutent les représentations en nombres à virgule flottante, des positions qui reflètent des similarités sémantiques ou syntaxiques, le vecteur fusionné construit à partir des vecteurs de plusieurs mots, et l'entraînement par rétropropagation.

Pourquoi ce brevet compte-t-il pour la recherche ?

Ce brevet compte parce que les vecteurs permettent de mesurer le sens, et pas seulement la correspondance des mots. Deux textes peuvent être proches dans l'espace vectoriel sans partager un seul mot. Google a confirmé en octobre 2015 que RankBrain, un système d'apprentissage automatique, l'aide à interpréter les requêtes, et des systèmes plus récents comme les résumés génératifs comparent des représentations vectorielles pour décider si un passage vérifie une phrase. Ce brevet ne décrit pas ces systèmes ; il décrit le socle sur lequel ils reposent : des mots devenus des positions dans un espace de sens.

Des méthodes plus anciennes visaient le même objectif avec des statistiques : l'indexation par phrases apprenait quelles phrases se prédisent, et les synonymes en contexte quels mots les internautes échangent. Les vecteurs poursuivent le même objectif de façon plus générale, avec une représentation apprise pour chaque mot.

Que changent les vecteurs de mots pour votre SEO ?

Les vecteurs de mots signifient qu'une page peut être comprise à travers le sens de son vocabulaire : couvrir un sujet avec ses termes naturels et liés compte plus que répéter un mot-clé. 5 conséquences en découlent :

  1. Couvrez le vocabulaire du sujet. Les vecteurs sont appris en prédisant chaque mot à partir des mots qui l'entourent : les mots employés dans les mêmes contextes finissent voisins, donc une page qui emploie les termes que les experts utilisent ensemble se place près du sujet.
  2. Arrêtez de répéter le mot-clé exact. « Small » (petit), « tiny » (minuscule) et « smaller » (plus petit) sont voisins : une formulation variée et naturelle peut être comprise comme le même concept.
  3. Nommez les entités avec précision. Des relations comme roi et reine sont encodées, et les composés connus comme « New York » et d'autres noms d'entités peuvent être traités comme un seul mot : écrivez le nom complet et usuel des entités liées à votre sujet.
  4. Écrivez des passages clairs et autonomes. Les systèmes fondés sur les représentations vectorielles comparent les passages à des requêtes ou à des phrases : un passage dont le sens est sans ambiguïté par lui-même est plus facile à apparier.
  5. Pensez en concepts, pas en chaînes de caractères. Optimisez pour ce que veut dire une requête, puisqu'une requête et une page peuvent être proches par le sens sans mot commun.

Nos briefs de SEO fondé sur les brevets appliquent ce principe : chacun liste les termes que les experts emploient autour du sujet et demande des passages dont le sens tient seul.

Le brevet décrit ce que le système de Google peut faire. Il ne confirme pas comment Google utilise aujourd'hui les vecteurs de mots dans son classement.

Quiz express

Avez-vous tout compris ?

Testez ce que vous venez de lire.

Question 1 sur 4

Que reflète la position d'un vecteur de mot ?

Articles liés

Nous lisons les brevets pour que vous n'ayez pas à le faire.

Chaque semaine : 3 enseignements SEO étayés par les données, 1 mythe démonté, 1 méthode à reprendre. Sans remplissage. Sans conseils de gourou.

Gratuit pour toujours. Désinscription à tout moment. Nous respectons votre boîte mail. Confidentialité.