Comment fonctionne un moteur de recherche ? (7ème et dernière partie : agrégation des différents algorithmes entre eux)

   
(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 nombreuses technologies souvent assez complexes, lui permettant de renvoyer à l'internaute qui l'utilise les résultats les plus pertinents. Cette série de sept articles vous a expliqué, au fil des mois, quelles sont les différentes briques d'un moteur et vous en a dévoilé les arcanes qui constituent leurs entrailles. Après nos précédents articles sur les technologies de crawl, l'index inversé, le duplicate content, le PageRank thématique, la pertinence et l'analyse de la requête de l'internaute et enfin la lutte contre le spam, il était temps de voir comment toutes ces briques s'articulent entre elles...

Début de l'article :

Nous avons étudié dans les six articles précédents le fonctionnement indépendant d’un certain nombre de briques algorithmes qui composent un moteur de recherche. Dans ce dernier article, nous allons voir comment toutes ces briques a priori disparates s’assemblent, pour fabriquer la belle maison “moteur de recherche”.

En effet, une fois que les pages trouvées sur Internet ont été crawlées, indexées, analysées pour leur pertinence et leur popularité, le moteur peut finalement renvoyer des résultats de recherche. Lorsque l’internaute va saisir une requête, le moteur de recherche va choisir dans son index les pages les plus pertinentes, et il va les renvoyer dans l’ordre décroissant de popularité. Ainsi plus une page pertinente est populaire, plus elle a de chances de se retrouver dans les premiers résultats de la SERP pour les requêtes qui la concerne. Tout cela est très théorique, mais bien sur la réalité n’est pas si évidente. Voyons donc comment cela se passe dans la véritable vie du moteur.

Tout d’abord, il faut comprendre l’objectif du moteur de recherche : il s’agit de fournir à l’utilisateur des documents qui le satisfont raisonnablement. Il n’y a donc pas besoin de trouver les “meilleurs” documents, pour peu que ce terme de “meilleur” ait le moindre sens, d’ailleurs.

Dans ce contexte, il existe un certain nombre de tâches qui vont permettre de simplifier et/ou d'accélérer les calculs tout en maintenant une qualité raisonnable. Ces tâches sont des heuristiques, c’est-à-dire des actions plus ou moins algorithmiques qui marchent... parce qu’elles marchent (et c’est là toute la beauté de la chose !).

La suite de cet article va donc présenter chacune de ces tâches, sans trop de fil conducteur car il s’agit de points assez indépendants, qui vont s’associer afin de créer “LE” moteur de recherche.

Un index plus léger, ou plutôt des index plus légers

Première chose à absolument comprendre : il n’y a en fait pas un seul index mais plusieurs, ce que l’on va appeler des verticales ou des shards, et qui vont correspondre à des sous-index thématiques (voyage, e-commerce, adulte, etc.), ou techniques (les blogs, les sites de vente, etc.) ou n’importe quelle autre découpe qu’on estime pertinente. Une page web peut se retrouver dans plusieurs verticales ; un site peut avoir des pages dans une verticale et d’autres pages dans une autre verticale. Bref, il s’agit d’une découpe plus ou moins habile de tout ce qui a été crawlé puis indexé par le moteur.

Pour accélérer la vitesse de réponse du moteur, on va pré-traiter ces index, dans le but de ne garder que les documents qui contiennent toujours au moins un terme de la requête dans le cas d'une requête longue. C’est essentiellement dans ce but que l’on crée le fameux index inversé. Pour économiser encore un peu plus, on ne va créer cet index que pour les termes que l’on estime importants, généralement il s’agit des termes avec une IDF passant un certain seuil (ceux qui sont sous ce seuil correspondent à ce que l’on appelle les stop-words ou mot vides : articles, conjonctions de coordination, etc.).

Si on veut gagner en qualité de résultat, on va étendre l’index inversé en y incluant également des groupes de mots (n-grams) pour prendre en compte plus rapidement des requêtes étendues. Dans ce cas, on va généralement rajouter un signal spécifique pour prendre en compte le fait que plusieurs termes qui constituent un n-gram peuvent être dans le document mais non contigus (ce que l’on appelle un “partial match”).
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 : 17 juillet 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 de Juillet-Août 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