Projet de moteur de recherche: Exemple M2 Pro Informatique

Transcription

Projet de moteur de recherche: Exemple M2 Pro Informatique
Projet de moteur de recherche: Exemple
M2 Pro Informatique Paris 11, cours IRI
Christian Jacquemin, Aurélien Max et Anne Vilnat, Université Paris 11
2004-2005
Exemple de traitement d’une requête
Soit la requête initiale : Quel volcan a détruit l’ancienne ville de Pompei ?
Ce document détaille, pour cette requête, les étapes successives de traitement qui permettent
d’aboutir à la présentation du résultat de la recherche d’information. Nous reprenons les étapes de
recherche d’information présentées dans le document Projet moteur de recherche linguistique.
1 Analyse de la requête
1.1 Passage dans le TreeTagger
Après passage dans l’étiqueteur, on obtient pour chaque mot de la requête une catégorie syntaxique et des informations flextionnelles. Par exemple, pour la requête précédente, on obtient
après simplification :
volcan : nom masc sg,
détruit : verbe détruire au participe passé,
Pompei : nom propre...
1.2 Extraction des termes
Les mots jugés importants d’après leurs étiquettes comme Nom ou comme Verbe et les
groupes de mots ayant une structure syntaxique particulière comme Nom Prép Nom ou Verbe
[Dét Adj] Nom sont retenus. À partir de la requête précédente, on retiendra, par exemple :
volcan, détruire ville, ville de Pompei, ancienne ville de Pompei
2 Déhtmlisation du texte
Parallèlement, on a des pages Web telles que l’extrait ci-dessous tiré du fichier
/homes/vilnat/DESS/IRI/impact-meteoroide3.htm :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html ; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>impacts-meteoroide3</title>
<script language="JavaScript" fptype="dynamicanimation">
...
<p>&nbsp ;</td>
<td width="85%" height="905" valign="top" align="justify"><b>
1
2
Exemple Moteur Recherche
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="86%">
<p style="margin-left : 15 ; margin-top : 15 ; margin-bottom : 0">
<span lang="FR-BE" style="mso-ansi-language :FR-BE">
<b style="mso-bidi-font-weight : normal ; mso-ansi-language : FR-BE">
<font color="#FF0000" face="Times New Roman" size="5">De meteore a meteorite</font></b></span></p>
<p style="text-indent : 0 ; margin-left : 15 ; margin-top : 0 ; margin-bottom : 0" align="justify">
<b><font face="Times New Roman" size="4" color="#000080">
Avons-nous deja connu pareil cataclysme ? (III)</font></b></p>
<p style="text-indent : 15 ; margin-left : 15 ; margin-right : 10 ; margin-top : 0 ; margin-bottom : 0" align="justify">
<font color="#000080">
<span style="mso-ansi-language : FR-BE">
<font size="3" face="Times New Roman">
Au cours de notre Histoire tres peu de recits ont relate des cataclysmes d’ampleurs regionales et semble-t-il, aucun ne
fait directement reference a l’impact d’un objet venu du ciel. Citons pour memoire quelques evenements marquants
survenus au cours des derniers millenaires.</font></span></font></p>
</td>...
Après déhtmlisation, le fichier texte résultant est prêt à être utilisé par les outils d’analyse et
d’indexation automatique. On va donc travailler sur le document suivant :
De météore à météorite
Avons-nous déjà connu pareil cataclysme ? (III)
Au cours de notre Histoire très peu de récits ont relaté des cataclysmes d’ampleurs régionales et semble-t-il, aucun
ne fait directement référence à l’impact d’un objet venu du ciel. Citons pour mémoire quelques événements marquants
survenus au cours des derniers millénaires.
En 1500 avant notre ère l’île de Thera en mer Egée fut soufflée par une explosion volcanique créant un raz-demarée qui s’enfonça jusqu’à 100 km dans les terres. Le volcan de Santorin explosa et sa caldera fut engloutie. Toute la
ville fut détruite et d’aucun considère que cet événement marqua le déclin de l’Empire Crétois et le début d’une légende,
celle de l’Atlantide.
En 62 apr.J-C. un tremblement de terre d’amplitude se produisit près de Naples provoquant l’éruption du Vésuve
et la destruction des villes de Pompei et Herculanum. Le même événement se reproduisit dix-sept ans plus tard...
3 Indexation automatique
Fastr va s’appuyer sur la liste de termes extraits de la requête pour relever, dans ce texte, des
occurrences de ces termes en tenant compte de certaines transformations :
explosion VOLCANIQUE
(à partir de volcan et la transformation nom -> adjectif)
VOLCAN de Santorin
VILLE fut DETRUITE
DESTRUCTION des VILLES de Pompei et Herculanum
(à partir de détruire ville et la transformation verbe -> nom)
4 Moteur de recherche
La similarité entre chaque document et la requête initiale est calculée à partir d’un poids attribué à chaque index en fonction (1) du type de terme et (2) du type de transformation permettant
de passer du terme à son occurrence dans le texte. La pondération résultante permet de classer les
documents par ordre de similarité décroissante.
D’autres formes de pondération élémentaire et de calcul de similarité pourront être mis en
œuvre.
M2 Pro Informatique Paris 11, option IRI
3
5 Présentation
On pourra ensuite présenter les résultats triés sous forme de pages HTML, en indiquant les
termes qui les ont faits retenir et en les accompagnant de liens vers les pages concernées (à la
manière de Google).
6 Inversion
Le fichier inverse permettra, à partir de chacun des termes retenus dans la requête, de pointer
vers leurs occurrences dans chacun des documents où ils apparaissent au moins une fois.
Un fichier inverse servira aussi, si on le souhaite, à construire un thésaurus avec une organisation hiérarchique de termes et des liens de chacun des termes vers les documents d’une collection.