Institut de la Francophonie pour l'Informatique Rapport de stage de fin d'études MODULE D'EXTRACTION FOCALISE ET ANALYSE AUTOMATIQUE LINGUISTIQUE DU WEB NGUYEN Hong San Janvier 2007 Lieu de stage : Institut de Recherche en Informatique de Toulouse (IRIT) Période de stage : du 15/03/2006 au 30/09/2006 Tuteur de stage : Bruno GAUME TIEU LUAN MOI download : skknchat@gmail.com Remerciements Je tiens à remercier tout particulièrement Monsieur Bruno GAUME, tuteur de stage et professeur de l'Université Paul Sabatier, qui m'a accueilli de faire ce stage dans l'IRIT et m'a dirigé mon travail de recherche. Il m'a aussi donné des conseils dans le domaine de recherche et ainsi ceux dans la vie quotidienne. Je remercie aussi Franck SAJOUS, ingénieur de l'Équipe de Recherche en Syntaxe et Sémantique pour son soutien technique pendant mon stage. Je tiens également à exprimer toute ma sympathie à Alain MONIER pour ses aides précieuses dans la démarche de mon séjour à Toulouse.
J’adresse en fin mes reconnaissances aux professeurs de l’Institut de la Francophonie pour l’Informatique, pour m’avoir aidé à effectuer ce stage. TIEU LUAN MOI download : skknchat@gmail.com ii Résumé Ce stage se déroule dans un cadre d'une collaboration entre l'Institut de Recherche en Informatique de Toulouse (IRIT) et l' Équipe de Recherche en Syntaxe et Sémantique (ERSS). Notre objectif est de développer un outil informatique pour la construction automatique des corpus à partir du web en utilisant les outils analyse linguistique existés. Il s'agit de la construction d'un crawl focalisé du web et de l'intégration des outils d'analyse linguistique pour analyser les pages Web.
Dans un premier temps, nous présentons un modèle de crawl focalisé qui parcourait le Web pour télécharger les pages concernées à un sujet spécifique. Le crawl doit faire sortie deux résultats importants: les contenus textuelle des pages Web et le graphe des hyperliens des pages Web. Dans un deuxième temps, nous faisons une études sur les outils d'analyse linguistique TreeTagger, Syntex et Upery et les intégrons dans le système pour l'analyse des pages Web. Nous effectuons aussi le prétraitement des textes récupérés par le crawl avant de les passer à des outils linguistique.
Le résultat final est des corpus analysés qui parlent d'un sujet spécifique. Abstract This internship proceeds within a collaboration between the IRIT and ERSS. Our objective is to develop a tool for the automatic construction of the corpus from the Web by using the existed tools of linguistic analysis. It is about construction of a focused crawler of the Web and integration of the linguistic tools to analyze the Web pages.
Initially, we present a focused crawler model which traversed the Web to download the pages concerned on a specific topic. The crawler must give two important results: contents textual of Web pages and graph of hyperlinks of Web pages. In the implementation of crawler, we pay attention at all the technical problems: constitution of the starting germ, parallelism, strategies of crawl, politeness and spider trap. In the second time, we study the tools for linguistic analysis TreeTagger, Syntex and Upery and integrate them in the system for the analysis of the Web pages.
We carry out also the pretreatment of the texts recovered by the crawl before passing to linguistics tools. The final result is analyzed corpus which speaks about a specific topic. TIEU LUAN MOI download : skknchat@gmail.com iii Table des matières Introduction. Environnement de stage.
Graphes du Web. Objectif du stage. Organisation du rapport. 7 Crawl du Web.
Architecture de 2-modules. Architecture de 4-modules. Algorithme de crawl. Stratégies de crawl.
Respect de la politesse. 15 Construction du crawl focalisé. Suppositions et notations. Germe de départ.
Constitution du germe de départ. 20 TIEU LUAN MOI download : skknchat@gmail. Base de données. Environnement de programmation et dépendances.
35 Analyse linguitique des pages Web. Outils d'analyse linguistique. Analyse syntaxique en dépendance. Construction du réseau de syntagmes.
58 TIEU LUAN MOI download : skknchat@gmail.com v Liste des figures Figure 1: Diagramme des modules du stage. 6 Figure 2: Architecture de 2-modules. 10 Figure 3: Architecture de 4-modules. 11 Figure 4: Architecture du crawl.
22 Figure 5: Queue de deux niveaux: S1, S2,. sont les sites Web et Px.y est la yième page de site x. 24 Figure 7: Liens dans le frameset. 28 Figure 8: Liens dans les images mappées.
28 Figure 9: Exemple du calcul de la profondeur. 33 Figure 10: Interface d'utilisateur 1. 34 Figure 11: Interface d'utilisateur 2. 35 Figure 12: Exemple de l'analyse syntaxique.
38 Figure 13: Relation de dépendance syntaxique. 39 Figure 16: Quelques relations principales. 40 Figure 17: Algorithme DET. 40 Figure 18: Algorithme PREP-d.
41 Figure 19: Algorithme OBJ. 41 Figure 20: Algorithme SUJ. 42 Figure 21: Ambiguïté de rattachement des adjectifs. 42 Figure 22: Algorithme ADJ: recherche des candidats.
43 Figure 23: Algorithme ADJ: sélection d'un candidat. 44 Figure 24: Ambiguïté de rattachement des prépositions. 44 TIEU LUAN MOI download : skknchat@gmail.com vi Figure 25: Sélection de candidat par arg. 46 Figure 26: Exemple d'extraction des syntagmes.
47 Figure 27: Réseau terminologie. 47 Figure 28: Réseau terminologie dans un corpus entier. 48 Figure 29: Exemple de normalisation. 48 Figure 30: Exemple de la productivité.
51 Figure 31: Exemple de prox: prox(détresserespiratoire,syndrome) = 1,10. 51 TIEU LUAN MOI download : skknchat@gmail.com 1 Chapitre 1 INTRODUCTION Ce rapport décrira les problèmes autour de mon stage de fin d'études à l'Institut de Recherche en Informatique de Toulouse (IRIT). Le stage se divise en deux parties: la construction de crawl du Web, l'étude et l'intégration avec les outils de traitement automatique linguistique. Ce chapitre donnera une vue générale du stage.
Environnement de stage Le stage se déroule grâce à une collaboration entre l'IRIT, et l'ERSS, Équipe de Recherche en Syntaxe et Sémantique. Cette session abordera dans les grandes lignes l'introduction de l'IRIT et l'ERSS. IRIT L'IRIT est une Unité Mixte de Recherche, UMR 5505, commune au Centre National de la Recherche Scientifique (CNRS), à l'Institut National Polytechnique de Toulouse (INPT), à l'Université Paul Sabatier (UPS) et à l'Université des Sciences Sociales Toulouse 1 (UT1). L'IRIT, créé en 1990, représente l'un des plus forts potentiels de recherche en informatique en France, fédérant plus de 190 chercheurs et enseignants chercheurs, relevant non seulement de ses tutelles mais aussi de l'Université Toulouse Le Mirail (UTM).
Les objectifs que l'IRIT se donne sont à la mesure de sa taille, tant sur le plan de la recherche que sur le plan de la formation et du transfert technologique. La diversité des thèmes scientifiques couverts - héritée d'une longue histoire : Toulouse a été l'une des villes pionnières de l'informatique française - permet d'élaborer des projets ambitieux et de répondre à la forte demande du monde socio-économique. Cette TIEU LUAN MOI download : skknchat@gmail.com 2 diversité au sein de l'Institut constitue un très important foyer de multidisciplinarité et de complémentarité. ERSS L'ERSS est une unité mixte de recherche (UMR 5610) sous la double tutelle du CNRS et du Ministère de l'Education et de la Recherche.
Elle est implantée sur deux sites : l'Université de Toulouse-Le Mirail et l'Université Michel de Montaigne à Bordeaux. Depuis sa fondation en 1981, l’ERSS se donne pour fin la description scientifique des langues dans leurs différentes composantes (phonologie, morphologie, syntaxe, sémantique, pragmatique, lexique) et la modélisation des descriptions obtenues, cette activité modélisatrice donnant lieu à des collaborations tant avec les informaticiens (spécialistes de l’intelligence artificielle et de l’ingénierie linguistique) qu’avec les psycholinguistes. Les langues étudiées sont multiples : au français commun - auquel est consacrée la majorité des travaux de l’équipe -, au latin, à l’anglais, à l’espagnol, au coréen et au japonais, sont venus s’ajouter par exemple au cours des quatre dernières années l’arabe et l’amharique, le barasana et le tatuyo, le sarde, l’italien et le serbocroate. Crawl focalisé Comme la taille entière du Web est trop large et ne cesse pas d’augmenter, même un grand moteur de recherche ne peut couvrir qu’une petite partie du contenu de Web.
Selon une étude de Lawrence et Giles (Lawrence and Giles, 2000), aucun moteur de recherche n’indexe plus de 16% du Web. Pour la raison de l'explosion de la taille du Web, les moteurs de recherche deviennent de plus en plus importants comme un moyens primaires de localiser l'information sur Web. Les moteurs de recherche se fondent sur les collections massives de pages Web qui sont acquises à l'aide des crawl du Web. Le crawl parcourt le Web en suivant les hyperliens et en stockant une copie des pages visité dans une grande base de données.
Dans les quelques dernières années, plusieurs travaux académiques et industrielles ont été portés sur la technologies de recherche d'information sur Web, composant les stratégies de crawl, TIEU LUAN MOI download : skknchat@gmail.com 3 le stockage, l'indexation, et quelques techniques dans l'analyse du structure du Web et graphe de Web. La majeure partie des travaux récents sur les stratégies de crawl n'adresse pas du tout les questions des performances, mais essaye de minimiser le nombre de pages qui ont besoin de télécharger, et maximiser les bénéfices obtenus à partir des pages téléchargées. Cette stratégie convient bien aux applications qui ont seulement la largeur de bande très limitée. Cependant, dans le cas d'un plus grand moteur de recherche, on a besoin de combiner la bonne stratégie de crawl et la conception optimisée de système.
Dans ce travail, nous n'avons pas l'intention de développer un crawl de « grand public », ou un crawl exhaustif, comportant un très grand nombre de pages, mais nous concentrons sur une technique de crawl, le crawl focalisé ou crawl ciblé, qui focalise sur quelques type de page, par exemple, les pages d'un domaine particulier ou en une langue particulière, les images, les fichier mp3, ou les articles scientifiques. L'objectif de crawl focalisé est de chercher un grand nombre de pages intéressées sans utiliser une grande largeur de bande. Alors, la plupart des travaux précédents sur le crawl focalisé n'utilise pas un crawl à haute performance. Le crawl commence son exécution par une liste des URLs initiaux, ou un germe de départ.
Le germe de départ est établi selon chaque stratégie de crawl. Dans notre travail, nous utilisons les moteurs de recherche générale comme Google, Yahoo, Alta Vista. pour construire le germe de départ. Le crawl présenté dans ce rapport sera intégré avec les outils de traitement de la langue naturelle afin de construire les corpus d'un domaine particulier.
L’utilisateur doit d’abord définir les critères de recherche qui contiennent les mots clés du domaine intéressé, la langue utilisée, les moteurs de recherche générale, la formule propositionnelle. Puis, le crawl lance la recherche sur les moteurs de recherche choisis pour récupérer la liste des URLs de départ. A partir de la liste des URLs de départ, ou le germe de départ, le crawl déclanche en suite les agents de recherche pour continuer à chercher les pages pertinentes sur la toile. Avant d’être enregistrée dans le disque local, la page est prétraitée.
Si la page est en HTML, le crawl est chargé de nettoyer toutes les balises HTML et d’extraire le texte clair de la page. Le texte clair est prêt pour les étapes d’analyse linguistique suivantes. Dans le cadre de ce travail, seulement les fichier HTML et texte sont téléchargés et TIEU LUAN MOI download : skknchat@gmail. Nous ne traitons pas les autres types de document comme : PDF, Microsoft Word, RTF,.
Graphes du Web Le Web est souvent considéré comme des graphes dont les noeuds sont des pages et les arcs sont les relations entre les pages Web comme le hyperlien ou la similarité entre les pages. La construction des graphes du Web est utile pour la stratégie de crawl, de recherche, ou la découverte de la communauté et le phénomène sociologique qui détermine l’évolution du Web. Dans ce travail, nous nous intéressons à deux types de graphes du Web : graphe des hyperliens et graphe de similarité.