Le monde des moteurs de recherche et de leur fonctionnement interne regorge d'expressions et d'acronymes parfois complexes à comprendre, ce qui génère souvent des malentendus. Voici un petit lexique qui vous en dira plus, de façon claire et concise, sur de nombreux termes utilisés très souvent dans ce domaine.
Ce mois-ci, nous avons proposé à Sylvain Peyronnet un petit exercice pas si facile : nous lui avons envoyé une liste de mots, d'expressions et d'acronymes qu'on lit ou entend très souvent dans le domaine qu'il connait le mieux : l'algorithmie des moteurs de recherche. Le but ? Répondre de la façon la plus concise et la plus pertinente possible, afin d'obtenir des définitions et des repères fiables dans notre compréhension de ce domaine et d'éviter de nombreux malentendus, souvent dus à une mauvaise compréhension par certains des termes du métier. C'est parti (classement par ordre alphabétique) :
Authorship et AuthorRank
Il s’agit ici d’identifier l’auteur d’un contenu web (via une donnée structurée, par exemple au format JSON-LD). L’idée étant ensuite que Google pourrait utiliser cette information pour qualifier des auteurs, et mettre en avant (ou pas) leurs contenus.
Les diverses expériences de Google sur le sujet de l’authorship sont plutôt malheureuses (grosse vague de spam au début des années 2010 en raison de ce mécanisme), et il y a fort à parier que l’authorship des années 2020 n’a pas grande utilité pour le SEO (mais pour le reste ? mystère…).
BERT
BERT est un terme sur lequel Google entretient une certaine confusion. C’est en effet le nom donné à un update algorithmique, et c’est aussi le nom de l’objet algorithmique en question.
BERT signifie Bidirectional Encoder Representations from Transformers, c’est un modèle de la langue dont la théorie a été développée par Jacob Devlin et ses collègues chez Google.
Ce modèle utilise des transformers (un type de réseau de neurones spécifiques, que l’on retrouve aussi dans GPT-3 par exemple) pour comprendre les relations entre les mots d’un même contexte.
Avec BERT on peut faire un vecteur de contexte pour chaque mot d’un texte, là où les approches des années 2000-2010 se contentaient de faire un vecteur par document. Cette finesse dans l’approche permet de mieux comprendre le sens des mots, entre autres. Pour Google, BERT est un outil qui réalise beaucoup de tâches, mais à l’origine, son premier objectif était de mieux comprendre l’intention des requêtes peu tapées par les internautes (celles sur lesquelles le moteur a donc peu d’information de satisfaction utilisateur).
BM25
Okapi BM25 est une mesure de l’importance des termes d’un texte basée sur le modèle probabiliste de pertinence. Il s’agit de la 25ème version du best matching (BM) du système Okapi (et oui, les chercheurs ont du génie pour trouver des noms !).
C’est techniquement une évolution des mesures de type TF-IDF, avec une meilleure prise en compte d’éléments liés à la requête. On notera qu’il existe une version encore plus spécifique, BM25F, qui prend en compte la structure du document analysé ainsi que les textes d’ancres des liens vers la page. Pendant des années, BM25 et les mesures similaires ont été l’état de l’art des mesures d’importance des termes utilisées par les moteurs de recherche.
Caffeine
Caffeine est le nom d’une refonte complète de Google ayant eu lieu en 2010. Il s’agit d’une modification profonde, qui a impacté l’infrastructure et l’algorithmique associé.
Comme toujours, il est très difficile de savoir de manière sûre ce qui a été modifié, mais cela a été l’occasion pour Google de passer à un traitement en continu des pages, et aussi d’industrialiser une forme de PageRank thématique et la personnalisation des résultats.
Il faut vraiment noter que cela a été l’occasion d’une modification des infrastructures de calcul, avec Caffeine on est sur un renouvellement de ce qu’est Google, pas juste des modifications à la marge.
EAT
EAT est l’acronyme pour Expertise, Authoritativeness, Trustworthiness. Il s’agit de la mise en avant par Google, dans un guide à l’usage de ses Quality Raters, des critères qui font un bon contenu et qui vont être jugés par un ou plusieurs des algorithmes du moteur.
C’est lors de la mise à jour Medic en août 2018 que les critères EAT font leur apparition dans le guide des Quality Raters.
Pour le reste, pas trop de grands mystères, Google nous dit qu’un site web avec des contenus doit être jugé en analysant expertise, autorité et confiance… La belle affaire !
ELMo
ELMo est une méthode de calcul des embeddings vectoriel basé sur un modèle de la langue bi-directionnel.
ELMo est de fait une des premières méthodes qui prend en compte le contexte (là où word2vec ou GLoVe ne le font pas). Pour cela le sens d’un mot va dépendre de tous les mots de la phrase qui le contient (le contexte donc). Cela permet d’avoir une bien meilleure compréhension du sens des mots, notamment dans les cas de polysémie.
GPT-3
GPT-3 (Generative Pre-trained Transformer 3) est un modèle de la langue créée par OpenAI. Modèle avec 175 milliard de paramètres, c’était à la date de sa sortie le plus gros modèle existant, et c’est toujours l’un des plus gros. Il a permis de montrer au monde la puissance des modèles à base de transformers, notamment via ses capacités de génération de textes qui peuvent tromper, dans certains cas, les lecteurs humains.
Le modèle est capable de faire de la classification de texte, de la réponse aux questions, de la génération de contenu, du résumé automatique, de la traduction, etc.
Ses capacités exceptionnelles sont dues à l’utilisation des transformers et du mécanisme d’attention. Ce dernier point est crucial, GPT-3 sait traiter l’information de manière hiérarchique ou différenciée plutôt que de manière séquentielle comme le font d’autres modèles.
HITS
A la fin des années 90, Google a sorti le fameux PageRank, mais peu de SEO savent qu’à l’époque un chercheur (Jon Kleinberg) avait mis au point un algorithme permettant de classer les pages web selon un mécanisme mêlant autorité et une forme de thématisation.
Cet algorithme s’appelle HITS pour Hyperlink-Induced Topic Search. L’idée est d’associer à chaque page web un score d’autorité, mais aussi un score hub. Le premier vise à savoir si une page est importante au sens de la popularité (dans l’idée du PageRank), tandis que le deuxième indique qu’une page contient beaucoup de liens vers des pages importantes.
Cet algorithme est un algorithme de « deuxième passe » : on l’utilise sur un sous-ensemble de pages filtrées par rapport à leur pertinence pour une requête. L’idée est donc de qualifier en temps réel l’importance des pages qui sont pertinentes pour une requête.
C’est ce point qui fait que l’algorithme n’a jamais été vraiment utilisé par les moteurs de recherche : un algorithme lourd à utiliser en temps réel n’est pas un bon algorithme pour un moteur.
Hummingbird
Il s’agit d’un des changements majeurs de Google, déployé en 2013. Avec l’update Hummingbird, Google a commencé à travailler sur l’intention des requêtes, une notion devenue clé désormais.
Auparavant le traitement des mots était très syntaxique. Avec Hummingbird, le moteur peut comprendre le contexte, et donc le sens, de groupe de mots utilisés ensemble. D’un point de vue SEO, cela a ouvert la porte à des stratégies basées sur la longue traine.
Index inversé
L’index d’un moteur, c’est intuitivement une correspondance entre un objet (la page web) et des termes qui sont contenus dans cette page (et aussi beaucoup d’autres éléments, bien entendu). L’index inversé c’est… l’inverse ! C’est une correspondance entre un objet : un terme (c’est-à-dire un ou plusieurs mots) et les pages qui le contiennent ou qui lui correspondent . L’objectif de l’index inversé est de pouvoir trouver très rapidement des pages candidates à être mise en avant lors de l’interrogation du moteur par un utilisateur.
Intelligence artificielle
Voilà un vrai piège !
L’intelligence artificielle, au sens strict du terme, c’est une discipline académique transversale à plusieurs domaines dont l’objectif est de développer des outils théoriques et pratiques pour comprendre et simuler l’intelligence humaine.
On y trouve des mathématiques, de l’informatique, de la (neuro)biologie, de la logique, c’est un champ d’étude de la philosophie, de la sociologie, etc.
Depuis plusieurs années, et encore plus depuis le début des années 2010, c’est devenu également un concept marketing usé jusqu’à la corde pour promettre des lendemains qui chantent.
Enfin, dans la littérature et les arts, c’est un artefact endossant des rôles divers, depuis l’auxiliaire bienveillant jusqu’à l’entité omnipotente maléfique.
Bref, l’IA c’est un mot plein de polysémie, avec un sens finalement très dépendant de son contexte. Je ne sais pas si il existe déjà un modèle de la langue capable de dénouer cette complexité !
Learning-to-rank
Le learning-to-rank désigne une famille d’algorithmes de Machine Learning qui vise à trouver les pondérations permettant de classer des objets de manière à satisfaire un critère donné (par exemple à satisfaire la mise en avant de résultats pertinents selon les humains).
Même si les premières approches sont assez anciennes (milieu des années 90 chez Altavista), c’est chez Microsoft en 2005 avec les travaux de l’équipe de Chris Burges que le learning-to-rank va réellement apparaître. Les premiers tests de l’époque, avec un algorithme appelé RankNet, montre que quelques heures suffisent désormais à paramétrer un moteur de recherche, alors qu’auparavant cela prenait plusieurs jours.
Le learning-to-rank est devenu un incontournable (utilisé également pour d’autres tâches comme par exemple la recommandation de contenu) des moteurs, et la recherche sur le sujet est très dynamique (en 2018, Google a par exemple sorti une bibliothèque logicielle – TF-Ranking – qui propose un tel algorithme basé sur des réseaux de neurones).
Au niveau d’un moteur, il faut surtout savoir que l’entrée du learning-to-rank est les préférences des utilisateurs du moteur au niveau de la SERP. Les signaux utilisateurs ne sont donc pas un signal de ranking, mais bien plus encore : c’est la data qui permet de pondérer les signaux de ranking les uns par rapport aux autres.
Machine learning
Il s’agit d’une sous-discipline de l’intelligence artificielle. Elle se consacre à l’usage de méthodes mathématiques, souvent issues de la statistique, avec pour objectif d’apprendre à partir de données. Si l’objectif expliqué ainsi est cryptique, il s’agit en réalité de créer des mécanismes pour résoudre des tâches sans explicitement fabriquer de mécanisme de résolution. En pratique il va donc être question du paramétrage à partir de données d’entrées d’un mécanisme plus générique, une forme d’adaptation aux données et à la tâche à résoudre.
Modèle vectoriel
Le modèle vectoriel a été inventé dans le contexte du système SMART. Comme son nom l’indique, le modèle vectoriel utilise des vecteurs pour représenter documents et requêtes et rapprocher les uns des autres.
Le modèle vectoriel est utilisé pour la recherche d'informations, mais aussi pour plusieurs autres applications (les systèmes de recommandation par exemple).
Il y a de nombreuses raisons qui font que le modèle vectoriel est devenu le standard pour représenter l’information et la recherche, mais la principale est liée au fait que si l’on prend un bon encodage des documents (la TF*IDF par exemple), on ne va pas créer d’endroit localement très dense dans l’espace vectoriel lorsque la taille de l’index va augmenter. Séparer les bons documents des mauvais ne devient donc pas fondamentalement plus dur avec l’agrandissement de l’index, ce qui n’est pas le cas d’autres modèles.
MUM
MUM est l’acronyme de Multitask Unified Model. Il s’agit d’un modèle de la langue générique, multilingue et multimodal créée par Google. MUM est basé sur un modèle à base de transformers (comme BERT par exemple), le T5 ou Text-To-Text Transfer Transformer Model. C’est un modèle qui utilise, comme son nom l’indique, une technique de transfert d’apprentissage : ce que le modèle peut utiliser dans un contexte, ce qu’il a appris dans un autre contexte. Un peu comme un joueur de tennis qui se mettrait au squash et qui ne serait pas totalement débutant dans ce cas…
Étant générique, MUM peut résoudre plusieurs problèmes (traduction, compréhension, réponse à des questions, etc.). Mais ce qui est important est qu’il est multilingue : il maitrise plusieurs langues simultanément, et il est multimodal : il peut traiter indifféremment du texte ou des images par exemple.
Présenté comme le futur de Google, MUM permettra notamment à ce dernier de faire des requêtes hybrides avec textes et images, et de renvoyer des résultats pertinents non textuels.
Neural matching
Difficile de définir un terme aussi flou… Neural matching (correspondance neurale ?) est une technique annoncée par Google comme permettant de mieux trouver les pages pertinentes pour une requête. Pas besoin de prolonger le suspense, il s’agit juste pour Google de dire qu’ils font réellement usage de réseaux de neurones pour l’analyse sémantique au sein du moteur.
NLP
Le NLP (Natural Language Processing, ou traitement de la langue naturelle en français) est une branche de l’intelligence artificielle qui étudie le langage humain « naturel ». Son objectif est de comprendre et manipuler ce que l’on écrit, ce que l’on dit, principalement dans l’objectif d’une meilleure interaction avec les humains.
NSP
Le NSP (Next Sentence Prediction) est l’une des tâches d’entrainement de BERT. Il s’agit de prédire si deux phrases sont en connexion logique ou non (c’est-à-dire prédire si il peut y avoir une forme d’enchainement causal entre les deux). Par exemple : « Il fait froid. Je mets un pull » sont deux phrases en connexion logique, ce qui n’est pas le cas de « Il fait froid. J’aime les chansons de Dalida ».
PageRank
Un moteur de recherche, c’est compliqué, mais c’est simple aussi. En effet, même si il y a une vraie complexité technique, l’idée est toujours de mettre en avant des pages pertinentes et d’autorité. L’analyse de cette autorité peut se faire de différentes manières, mais l’algorithme le plus connu pour calculer le classement des pages en fonction de leur autorité/popularité supposée, c’est le PageRank. Dès 1998, il est décrit dans l’article The PageRank citation ranking: bringing order to the web, écrit entre autres par Sergey Brin et Larry Page (le nom de l’algorithme vient d’ailleurs du nom de ce dernier).
L’idée du PageRank est assez intuitive (il ne faut pas se préoccuper de comment on le calcule en pratique, ce qui est une autre histoire). Pour savoir si une page web est d’autorité, on va regarder si elle est populaire. Et pour cela, le moteur va simuler le comportement d’un internaute qui se promène de page web en page web en suivant les liens un peu au hasard. Cet internaute, on l’appelle le surfeur aléatoire. Et la probabilité que le surfeur aléatoire se retrouve sur une page donnée à un moment donné c’est ce qu’on va appeler le PageRank de la page en question. Plus une page à un fort PageRank, plus cela veut dire qu’on a des chances de tomber dessus en se promenant sur le web : cela veut dire que collectivement nous avons créée des chemins de liens qui amènent à la page, elle est donc d’autorité, elle est populaire !
L’idée est simple, mais la réalisation est difficile. À tel point qu’il a fallu des années à Google pour industrialiser le calcul pour des index de centaines de milliards de pages.
Rankbrain
Rankbrain est une chaîne de traitement basée sur le machine learning, déployée par Google en 2015 pour fournir de meilleurs résultats de recherche. L’objectif de Rankbrain est de mieux comprendre des requêtes rares, et d’apprendre à faire un meilleur classement en utilisant la data des recherches faites dans le passé par les utilisateurs de Google (et les résultats associés, probablement avec leur qualité implicite perçue via l’interaction de l’utilisateur avec la SERP).
Même si il est très compliqué de savoir ce qui se cache derrière ce nom, on peut parier que c’est via Rankbrain que Google a introduit de manière plus systématique le learning-to-rank dans le moteur.
SMART
SMART est le nom d’un système de recherche d’information (les précurseurs des moteurs de recherche d’avant le web) initié par Gérard Salton. Le projet a débuté dans les années 60 à l’Université de Cornell et c’est dans ce cadre qu’ont été développé la plupart des principes fondateurs du search, comme par exemple le modèle vectoriel, le cosinus de Salton, l’algorithme de Rocchio, la TF*IDF et bien d’autres choses encore.
TF*IDF
En 1972, Karen Spärck Jones introduit dans un article scientifique la TF*IDF, une mesure de l’importance d’un terme dans un document. Cette mesure va permettre une meilleure compréhension des textes en enrichissant le cadre du modèle vectoriel.
La TF*IDF est une mesure qui embarque de l’information locale (la TF) et de l’information globale (l’IDF). TF signifie Term Frequency, c’est-à-dire la fréquence d’apparition du terme dans le document. IDF signifie Inverse Document Frequency, c’est une quantité qui va donner plus de poids à des mots qui sont rares dans le corpus documentaire (l’index).
Au final, la valeur de la TF*IDF pour un terme dans un document est la multiplication de la TF et de l’IDF du terme dans le document.
Le succès de la TF*IDF vient du fait qu’elle favorise simultanément les termes qui sont très présents dans le document, mais aussi ceux qui sont peut-être moins présents, mais qui sont rares dans la langue et donc dont la présence est très discriminante pour comprendre le sens du texte.
Word2vec
Word2vec est une des premières approches de word embedding basée sur des réseaux de neurones. Elle a été inventé par (entre autres) Tomas Mikolov, en 2013.
L’idée ce Word2vec est de prédire un mot à partir de son contexte (modèle du continuous bag of words) ou au contraire de prédire le contexte à partir du mot (modèle du skip-gram). Dans le premier cas, il s’agit de jouer au jeu Pyramide dont les lecteurs les plus « expérimentés » se souviendront sans doute (je vous dit « semoule, merguez » et vous devinez « couscous »). Dans le second cas, c’est moins évident (même si c’est équivalent d’un point de vue calcul informatique) car il s’agit intuitivement de lister les ingrédients à partir du nom de la recette si on reste sur la métaphore culinaire.
Word Embedding
Il s’agit d’une technique qui construit des vecteurs pour représenter les mots, en analysant le contexte dans lequel ils sont utilisés. L’objectif est de représenter chaque mot par un vecteur de nombres réels qui encodent de manière parcimonieuse (avec le moins de composantes possibles) la relation du mot à tous les autres mots de la langue.
Cette technique se base sur l’hypothèse de Harris : si deux mots ont des contextes proches, alors ils auront des vecteurs proches, et réciproquement.
Depuis la création de Word2vec, les word embeddings sont mis à toutes les sauces, et montrent une réussite assez incroyable pour la plupart des tâches du NLP.
Sylvain Peyronnet, concepteur de l'outil SEO Babbar.