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>  ;</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.