Comment fonctionne un moteur de recherche ? (4ème partie : l'analyse de la pertinence)

   
(English version - machine translation)


 

Un moteur de recherche comme Google ou Bing est loin d'être un système simple pouvant être expliqué en quelques lignes. Il est au contraire l'addition de plusieurs technologies souvent assez complexes, lui permettant de renvoyer à l'internaute qui l'utilise les résultats les plus pertinents. Cette série d'articles vous explique donc quelles sont les différentes briques d'un moteur et vous dévoile les arcanes qui constituent leurs entrailles. Après nos précédents articles sur les technologies de crawl, l'index inversé, le duplicate content et le PageRank thématique, nous abordons ce mois-ci la notion de calcul de la pertinence d'une page web par rapport à la demande de l'internaute; Après avoir lu ces quelques lignes, les notions de modèle vectoriel, TF-IDF, cosinus de Salton et Okapi BM 25 n'auront - presque - plus de secrets pour vous...

Début de l'article :

Nous poursuivons notre cycle sur le fonctionnement des moteurs de recherche par cet article qui aborde ce mois-ci les bases de ce que nous appelons “l’analyse de la pertinence”. Bien sûr, il s’agit d’une vision extrêmement simplifiée, mais qui permet de bien comprendre les différents types de traitements que va opérer un moteur de recherche pour “comprendre” le contenu des documents disponibles sur le Web, et sur la façon de renvoyer les bons documents pour une requête tapée par un utilisateur.

Des signaux, des requêtes et des pages

Avant de rentrer dans une explication plus complète, voyons ce qu’est la démarche réelle, sans jamais rentrer dans les détails pour le moment.

En pratique, on peut distinguer différents types de signaux pour un moteur de recherche. Il existe des signaux qui sont attachés aux documents, comme par exemple le PageRank, le nombre de liens sortants et entrants, le nombre de versions existantes (en cas de duplication de documents), le fait que le document soit considéré comme du spam, etc. Il existe ensuite des signaux qui sont associés à un couple requête-texte (le texte en question pouvant être un document complet ou juste une partie d’un document (comme par exemple la balise Title ou la description, etc.). Enfin, il existe des signaux qui viennent de l’analyse du comportement des utilisateurs du moteur.

Quand un utilisateur tape une requête, par exemple “machine à café pas chère”, le moteur de recherche va récupérer et regarder tous les vecteurs de signaux pour les couples composés de cette requête et des documents de l’index. Ces vecteurs vont être ordonnés par une formule de pondération qui détermine quels sont les signaux qu’il faut utiliser et dans quelles proportions. Cette formule est simple, mais ces paramètres ne sont pas faciles à connaître car ils sont déterminés par un algorithme de machine learning (apprentissage automatique).

Parmi tous les signaux, un grand nombre caractérisent la pertinence par rapport à la requête. Certains signaux sont simplistes (un exemple typique serait “est-ce que les mots de la requête sont dans la balise title ?”) tandis que d’autres sont plus complexes. Dans ces dernier,s on trouve des signaux dépendant du modèle vectoriel, et c’est de cela dont nous allons parler aujourd’hui.

Le modèle vectoriel

Le modèle vectoriel pour représenter des documents textuels a été mis en place dans le cadre du système SMART (System for the Mechanical Analysis and Retrieval of Text) [1][2]. SMART était un projet de l’Université de Cornell dirigé par Gérard Salton à partir des années 60. Les premières versions opérationnelles du système datent de 1968, mais le travail a été poursuivi assez longtemps puisque, par exemple, une réécriture totale en a été effectuée dans les années 80.

Comme son nom l’indique, le modèle vectoriel va utiliser des vecteurs pour représenter les documents et les requêtes. Chaque dimension de l’espace vectoriel va correspondre à un terme différent existant dans des documents de l’index du moteur. Il va donc y avoir autant de dimensions qu’il y a de termes disponibles dans l’index.

Il est important de bien comprendre ce que nous appelons un terme. A l’origine il s’agissait d’un mot, mais avec les années et la puissance de stockage et de calcul toujours plus importante à disposition, les moteurs se sont mis à utiliser des blocs de plusieurs mots consécutifs, les n-grams, pour récupérer l’information perdue par l’utilisation de l’approche “sac-de-mots” (voir plus loin). Au final, l’espace vectoriel utilisé est donc de taille extrêmement importante.

Pour construire le vecteur associé à un texte, le moteur va effectuer plusieurs opérations différentes qui ont pour but de simplifier les structures de données internes et d’alléger l’espace mémoire utilisé pour l’analyse.

La première opération est de transformer le texte en un sac-de-mots. Il s’agit tout simplement de déconstruire les phrases. Le moteur n’étant en effet pas capable de comprendre la grammaire, il ne lui sert à rien de conserver l’information liée à la place des mots les uns par rapport aux autres. La Figure 1 illustre la notion de sac-de-mots pour un texte de deux phrases et montre le sac-de-mots associé (dans l’ellipse en pointillées). ...
La suite de cet article est accessible aux abonnés à la lettre professionnelle "Recherche et Référencement" du site Abondance...


Plus d'infos pour les abonnés :

Auteurs : Thomas Largillier, Guillaume Peyronnet et Sylvain Peyronnet sont les fondateurs de la régie publicitaire sans tracking The Machine In The Middle (http://themachineinthemiddle.fr/).

Formats disponibles : HTML
Date de parution : 18 avril 2017

- Accès à la zone "Abonnés" du site Abondance.com


Plus d'infos pour les non-abonnés :

- Comment s'abonner à la lettre R&R ?

- Sommaire de la lettre R&R d'Avril 2017

- Tous les articles de l'année 2017

- Sélection des meilleurs articles des 24 derniers mois

...

 
Un site du Réseau Abondance  : Information : Abondance - Forums Abondance - Boutique Abondance - Livre Référencement - Formation DVD Référencement | Outils : Outiref - Visiref - Spider SimulatorDivers / Jeux : Googlefight - Googland |  Moteurs de recherche : Mozbot.fr - Mozbot.com - Grifil.net - SearchWings