Moteurs de recherche : principes de fonctionnement


Type de formation: 
Stages
Auteur(s): 
Marie-Laure Malingre
Alexandre Serres
Thème: 
Recherche d'information
Public: 
Tous publics Urfist
Date de création: 
30/05/2002
Date de modification: 
30/11/2004
Tags: 
License: 

Rappel de la définition, du fonctionnement et de la typologie des moteurs de recherche

Comment définir un moteur de recherche

Fonctionnement

Typologies

La lutte contre le "spamming"


Comment définir un moteur de recherche

Instrument de recherche basé sur un recensement de ressources internet, dont tout ou partie est mémorisé sous forme d'index interrogeables par des formulaires de requête.

Un moteur ou robot de recherche peut être considéré comme une gigantesque base de données, constituée automatiquement grâce à des outils logiciels qui vont explorer régulièrement les serveurs déclarés sur internet, indexent le texte intégral des pages et des sites et proposent à l'utilisateur un accès aux documents en lançant une requête par mots clés.

= Classement, organisation et structuration de pages de l'internet

haut de page


Fonctionnement

Un moteur de recherche fonctionne généralement avec 3 modules :

  • Le module de collecte automatique des données = robot collecteur
  • le module d'indexation automatisée des données = moteur d'indexation
  • le module de gestion des requête et de présentation des résultats = moteur de recherche proprement dit

Il existe des différences entre les moteurs de recherche : les robots sont programmés en fonction de choix effectués par leurs concepteurs et n'opèrent pas tous de la même manière.

haut de page


Typologies

Plusieurs typologies sont possibles, par exemple :

⇒ Typologie selon le référentiel Internet et le type de ressources recensées :

  • Moteurs de recherche généralistes
  • Moteurs de recherche spécialisés disciplinaires
  • Moteurs de recherche spécialisés par type de service internet
  • Moteurs de recherche à spécialisation géographique ou linguistique
  • Moteurs de recherche spécialisés par type d'objet internet : images, son, séquences vidéo...
  • Moteur de recherche spécialisés par type de données : revues, prépublications, dépêches d'actualité, blogs ...
  • Moteurs de recherche spécialisés sur le web invisible

⇒ Typologie selon les méthodes de classement des résutats (cf plus loin) :

  • Classement selon l'indice de pertinence : la majorité des moteurs
  • Classement selon l'indice de popularité : Google, Teoma...

⇒ Typologie selon le type de présentation des résutats :

  • Présentation des résultats sous forme d'une liste simple
  • Présentation des résultats sous forme d'une liste de résultats avec possibilité d'affiner la requête (mots clés connexes, liens de communautés d'experts...)
  • Présentation des résultats sous forme de cartographie (encore très rare sur les moteurs)

⇒ Typologie selon le type de traitement :

  • fonctionnalités exclusives de recherche
  • traitement, gestion et exploitation des résultats.

 haut de page


L'un des défis des moteurs de recherche : la lutte contre le "spamming" ou "spamdexing"

L'un des premiers problèmes posés aux moteurs de recherche, surtout à partir de 1998-99, a été la lutte contre le "spamdexing".

origine du terme : le mot anglais spam vient d’un épisode de la série télévisée Monty Python’s Flying Circus, où le mot Spam, une marque de jambonneau, était répété pour couvrir les dialogues … !

  • spamdexing : opération consistant à détourner les techniques de référencement des sites pour hisser artificiellement les pages de son site dans les premiers résultats, et donc apparaître plus souvent et attirer plus de visites. Pour détourner l'indice de popularité, le spam consiste à créer de multiples fausses pages, qui pointent vers une page pour optimiser son classement.

Il s'agit d'une véritable " guerre " des fournisseurs d’information grand public, menée contre les moteurs de recherche, pour pouvoir être systématiquement présents dans les résultats.

Le spamming est un véritable fléau pour les moteurs de recherche : il y a quelques années, on estimait que sur 10 pages proposées à Alta Vista, 9 étaient du spam... On a estimé aussi que sur l’index d’Alta Vista, évalué alors à 1 milliard de pages, l’index ne comprenait en fait que 350 millions de pages : 650 millions étaient du spam, ou des doublons, enlevées par le moteur....

  • Les techniques du spamdexing :
    elles sont très variées et sans cesse perfectionnées par les webmasters peu scrupuleux, qui détournent également les outils de recherche, spécialisés dans la vente de liens commerciaux, comme Espotting, Overture et Google

o       multiplication de mots-clés dans les métadonnées : cette première technique de spamdexing est maintenant assez bien contrée par les moteurs (qui n'indexent pas ou pas toutes les métadonnées)

o       multiplication de "sites-miroirs", de pages web d'une même organisation pointant vers l'une vers l'autre (pour détourner l'indice de popularité)

o       multiplication et détournement des liens commerciaux (cf la partie du support "Acteurs, marché..."

o       faux portails, contenant en fait des liens commerciaux

    • Google, qui a été créé sur des principes novateurs dans la lutte contre le spam (avec le fameux PageRank) est aujourd'hui particulièrement visé par le spamdexing : l'indice de popularité est désormais contourné par de nombreux sites commerciaux, notamment par l'utilisation abusive des liens commerciaux. "Industrie des clics frauduleux".

Sur ces questions, voir Marc Duval, Google-Filter contre le spam, Chronique de la recherche, vol. 3, n° 9, 21 novembre 2003, disponible sur <http://www.dsi-info.ca/chroniques/chroniques-recherche-web.html>

haut de page

La collecte des données

Principe

Exploration initiale

Parcours des liens

Difficultés liées au rythme de parcours du robot

Paramétrage des robots collecteurs

Rapatriement de l'information

Evolutions et limites


Le principe

Tout moteur de recherche fonctionne avec un module de collecte automatique des ressources (spider, crawler, worm), qui procède à une exploration à fréquence régulière des serveurs web ou autres.

- A partir d'un ensemble donné de pages initiales, le robot explore les réseaux de liens du web et parcourt les différentes ressources de l'Internet (sites web, forums, etc.), constituant le "web visible" (accessible par ces robots de collecte).

- Il existe assez peu de logiciels robots : ils sont souvent exploités par plusieurs moteurs de recherche : par exemple, le robot d'Inktomi.

haut de page


Exploration initiale

En général, un robot commence ses visites des sites web à partir d'un noyau initial : une liste d'URL extraits de pages ayant beaucoup de liens; l'exploration initale se poursuit ensuite selon différents critères :

  • déclarations spontanées des serveurs = soumission manuelle par les auteurs de sites
  • pages "what's new"
  • sélections des meilleurs sites
  • adresses récupérées en parcourant les messages échangés dans les News ou les archives de listes de discussion
  • explorations aléatoires privilégiant des objets avec de nombreux liens et dont l'URL est court.

 haut de page


Parcours des liens

⇒ en largeur d'abord (= tous les liens de même niveau hiérarchique)

⇒ ou en profondeur d'abord (=exploration systématique d'une branche particulière jusqu'au bout)

⇒ ou systèmes mixtes qui opèrent en largeur jusqu'à un certain niveau, puis en profondeur après.

haut de page


Difficultés liées au rythme de parcours du robot

Le rythme d'actualisation de la base de données par le robot (souvent au mieux chaque mois) ne permet pas de prendre en compte toute l'information diffusée sous forme d'actualité

haut de page


Paramétrage des robots collecteurs

Le paramétrage de ces robots, dont dépend la qualité de la collecte, permet de déterminer :

·        les formats de fichiers pris en compte

Au début, seuls les fichiers HTML du WWW étaient collectés ; aujourd'hui, collecte, par plusieurs moteurs, de plusieurs formats de fichiers (fichiers PDF, de la suite Microsoft Office : Power Point, Word, Excel... - Fast indexe aujourd'hui les fichiers Macromedia Flash, .swf)

·        le traitement du fichier robot.txt : par ce fichier, les sites indiquent que le document ne doit pas être pris en compte pour être indexé; dans ce cas, il ne sera pas retenu dans la collecte

·        la taille des pages web :
Les moteurs de recherche définissent au préalable la profondeur de collecte et d'indexation des pages web, c.a.d. la taille des fichiers (mesurée en octets). D'après certaines études, la taille moyenne d’une page web serait de 10 Ko à 19 Ko (ce qui représente assez peu d’informations) et l'indexation des pages web par les moteurs va en général jusqu’à 130 Ko. Mais on trouve une grande diversité des paramétrages des moteurs (voir Marc Duval, Une question de taille, in Chronique de la recherche sur le web, vol. 3, n° 3, 5 mars 2003) :

o      Exalead : 23 Ko

o      Google, Gigablast : 101 Ko

o      Teoma : 115 Ko

o      WiseNut : 120 Ko

o      Alta Vista, AntiSearch : 130 Ko

o      Inktomi, HotBot, MNS : 524 Ko

o      OpenFind : 610 Ko

o      AlltheWeb : 976 Ko

o      Northern Light : 1418 Ko

o      Voilà (Web Francophone) : 1582 Ko

Quelles conséquences de la troncation des fichiers ?

- la multiplication des pages, c.a.d. la tendance chez les concepteurs de sites à diviser les pages, pour être sûr d'être référencé sur les moteurs
- le silence documentaire : pour un mot-clé situé au-delà de la taille indexée (exemple des documents longs : rapports, textes juridiques, thèses…)

⇒ A noter : la taille des fichiers est un critère de recherche et de filtrage sur un seul moteur : AlltheWeb (commande filesize: avec un opérateur numérique.)

·        la nature des traitements effectués sur les liens de la page + sur ceux des pages liées

·        le rythme et les modalités de la surveillance, c'est-à-dire du passage du robot :
il faut en théorie à l'heure actuelle en moyenne de 10 à 20 jours aux robots pour parcourir le réseau (10 millions de pages par jour dans certains cas). Les fréquences de mises à jour varient selon les robots. Pour améliorer les performances des moteurs, le rythme de passage d'un robot peut être programmé en fonction par exemple d'un type de site  (les plus évolutifs sont contrôlés plus fréquemment). On peut mesure les différences entre les moteurs en matière de "rafraîchissement" de la base en comparant le délai de mise à jour de la page la plus récente et celle de la page la plus ancienne.

ex : Sondage du site SearchengineShowdown (04/04/2002) donne notamment pour Google un rapport de 1 / 68 jours, pour Altavista 12 / 51 jours et pour Hotbot 1 / 136 jours.

 haut de page


Rapatriement de l'information

Selon la configuration adoptée pour le robot, tout ou partie de l'information trouvée va être rapatriée : rapatriement uniquement des titres de fichiers html ou des premiers paragraphes et mots les plus fréquents ou du contenu complet des fichiers html.

haut de page


Evolutions et limites

⇒ Les robots étendent de plus en plus leurs capacités dans la collecte des données du web :

  • Volumes plus importants en termes de sites web
  • Extension des format de fichiers pris en compte
  • Extension des protocoles pris en compte (FTP...)
  • Profondeur de l'exploration pour certains robots collecteurs

⇒ Mais difficultés liées au rythme de pacours du robot  :

Le rythme d'actualisation de la base de données par le robot (souvent au mieux chaque mois) ne permet pas de prendre en compte toute l'information diffusée sous forme d'actualité (quotidiens, agences de presse...) qui leur échappe en grande partie.
Pour contrer ce problème, la société Moreover (http://www.moreover.com) alimente une base de données comportant plus de 2400 sources réactualisables tous les quarts d'heure.

⇒ Reste l'obstacle constitué par :

  • les types particuliers de pages sur le web > frames (cadres), scripts modifiant le contenu des pages, technologies propriétaires.
  • pages dynamiques (produites à partir de bases de données ou d'applications spécifiques = .asp, .php...) : leurs URL contiennent des paramètres non exploitables par la plupart des moteurs [le robot exploité par Google suit les liens dynamiques, mais problème pour la visualisation de la page et utilisation de la fonction cache du moteur].
  • pages "orphelines", n'ayant pas fait l'objet de référencement direct ni de lien à partir d'autres pages.
  • pages à accès contrôlé
  • pages interdites de référencement
  • pages produites via un formulaire [cependant, cas de Quigo qui traite les pages avec un formulaire de requête]

haut de page

L'indexation, la constitution des index

Rappel du principe de constitution des index

La taille de l'index

Les objets de l'indexation

La nature des ressources indexées

Les méthodes d'indexation et de traitement du langage naturel


Rappel du principe de constitution des index

A partir des données collectées par le robot explorateur (spider), le module indexeur construit un index général de recherche des données.

L'index d'un moteur constitue sa base de données ; il est constitué :

- d'un index principal, contenant les millions (voire les milliards) de pages web et de documents capturés par le robot collecteur
- de fichiers inverses, contenant tous les termes d'accès, renvoyant aux pages web.

Rappel du principe des index de recherche :

Fichiers ordonnés, contenant les caractéristiques des documents et les reliant aux documents traitant des mêmes sujets. L'indexation automatisée repose sur la notion de fichier inverse :

- Fichier inverse :
fichier organisé par ordre alphabétique de descripteurs, de mots-clés ou de mots, derrière lesquels figurent les numéros des notices possédant ces termes. Ce fichier est " inversé " par rapport au " fichier direct " (ou principal.) Il est lu en accès direct sur les mots-clés de la question.

Dans les systèmes d'index en texte intégral, les fichiers inverses sont des fichiers contenant les mots du texte, classés alphabétiquement, avec l’adresse précise de leur occurrence dans le texte.
Dans les fichiers inverses des moteurs de recherche, chaque terme pointe vers les URL des pages qui contiennent le terme.

Variations de l'indexation selon les moteurs et les règles suivies :

Quatre éléments essentiels à prendre en compte pour le module d'indexation :

- La taille de l'index : nombre de documents indexés

- Les objets de l'indexation : qu'est-ce qui est indexé (la totalité, des parties du document...)

- La nature des ressources indexées : format, texte, image...

- Les méthodes d'indexation et de traitement des données : traitement linguistique, niveau d'analyse, utilisation des outils de TALN...

Mises à jour périodiques. Mise à jour de l'ensemble de leur index = plusieurs semaines (et va en augmentant compte tenu de l'évolution du web).

haut de page


La taille de l'index

Nombre de pages dans la base de documents du moteur de recherche.
Très variable selon les moteurs : de quelques centaines de milliers de documents à plusieurs milliards.

Aux débuts des premiers moteurs, comme Alta Vista, existait un objectif de couverture exhaustive du web : 60 millions de documents indexés par Alta Vista en juin 97.
Aujourd'hui, la moitié à peine (voire un tiers) du web serait indexée par les 8 plus grands moteurs.

- Course à l’index le plus grand :
course des outils au plus grand index, notamment entre All The Web et Google.

Exemple des bases de données de trois grands moteurs (nombre de pages web indexées) :

MoteursGoogleAllTheWebAlta Vista
Octobre 2000500 millions575 millions350 millions
Décembre 20013 milliards630 millions397 millions
Janvier 20033,33 milliards2,106 milliards1,689 milliards
Août 2003 3,1 milliards 
Janvier 20044 milliards  
Novembre 2004annonce 8 milliards  

haut de page


Les objets de l'indexation

Quelles parties des pages web (ou des documents d'autres formats) sont indexées par les modules d'index des moteurs de recherche ? Tous les moteurs n'indexent pas les mêmes parties d'un document, ni de la même manière.
Différents champs sont pris en compte lors de l'indexation :

Le titre des pages web :

Titre d'une page web, proposé par le concepteur du site.

Situé entre balises <TITLE> et </TITLE>. 

Importance du titre :

- titre d'une page web toujours affiché sur le navigateur.
- titre généralement affiché sur la page de résultats du moteur
- 1er critère de pertinence pour la plupart des moteurs
- longueur du titre prise en compte variable selon les moteurs
- éviter mots vides

Moteurs concernés : tous les moteurs de recherche indexent le titre

⇒  Les métadonnées :

Balises de métadonnées, donnant une information sur le document (données sur les données)

⇒ A noter :

- les balises méta ne sont pas visibles par l'utilisateur, mais sont dans le code source de la page. Elles ne sont pas prises en compte par les annuaires thématique.
- peu de documents du web contiendraient les balises META : 20 à 30 % des pages web
- importance des balises META pour le référencement d'un site web par les moteurs de recherche
- problème et enjeu du "spamming", ennemi n° 1 des moteurs.

Deux grands types de métadonnées :

Balises META "Description" :
<META NAME="description" CONTENT="......">
Elles permettent de décrire le contenu d'une page, sous forme de résumé.

Indexation de la Balise Méta Description : très variable selon les moteurs.
Description affichée par le moteur dans la page de résultats, pour donner un aperçu du contenu.
Longueur de la balise souvent limitée : 150-200 caractères
Lorsqu'une page web ne contient pas de balise META Description, certains moteurs affichent les premiers mots visibles sur la page
Mais l'affichage de la balise Description est variable.

Balises META "Keyword" :
<META NAME="keywords" CONTENT="......">

Permettent de caractériser le document par un ou plusieurs mots-clés, pris en compte ou non par les moteurs de recherche
Usage des balises Keywords : 100 mots-clés, ou 1000 caractères. Au-delà, balise considérée comme du spamming et éventuellement pénalisée.
 

Le corps du texte :

Corps "visible" de la page.

Aujourd'hui, la plupart des grands moteurs de recherche indexent le texte des pages web, de manière limitée (jusqu'à une certaine taille du texte : cf plus haut)

Quelques variantes dans l'indexation du texte :

·        pages courtes mieux indexées que pages longues (HotBot...)

·        indexation égale du texte entier (Google)

Les URL :

URL considérée comme un champ de recherche interrogable

Presque tous les moteurs aujourd'hui indexent l'URL des pages web

⇒ Les frames (cadres) :

Frames : pages web divisées en cadres (cf cette page), constituées :

- d'un fichier "mère" : sert uniquement à la description des zones. Souvent appelé cadre.htm, ou frame.htm. Fichier vide de données
- de fichiers "fille" : cadre du haut, de gauche et central.

Les frames sont souvent un obstacle pour la collecte des données par le spider.

Généralement non collectées et non indexées par les moteurs de recherche.

Quatre solutions pour les moteurs :

·        Page web avec frames ignorée : aucune indexation ; situation la plus répandue

·        Indexation seulement du fichier "mère" et ignorance des fichiers "filles" ; situation assez courante ;

Résultat : le cadre vide est indexé seul et non les données contenues

·        Indexation des fichiers "mère" et "filles" comme des fichiers distincts, sans indexation des liens entre eux.

 

Résultat : perte du contexte des frames et affichage des fichiers isolément

·        Indexation des fichiers "mère" et "fille" avec leurs liens : solution idéale, respectant l'organisation des frames. MAIS pratiquement aucun moteur ne peut faire cette indexation.
 

TABLEAU RECAPITULATIF DES CHAMPS INDEXES
SUR QUELQUES UNS DES PRINCIPAUX MOTEURS
(Alta Vista, HotBot, InfoSeek, Lycos, Northern Light,
Google, AlltheWeb, Voilà)

 

ChampsMoteurs indexant le champMoteurs n'indexant pas le champ
Titre des pages webTous 
Balises <META Description>

Alta Vista, HotBot, InfoSeek, Voilà

Lycos Northern Light, Google, AlltheWeb

Balises <META Keywords>Alta Vista, HotBot, InfoSeek, VoilàLycos Northern Light, Google, AlltheWeb
Corps du texteTous (avec des variantes) 
URLPresque tousLycos, AllTheWeb
Frames

-seulement le fichier "mère" : Alta Vista, InfoSeek, AlltheWeb, Voilà ; parfois : HotBot, Lycos, Google
- fichiers "mère" et "filles" indexés indépendamment :
Alta Vista, Northern Light ; parfois : InfoSeek, Google, AlltheWeb, Voilà 

HotBot, Lycos

haut de page


 La nature des ressources indexées

Prédominance des documents textuels dans l'indexation par les moteurs de recherche

Indexation des documents images et sonores :

- Tendance importante, depuis quelques années : 330 millions d'images sur Google en 2002

- Mais indexation du texte descriptif des images et des sons : légende, URL, titre...

- Pas encore d'indexation du contenu visuel ou sonore sur le web : travaux encore limités à des moteurs de recherche internes à des entreprises ou des laboratoires

- Nombreux problèmes juridiques

 haut de page


Les méthodes d'indexation et de traitement du langage naturel

Analyse automatique et recherche d'information sur le langage naturel sont complexes en raison, à la fois des caractéristiques du langage naturel et des caractéristiques propres de la recherche d'information

Rappel des difficultés liées au langage naturel :

- éléments de discours implicite
- synonymie, redondance et glissements de sens
- sens de base des termes et rôles complémentaires
- problèmes posés par les groupes de mots ou mots composés

Difficultés propres à la recherche d'informations :

- Supports des documents
- Formats de représentation des textes
- Méthodes d'interrogation
- Généralité ou précision de la question
- Profondeur de l'analyse ou de l'indexation
- Explosion combinatoire engendrée par la recherche

Traitement linguistique du langage naturel par les moteurs de recherche :

Analyse morphologique :

- l'indexation utilisée par les moteurs de recherche correspond généralement au niveau le plus bas d'indexation possible : l'analyse morphologique par simple inversion du texte

- L'indexation est faite par simple extraction des mots et inversion, éventuellement avec des index par changement de casse et suppression des accents

- Utilisation de listes de mots vides (stopwords ou stop lists) au moment de l'indexation : encore peu fréquente selon les moteurs :
> existe sur Alta Vista et Google, qui éliminent les mots trop fréquents ou vides dans leur index.

- les listes de mots-vides sont davantage utilisées dans les module de requête, pour traiter les requêtes mal formulées.

Certains affichent l'équivalent de mots vides = mots très fréquents (dans le document, pas dans la langue), ou les mots d'un ou deux caractères, dans quelques cas uniquement les mots grammaticaux de la langue anglaise.

Analyse lexicale :

L'analyse lexicale est encore peu répandue sur le web :

- lemmatisation souvent absente : sauf sur AOL Search, Direct Hit, HotBot, Mirago, qui prennent en compte la racinisation (le stemming : accès possible aux variations morphologiques des mots

- lemmatisation parfois simulée au moment de la requête par la possibilité de troncature droite, sur les terminaisons de mots (avec bruit possible).

- quelques procédés de traitement lexical existent, mais plutôt sur les modules de recherche : par exemple, correction orthographique, reconnaissance des noms propres, identification de termes complexes, lexique de formes composées ...
>> mais concernent l'indexation des requêtes et non des textes eux-mêmes.

A noter :
On parle parfois de stemming ou de lemmatisation pour la troncature droite, couplée à un ensemble sommaire de règles permettant de reconnaître quelques terminaisons régulières communes (pour l'anglais), mais c'est un abus de langage ; la troncature est le plus souvent ajoutée par l'utilisateur au moment de la requête.

Analyse syntaxique :

Elle commence à être introduite sur les outils du web, mais de manière encore assez marginale, et plutôt dans les modules de requête, et non d'indexation :
- cf Exalead
Tendance en plein développement : création de classifications (cf plus loin)

Analyse sémantique :

Quasi-inexistante sur les outils du web et sur les modules d'indexation. Certaines fonctions d'analyse à la fois sémantique et statistique apparaissent sur certains moteurs, mais concernent plutôt les modules de requêtes.

Traitement statistique :

Principale méthode d'indexation utilisée par les moteurs de recherche, pour déterminer "l'estimation de la pertinence" (relevance feedback) : le traitement statistique des mots.

⇒ Question (difficile à trancher !) : où se font les opérations de traitement statistique du langage naturel ?
- dans le module d'indexation, lors de la constitution des index, cad "a priori" ?
- dans le module de requête, lors du traitement des requêtes ?
- dans les deux modules ?
- et si oui (réponse la plus probable), selon quelles modalités et avec quelles délimitations ?

En fait, l'identification des méthodes de calcul de la pertinence dans les moteurs de recherche est très difficile, car ces méthodes, reposant sur des algorithmes complexes, restent le "secret de fabrication" des outils de recherche : protection par les brevets...

  • Quelques notions générales sur l'estimation de la pertinence :
    • la valeur des pages indexées est :
      • soit absolue : indépendante des recherches ; traitement réalisé lors de la constitution de l'index
      • soit relative : dépendante des recherches ; calcul fait lors du traitement de la requête
    • la pondération : calcul du "poids" d'un mot, en fonction de différents facteurs
    • la similarité : appariement entre un mot du document et un terme de la requête
           
      ⇒  voir plus loin  


En résumé :
La majorité des moteurs de recherche sur internet ont des méthodes simples et rapides d'indexation, dépourvues de traitements linguistiques complexes, fondées essentiellement sur les calculs statistiques de pertinence.
 

Aspects négatifs : l'interrogation des sites web par les moteurs de recherche avec des mots tirés du langage courant, peut donner des résultats décevants, liés au faible niveau d'indexation réalisée par les moteurs (0 / 0+), liés aussi au caractère équivoque du langage naturel.

Aspects positifs : Un niveau d'indexation faible (et même sans supprimer les mots vides) permettra toujours de retrouver sur internet des passages précis et des expressions littérales.

A noter : l'introduction progressive des méthodes de TALN sur les moteurs de recherche, commencée sur quelques moteurs comme AskJeeves, Exalead, Alta Vista, constitue l'un des axes majeurs de développement des outils de recherche, mais aussi l'un des principaux défis, compte-tenu de la nature du web actuel.

 haut de page

La présentation des résultats des requêtes

La requête

Méthodes et classements des résultats


La requête : quelques rappels

Présupposés de la recherche par mot clé sur internet

Dans la recherche par le contenu, l'utilisateur ne dispose d'aucune référence ou information sur un sujet ; la recherche d'information sur internet dans des bases de texte intégral non structurées est une recherche contextuelle sur le contenu.  
Ce type de recherche repose sur l'appariement d'une question avec des documents ou des informations contenus dans une base, par l'intermédiaire de requêtes qui peuvent être de plusieurs types :

- thème ou descripteur
- mots du langage courant coordonnés par des opérateurs
- expression en langage naturel
- document entier utilisé comme exemple du sujet sur lequel on veut d'autres informations
- graphe de concepts

Notion de pertinence (relevance) :
indices utilisés = rappel / précision, bruit /silence.

Constituent le principal critère pour caractériser les performances des logiciels de recherche d'information.
Doit tenir compte toutefois du paramètre de nombre maximum de réponses imposé aux moteurs de recherche : le rappel dépend fortement de ce nombre.

Comparaison possible des performances des moteurs de recherche par des courbes précision-rappel.
la précision moyenne des logiciels actuels est de l'ordre de 20 à 30%.

Autre critère : efficacité = temps de réponse acceptable.

Types de requêtes des moteurs de recherche

La recherche d'information associe habituellement indexation et interrogation.

Problème sur internet :
Interrogations brutes à partir de mots du langage courant = beaucoup de bruit et de silence, se vérifie souvent avec les moteurs de recherche du web.

Recherche d'information comme processus itératif, mettant en oeuvre plusieurs requêtes successives permettant d'affiner les résultats rendus par le système = important sur internet (recherche simple sur Altavista).

  • Le langage des requêtes

Une syntaxe quasiment commune à la plupart des outils de recherche :

- Opérateurs booléens :
ET - OU - SAUF s'appliquent à la fois à la recherche de mots combinés dans le texte libre et à la recherche sur champs.
Nécessité de connaître l'opérateur par déaut qui s'applique sur chaque moteur (généralement le ET).

- Opérateurs numériques :
consiste sur les moteurs de recherche à prendre en compte la date de mise à jour du document (et non la date de publication d'un article par exemple)

- Opérateur de troncature: variante sur les mots

- Recherche d'une expression

Autres possibilités :

- Opérateurs sur le texte intégral : proximité, adjacence : nécessaires lorsque l'on recherche dans des documents en texte intégral

- Requêtes sur champs = variables selon les moteurs; en général sur le titre, sur l'URL, sur le nom de domaine.
Autres champs éventuels : le serveur, le texte des liens, les liens, les balises de métadonnées, etc.

- Requêtes à partir de prédétermination de concepts et de domaines

- Réponses comme bases de nouvelles questions
 

  • Les différents types de requête sur le web :

Requête par utilisation de mots-clés, issus du langage naturel (langage non contrôlé); éventuellement sur champs

Requêtes en langage naturel :
proposée par quelques moteurs de recherche : Askjeeves - InfoClic - partenariat Albert/FAST (AltaVisa supporte l'interrogation en langage naturel pour l'anglais = réalisation de traitements linguistiques du type : suppression de mots vides (articles, prépositions...) ;
- transformation des mots en leur racine par troncature; la lemmatisation (identification d'un mot par son lemme = forme non fléchie)
mais problème d'efficacité lié à la très grande hétérogénéité des documents du web.

Requête par similarité : utilisation de la nature hypertextuelle du web et requêtes sur des pages web jugées proches (par les liens de citations) d'une autre page

 haut de page


Méthodes et classements des résultats

Notion de pertinence :

Les résultats d'une requête sont classés par pertinence ou relevance ranking = système,qui est censé faire apparaître en premier lieu les résultats jugés les plus pertinents.
S'ajoute aussi la possibilité de générer (manuellement ou automatiquement) une nouvelle requête plus adaptée, plus fine : le "relevance feedback".

De nombreux développements technologiques ont été faits par les moteurs, visant à pouvoir juger de la pertinence des documents retrouvés, avec par exemple : l'attribution d'un poids aux documents et classement par pertinence décroissante, la classification et enfin la recherche par similarité où le document retrouvé peut être la source d'une nouvelle requête (Find Similar / Related Pages ou Search).

Développement par les moteurs de recherche de méthodes de tri automatique des résultats. Variété de ces méthodes.
 
Objectif du classement :

vise à afficher dans les 10 à 20 premières réponses les documents qui en principe répondent le mieux à la question.

⇒ Enjeu considérable des méthodes de classement, dans la recherche d'information, dans la visibilité des sites, etc. (se rappeler que près de 90 % des internautes ne consultent que la première page...)

     Trois grandes méthodes de classement :
Indice de pertinence
Indice de popularité
Classification automatique

1. Tri par pertinence / indice de pertinence

Mesure qui est fondée à la fois sur la fréquence d'apparition des termes de la requête dans la page et sur leurs localisations; cet indicateur est utilisé systématiquement par tous les moteurs de recherche

Origine = travaux de recherche de Robertson et Sparckjones et implémentation du système dans le logiciel d'indexation Wais (fin des années 80).

Définition = Affichage des résultats de la requête selon un ordre qui est déterminé par le calcul d'un score pour chaque réponse.

Différents critères d'estimation de la pertinence, retenus par les moteurs de recherche :

la fréquence d'occurrence du mot dans la base de données (poids d'un mot en fonction du nombre d'occurrences) :
Elimination ou sous-évaluation des mots-vides, pondération des mots rares ou peu fréquents...

la densité du mot : calculée en fonction du rapport entre l'occurrence du mot dans le document et la taille du document :

si deux documents ont la même occurrence pour le même mot, document plus petit sera favorisé en pondération

Exemple : si le mot "bibliothèque" apparaît 10 fois dans deux documents, l'un de trois pages, l'autre de 50 pages, le document de trois pages sera jugé plus pertinent

la position du mot dans le texte : pondération plus ou moins grande du mot selon sa position et sa typographie :

position dans le titre, le début, la fin du texte (Alta Vista, HotBot)

mot en majuscule ou en caractère gras à l'intérieur du texte (Google)

mot appartenant à une liste de mots contrôlés

la similarité des mots du document avec les termes de la requête :

correspondance exacte des mots : prise en compte de la casse (typographie, accents)

proximité des termes

ordre des mots : pris en compte ou non selon les moteurs

Exemple : sur les termes "France-Allemagne" :

si l'ordre des mots pris en compte : Allemagne-France donnera un résultat différent (Alta Vista, Google, Northern Light...)

si l'ordre des mots non pris en compte : Allemagne-France identique à France-Allemagne (HotBot, Lycos

Le degré de proximité des termes dans le document induit un poids plus élevé.

Utilisation de l'indice de pertinence :

- Efficacité avec les bases de donnés Wais (homogènes et peu volumineuses)
- Dans les moteurs de recherche à partir de 1994

Fait intéressant : Introduction des balises Meta dans le calcul du score : balises TITLE, META keywords et
META description. Mais en fait, peu de moteurs en tiennent vraiment compte.

Problème :

La méthode de tri par pertinence peut être détournée : répétition de mots importants dans l'en-tête ou dans le texte = spamming.  

La majorité des moteurs utilisent le tri par pertinence = AltaVista, Ecila, Excite, FAST, HotBot, Inktomi, Lokace, Voila...

2. Le tri par popularité / indice de popularité

Pour pallier les inconvénients du tri par pertinence, une autre méthode de classement a été développée par certains moteurs avec des principes totalement différents.

Méthode fondée sur la prise en compte, non plus du contenu, mais de la spécificité du Web : les hyperliens.
Les liens peuvent être considérés un peu comme des relations sémantiques : si une page fait un lien sur une autre, les deux abordent probablement la même thématique.

Et le nombre de liens pointant vers un site constitue un indice de popularité de celui-ci = tri par popularité.

Les pages web sont ordonnées selon leur notoriété. Ce principe est directement inspiré des recherches menées en scientométrie et principalement des travaux de Price et Garfield sur la pratique de la citation entre les articles scientifiques.
 Le tri par popularité recouvre 2 méthodes :

Méthode fondée sur la co-citation

Algorithme d’évaluation de pertinence fondé sur la nature même du web, cad son hypertextualité : algorithmes vont donc explorer les réseaux de documents et de liens qui relient les documents.
Méthode introduite par le moteur Google, lancé en 1998 à l'Université de Stanford : elle utilise le principe mettant en relation liens et popularité pour le calcul de "Relevance Ranking" et le classement des pages de résultats. Le classement des pages se fait par une combinaison de plusieurs facteurs dont le principal est le fameux "PageRank" (du nom de l'un des fondateurs de Google, Larry Page).

PageRank : les pages affichées en premier sont les pages référencées de nombreuses fois = celles auxquelles aboutissent de nombreux liens faits sur une page + importance des sites qui pointent vers les résultats de recherche.

Les poids des documents sont pré-calculés par cette méthode et se basent sur leur popularité par le système de liens.

Visibilité de la popularité par les fonctionnalités des moteurs de recherche : utilisation de la fonction link d'Altavista = link:www.sites.univ-rennes2.fr/page1 -host:www.sites.univ-rennes2.fr

Classement indépendant du contenu.

2 problèmes se posent :
- Certaines sociétés ont établi des liens artificiels contre paiement + problème de l'auto-citation

Pour contrer la pratique des liens artificiels, Google calcule un indice de popularité à double niveau : calcul également de l'IPP (indice de popularité de la page) des pages qui pointent sur les résultats de recherche = 0 dans le cas de liens artificiels.

- ce système donne la primauté aux point de vue dominants, aux sites d'influence et défavorise les pages récentes et encore inconnues + les pages au contenu très pointu, à public restreint.

Les formules exactes de tri par popularité varient selon les moteurs (AltaVista, Google, Voila...)

ex : Clever possède un algorithme fondé sur un principe analogue, mais encore plus sophistiqué, travaillant à partir des notions de sites et pages de référence (d'experts) et de sites et pages pivots (répertoires; notion de "pouvoir rayonnant"). Attribution de notes de référence et de notes de pivot.

La note de référence d'une page augmente lorsque cette page est pointée par de nombreux pivots aux notes élevées et inversement la note de pivot d'une page augmente si elle pointe vers de sites de référence aux notes élevées.

Méthode fondée sur la mesure d'audience

     cf : DirectHit (fondé en avril 98) propose de trier les pages en fonction du nombre de visites qu'elles reçoivent = indice de clic.

 = analyse du comportement de l'internaute lors de la recherche d'information et de l'utilisation du moteur de recherche; vise à trouver les pages les plus populaires.

Note quel lien a été cliqué et le rang de ce lien dans la page de résultats, calcule le temps mis par l'utilisateur pour revenir à la page de résultats, s'il y revient (sinon = document pertinent = meilleur classement pour les prochaines requêtes). Pénalise les pages récentes, mais évite le spamming.

Mémorisation dans sa base de données

DirectHit peut être interrogé directement sur son site, il alimente aussi les résultats des moteurs.

3. Tri par calcul dynamique de catégories

Méthode de clustering ou agrégation (proposée par Northern Light); développé en bibliométrie dans les années 80 et appliquée à des corpus documentaires pour la veille technologique. Actuellement, prise en compte par les outils de Text Mining; utilisation de catégories prédéfinies et de catégories repérées automatiquement.

Retour sur les techniques de classification et affinement de la requête

Affinement de la requête
De quoi s'agit-il ? 
Il arrive que les résultats d'une recherche soient nombreux, même si la requête est précise et correcte. Les moteurs de recherche ont développé plusieurs techniques permettant à l'utilisateur d'affiner sa requête initiale.

Classification automatique
= technique exploitée par certains moteurs de recherche pour organiser le lot de résultats de la recherche et donner alors la possibilité d'affiner ou d'étendre la requête.

Modalités : 
- affinement de fait de la question par sélection d'un cluster
- exploitation des propositions issues de requêtes d'autres internautes (ex : Altavista constitute une base de données des termes saisis par les internautes).

Deux types de classification possibles :

Les classifications a priori :
classement des éléments dans des classes connues a priori
=
"classification par apprentissage supervisé".
ex : catégories issues d'un annuaire (fonction Fast Topic d'AllTheWeb, à partir de l'annuaire Open Directory), catégories Yahoo pour Google...
Voila propose en recherche approfondie la possibilité de faire sa requête en la limitant à un ou plus domaines prédéfinis.

Les classifications a posteriori :
regroupement a posteriori, sur la base de similarités trouvées dans tout ou partie du document
, non définies au départ (création de groupes homogènes dans le corpus); ensuite affectation des documents aux groupes créés, avec un tri par pertinence au sein du groupe
= clustering ou "apprentissage non supervisé"
Détermination d'une relation de ressemblance, de similitude entre documents, fondée sur des caractéristiques d'ordre statistique et sémantique; détermination du terme qui donnera son nom au cluster.

Intérêt pour la recherche : aide à la sélection d’un mot-résultat, aide à l’élimination des corrélations inintéressantes, évidentes ou connues ; suggestion d’idées et de pistes nouvelles
Ces fonctionnalités peuvent être complétées par une représentation graphique.

cf Exalead : l'un des premiers moteurs de recherche à développer cette technique de classification a posteriori.

⇒ Une analogie : pour mieux comprendre la différence entre les deux types de classifications, on peut faire l'analogie avec le classement d'un lot de livres :

dans un classement a priori : les livres seront classés selon un plan de classement pré-établi, par ex. la Classification CDU ou Dewey. Il s'agit de référer les caractéristiques du corpus à des rubriques pré-existantes.

dans un classement a posteriori : au lieu de classer les livres selon un plan de classement, on va déterminer les thèmes traités et on fait le classement des livres entre eux, par comparaison de leurs thèmes : le classement est fondé sur les caractéristiques mêmes du corpus documentaire

Présentation des résultats de la requête
Evolution dans l'organisation et le contenu des pages de résultats (listes).

La page de résultats présente traditionnellement différentes zones correspondant à différents types d'information :

rappel de la requête

liste des résultats

résultats d'origine, obtenus automatiquement

résultats sponsorisés

type d'information

...

catégories d'un annuaire complémentaire


Les moteurs de recherche se sont enrichis en fonctionnalités, également en ce qui concerne les résultats des requêtes :

sous-partie du module de recherche = présentation des résultats (tri, classement, affinement de la requête, catégorisation)

nouveau composant en aval de la chaîne : le module d'exploitation des résultats avec les outils de cartographie et de navigation.

haut de page