1. Trang chủ
  2. » Ngoại Ngữ

Collecte d’information sur le web relatif à des domaines restreints, à base d’agents et d’ontologies

54 302 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 54
Dung lượng 1,05 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

AGATHE est une architecture proposée pour le système d’extraction des informations dans des domaines restreints sur le Web qui se base sur des agents et des ontologies.. Rapport du stage

Trang 1

Laboratoire des Sciences de l'Information et des Systèmes

(LSIS)

Institut de la Francophonie pour

l’Informatique (IFI)

Rapport de fin du stage M2R

Sujet Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et

d’ontologies

Directeur : Bernard ESPINASSE Encadrant : Sébastien FOURNIER Réalisateur : Nguyen Manh Hung

Trang 2

Remerciements

Ce travail a été effectué au Laboratoire des Sciences de l’Information et des Systèmes (LSIS) dirigé par Monsieur le Professeur Norbert Giambiasi Je le remercie sincèrement de m’avait accueilli dans sa laboratoire

Que Monsieur Bernard Espinasse, Responsable de l’équipe Information et Connaissances Distribués (INCOD) du LSIS, reçoive toute l'expression de ma reconnaissance pour m'avoir proposé et dirigé ce sujet de recherche, et, pour tout son dynamisme et ses compétences scientifiques qui m'ont permis de mener à bien cette étude

Mes plus sincères remerciements vont également à Monsieur Sébastien Fournier, membre de l’équipe INCOD, qui en agissant à titre de co-directeur a fortement enrichi ma formation Ses conseils et ses commentaires auront été fort utiles

Merci aussi à tous mes collègues et amis du laboratoire qui se reconnaîtront ici Je leur exprime ma profonde sympathie et leur souhaite beaucoup de bien

Je souhaite enfin remercier mes amis pour leurs encouragements et leurs conseils lors de ce séjour en France

Trang 3

Table des matières

Table des matières 1

Résumé 3

Abstract 4

Introduction 5

Chapitre 1 6

Problème d’extraction des informations 6

1.1 Extraction des informations sur le Web 6

1.1.1 Détermination des régions 6

1.1.2 Extraction des informations sur les régions 8

1.2 Utilisation de la syntaxe des marqueurs 9

1.3 Utilisation d’ontologie de domaine 10

1.3.1 Ontologie 10

1.3.2 EI à base d’ontologie 11

1.4 Extraction des informations par agent 12

1.4.1 Agent 12

1.4.2 EI à base d’agent 13

1.5 Conclusion 14

Chapitre 2 15

MasterWeb et AGATHE 15

2.1 MasterWeb 15

2.1.1 Architecture et fonctionnement 15

2.1.2 Agent d’extraction 16

2.2 AGATHE 17

2.2.1 Architecture et fonctionnement 17

2.2.2 Sous système d’extraction 18

2.3 Conclusion 22

Chapitre 3 23

Projection de MasterWeb à AGATHE 23

3.1 Spécification du problème 23

3.1.1 Problématique 23

3.1.2 Spécification générale 23

3.1.3 Spécification des agents 25

3.1.3 Spécification des protocoles 28

3.3 Conception 30

Trang 4

3.3.1 Outils utilisés 30

3.3.2 Les classes de MasterWeb 33

3.3.3 Les classes de AGATHE 34

3.3.4 Les messages 38

3.3.5 La base de données 38

3.4 Mise en œuvre 39

3.4.1 Contexte de teste 39

3.4.2 Résultat 39

3.4.3 Perspectives 42

3.5 Conclusion 42

Conclusion 43

Bibliographie 44

Annexe 47

A Les messages 47

B Les tables de la BD 48

C Prototypes 49

C.1 Prototype des agents 49

C.2 Prototype de contenu des message 51

Trang 5

Résumé

Le problème d’extraction des informations sur Internet est de plus en plus complexe car l’environnement d’Internet devient le plus dynamique, hétérogène et distribué AGATHE est une architecture proposée pour le développement de système de collecte d’informations dans des domaines restreints sur le Web, à base des agents et des ontologies AGATHE réalise la recherche, la classification et l’extraction d’information de pages Web, en s’appuyant sur les ontologies notamment liées aux domaines restreints considérées Ces tâches de recherche, de classification et d’extraction des informations à base d’ontologies sont réalisées dans AGATHE par des agents logiciels spécialisés qui coopérèrent Ce stage se présenté comme une contribution au développement du système AGATHE, contribution plus particulier lié au développement du sous-système d’extraction selon un système multiagent

Trang 6

in AGATHE by specialized software agents which cooperated This stage presented like a contribution to the development of AGATHE system, contribution more particular related

to the development of the extraction subsystem according to a multiagent system

Trang 7

Introduction

Dans les dernières années, les pages Web et les informations qu’elles contiennent sont

de plus en plus nombreuses Il y a de plus en plus de sources d’information qui sont disponibles sur le Web En outre, les sources sont hétérogènes : elles sont créées par plusieurs personnes différentes ; les pages sont construites en utilisant des méthodes et des techniques différentes ; les informations sont présentées de n’importe façon sur la page… De plus, les pages Web sont dynamiques : leur structure est instable ; les informations présentées sont toujours mises à jour selon le besoin de leurs propriétaires

La cherche et l’extraction des informations pertinentes deviennent alors de plus en plus difficiles et complexes Dans ce contexte, l’extraction des informations (l’EI) sur le Web est l’objet de nombreuses recherches Plusieurs systèmes sont proposés selon des approches différentes pour l’EI

Le projet AGATHE [7] est développé dans l’équipe INCOD du Laboratoire des Sciences

de l’Information et des Systèmes (LSIS) en collaboration avec l’Université Fédérale de Pernambuco (Cin-UFPE - Brésil) AGATHE est une architecture proposée pour le système d’extraction des informations dans des domaines restreints sur le Web qui se base sur des agents et des ontologies AGATHE réalise la recherche, la classification et l’extraction d’information de pages Web, en s’appuyant sur les ontologies notamment liées aux domaines restreints considérés Ces tâches de recherche, de classification et d’extraction des informations à base d’ontologies sont réalisées dans AGATHE par des agents logiciels spécialisés qui coopérèrent Les processus de classification et d’extraction dans AGATHE, déclaratifs à base de règles, s’inspirent de MasterWeb, un système développé au Brésil [10]

L’objectif de ce stage est de contribuer au développement du système AGATHE, notamment à la conception et à la réalisation de sa partie d’extraction (clusters d’extraction) à partir de MasterWeb selon un système multiagent Ce document va présenter le travail sur ce stage Il est organisé comme suit : le chapitre 1 va présenter généralement l’état de l’art sur le problème d’EI sur le Web, en particulier les approches qui sont proches de MasterWeb et d’AGATHE ; le chapitre 2 va présenter le système MasterWeb et l’architecture AGATHE selon la tendance d’utilisation des agents et des ontologies pour le problème d’EI sur le Web ; le chapitre 3 va présenter la réalisation AGATHE à partir de MasterWeb : appliquer l’architecture AGATHE au système MasteWeb ; la dernière section serra conclusion

Trang 8

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Chapitre 1 Problème d’extraction des informations

Ce chapitre va présenter l’état de l’art du problème d’extraction des informations (EI) sur

le Web : la section 1 va présenter le contexte général de l’EI ; les trois sections suivantes vont présenter différentes approches dans l’EI : l’utilisation de structure des marqueurs, l’utilisation d’ontologie, l’utilisation d’agent ; la dernière section sera une conclusion du chapitre

1.1 Extraction des informations sur le Web

Les pages Web et les informations qu’elles contiennent sont de plus en plus nombreuses sur Internet La recherche et l’extraction des informations pertinentes sont de plus en plus difficiles et complexes Dans ce contexte, l’extraction des informations sur le Web est l’objet de nombreuses recherches

L’extraction des informations (l’EI) dépend de la nature des pages Web En se basant sur

la façon dont les informations sont présentées sur la page, on peut considérer que, aujourd’hui, il y a deux types de Web : le Web caché et le Web explicite Dans une page

du Web caché, les informations ne sont affichées qu’après avoir rempli quelques formulaires Une page du Web explicite est une page normale : les informations sont affichées dès que l’on entre dans la page Selon ces deux types de Web, les recherches sur l’EI sur le Web sont :

L’EI sur le Web caché On se concentre sur la génération automatique des informations à remplir les formulaires pour retirer des informations nécessaires L’EI sur le Web explicite On s’intéresse à la façon dont on détermine les régions qui contiennent des informations nécessaires sur une page et la manière dont on extraie des informations pertinentes à partir de ces régions

En général, les informations apparaissent sur le Web explicite sous forme de page HTML dont la structure est libre : elles peuvent se situer n’importe ó dans la page L’EI sur les pages Web doit passer deux grandes étapes :

Premièrement, la détermination des régions contenant des informations nécessaires

Deuxièmement, l’extraction des informations pertinentes à partir des régions déterminées

Les sous-sections suivantes vont présenter ces deux étapes

1.1.1 Détermination des régions

Comme les informations apparaissent n’importe ó dans la page Web Le problème qui

se pose est : comment peut-on déterminer si une région contient des informations

Trang 9

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

nécessaires Plusieurs recherches s’intéressent à ce problème On peut distinguer trois grandes approches dans ces recherches [34] :

Approche basée sur le traitement du langage naturel (TLN)

Approche basée sur les marqueurs sémantiques Cette approche permet de créer

de nouveaux marqueurs personnels pour marquer le contenu sur une page Elle commence à être utilisée dans le domaine de Web Sémantique

Approche basée sur un modèle structuré commun Les informations sont structurées de façons différentes L’idée est de restructurer ces informations en une structure commune qui est indépendante de la source des informations L’EI sur plusieurs sources différentes devient plus facile et plus efficace Le traitement n’extrait qu’une seule structure Aujourd’hui, cette troisième approche est adoptée dans plusieurs recherches

Comme les informations sont structurées de façons différentes L’idée est de restructurer ces structures dans une structure commune qui est indépendante de la source des informations Le problème est comment peut-on construire la structure commune à partir des pages Web différentes On distingue trois grandes approches possibles :

L’utilisation des techniques XML L’utilisation d’arbre des marqueurs L’utilisation d’ontologie du Web Les sous-sections suivantes vont développer plus ces trois approches

a Utilisation de XML

La structure des marqueurs HTML dans une page Web ressemble à celle d’un document XML, l’idée est de projeter une page HTML sur un document XML ([11], [25], [28], [33], [34]) Tout d’abord, une page HTML est projetée en XML en complétant les marqueurs incomplets Puis, les régions contenant des informations sont déterminées en utilisant des techniques différentes : soit une ontologie de domaine ([28], [33], [34]), une transformation

en XSLT (Extensible Stylesheet Language Transformations) ([11], [25])

Cette approche a un grand avantage, c’est d’être simple et compréhensible car XML est populaire et ses techniques (ex XSLT) sont connues Cependant, elle a aussi un grand désavantage : la transformation en XML est seulement efficace dans le cas ó la structure

de la page HTML est toujours stable ([33], [34]) Actuellement, beaucoup de pages ont une structure qui change souvent, cette approche n’est alors plus applicable

b Utilisation d’arbre des marqueurs

Cette approche est aussi basée sur la structure des marqueurs HTML dans une page Web Cette structure ressemble à celle d’un arbre dont les nœuds correspondent aux paires des marqueurs HTML Il s’agit tout d’abord de créer tout d’abord un arbre DOM (Document Object Model) correspondant à chaque page HTML ([17], [24], [44]) de façon suivante : (i) Compléter des marqueurs qui n'ont qu'un tag, ex <P>, <Br> ; (ii)

Trang 10

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Supprimer les marqueurs inutiles (supprimer seulement ces marqueurs, ne supprime pas

le contenu dans des marqueurs); (iii) Chaque paire des marqueurs restante devient un noeud de l'arbre DOM ; (iv) Ce marqueur est contenu direct d'un marqueur parent devient

un fils direct du noeud correspondant au marqueur parent Puis, on peut éliminer des bruits (les nœuds inutiles) sur l’arbre en utilisant la technique sur l’arbre ST (Style Tree [44]) En suite, les régions contenant des informations sont déterminées en se basant sur des techniques différentes : en utilisant la distance éditée entre les chaỵnes caractères ([17], [44]) ; en calculant la cọncidence entre les chaỵnes caractères ([6], [24]) Les régions déterminées sont réservées à la phase d’extraction des données

La création d’un arbre DOM se fait selon des étapes claires et concrètes Cependant, elle n’est efficace qu’avec les pages dont les régions représentent les informations sous forme d’un tableau (en lignes et en colonnes [19]) ou sous une forme identique pour plusieurs pages ([6], [17], [24], [44]), ex pour les pages représentant les produits (livres, voitures, vêtements…) Elle ne marche plus sur les sites dont les pages ont des formulaires différents

c Utilisation d’ontologie du Web

Cette approche est aussi basée sur la structure des marqueurs HTML dans une page Web Une page HTML est construite par un ensemble des marqueurs HTML Cet ensemble contient les éléments définis et le nombre de type des éléments est limité On peut représenter ces marqueurs par un ensemble de classes et d’instances, on dit que l’ensemble des classes et instances correspondant aux marqueurs HTML est une ontologie Web

Le processus de détermination des régions est le suivant : tout d’abord, une page HTML est projetée sur l’ontologie Web dont chaque classe ou instance correspond à un marqueur HTML ; puis, les régions contenant des informations sont déterminées sur le résultat de la projection, ex ([7], [10]) utilisent les règles construites en JessTab [9] pour déterminer les régions

L’utilisation d’ontologie Web a un grand avantage : elle est appliquée à n’importe quel type de page Web Parce que l’ontologie Web est indépendante de la source, de la structure et du contenu de la page HTML Cependant, elle a aussi un désavantage : pour raisonner sur l’ontologie, il faut utiliser des règles dont la gestion est complexe et dont la manipulation n’est pas très facile

1.1.2 Extraction des informations sur les régions

Après avoir déterminé les régions contenant des informations, on a besoin d’extraire les informations nécessaires Trois principales approches peuvent être utilisées :

L’approche basée sur la syntaxe des marqueurs HTML

L’approche basée sur l’ontologie de domaine (extraction sémantique)

L’approche basée sur des agents

Trang 11

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Les sections suivantes vont présenter ces approches en détail

1.2 Utilisation de la syntaxe des marqueurs

Cette méthode est basée sur la même technique que celle utilisée pour l’étape de détermination des régions Elle est basée sur la structure de la page HTML de façons différentes : en utilisant XML et la transformation XSLT ([11], [25]) ; en utilisant la distance éditée entre les chaỵnes caractères ([17], [44]) ; en calculant la cọncide entre les chaỵnes caractères ([6], [24])

Dans cette méthode, il existe des outils, par exemple, RoadRunner [6] extraie automatiquement des données sur les pages en se basant la grammaire du codage HTML Il traite deux pages en parallèle : il calcule la similarité et la dissimilarité entre deux pages HTML en se basant sur la cọncidence entre deux chaỵnes de caractères

B.Lui et al ([17], [44]) a proposé une méthode extrayant des lignes de données en se basant sur l’arbre DOM avec deux hypothèses : (i) une région ne contient qu’un ou plusieurs tableaux ayant des lignes et des colonnes de données ; (ii) les données dans le même tableau ont la même structure La phase d’extraction ne traite que les sous arbres dont la racine est le nœud composant tous les marqueurs d’une région : on calcul la similarité entre les fils d’un nœud en utilisant la distance éditée S’ils sont semblables, ils seront considérés comme les lignes d’un tableau de données Dans le cas contraire, ils seront considérés comme des tableaux indépendants et chaque nœud et ses fils seront traités comme une région indépendante

En se basant sur la même hypothèse que les données ne sont apparues que dans les tableaux ayant des lignes et des colonnes de données, K.Lerman et al [19] a proposé un algorithme d’extraction de données en générant des templates pour les pages HTML selon trois étapes : (i) rechercher du template pour la page ; (ii) identifier les colonnes des données dans la pages avec une hypothèse que les données dans la même colonne ont

le même type ; (iii) identifier les lignes dans les colonnes en utilisant les labels Avec cet algorithme, on n’a pas besoin de distinguer les deux étapes de détermination de régions

et d’extraire des données

X Meng et al [24] a proposé une méthode qui s’appelle SG-WRAM (schema-guided approach to wrapper maintenance) Elle maintient les wrappers en se basant sur les caractéristiques syntaxiques selon quatre étapes [24] : (i) les caractéristiques sont obtenues à partir de schéma définie par l’utilisateur, des règles d’extraction précédentes

ou des résultats extrait ; (ii) reconnaỵtre des données en basant ces caractéristiques ; (iii) regrouper des données à la schéma, chaque groupe peut être une instance de la schéma ; (iv) les instances représentatives sont sélectionnées pour diminuer les règles d’extraction dans la phase suivante

Pour conclure, les méthodes basées sur la syntaxe des marqueurs se caractérisent ainsi :

Elles réalisent seulement un traitement syntaxique Le traitement est basé sur la grammaire du codage HTML, sur la syntaxe des marqueurs HTML ou sur la

Trang 12

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

structure de la page HTML En conséquence, ces méthodes ne sont pas très complexes, les algorithmes sont clairs

Elles reposent sur plusieurs hypothèses : soit les pages HTML du même site ont une structure stable ([6], [17], [24], [44]) ; soit les régions des données sont sous forme d’un ou de plusieurs tableaux ([17], [19], [44]) ; soit les données dans les lignes ont la même structure ([17], [44]) ; soit les données dans la même colonne ont le même type ([19]) Chaque méthode peut seulement bien marcher sur un nombre limité des pages Web

Les données extraites sont « bruitées » Normalement, les données extraites sont toutes les informations dans un celle d’un tableau ou les informations entre un complet marqueur HTML Ces méthodes ne peuvent extraire qu’une partie des données, dans un celle d’un tableau, qui concerne dans un domaine spécifique

1.3 Utilisation d’ontologie de domaine 1.3.1 Ontologie

Récemment, les ontologies sont de plus en plus utilisées dans le contexte du Web Sémantique Svab et al [37] distingue trois types d’ontologie pour l’EI :

L’ontologie terminologique : elle représente les termes dans les langages humains Elle est applicable dans l’annotation de texte

L’ontologie de représentation : elle représente les objets Web dans les pages Web Elle est applicable dans l’analyse de discours linguistique

L’ontologie de domaine : elle représente les classes, les instances, les slots… des objets dans un domaine spécifique

Figure 1 représente une partie de l’ontologie de domaine scientifique Les rectangles représentent les classes, instances (objets) Les arcs représentent les relations entre eux

Figure 1 : Une partie de l’ontologie de domaine d’événement scientifique (source [7])

Trang 13

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Ce document se concentre seulement sur l’ontologie de domaine qui est utilisée dans le problème d’EI Certaines entre eux proposent des outils utilisant l’ontologie de domaine pour l’extraction des données sur le Web

1.3.2 EI à base d’ontologie

Snoussi et al [34] considèrent que l’ontologie est une façon de décomposer le monde en objets et de décrire ces objets Ils utilisent SOX (Schema for Oriented-Object XML) pour définir et modéliser une ontologie Ils ont construit un outil WeDaX (Web Data eXtraction) qui utilise l’ontologie de domaine pour extraire des données sur le Web selon quatre étapes : (i) télécharger les pages HTML et les transformer dans les documents XML ; (ii) construire un modèle des données en utilisant SOX et une ontologie ; (iii) projeter les documents XML aux classes, instances et slots de l’ontologie ; (iv) permettre à l’utilisateur

de choisir les éléments des données sur la page dont il a besoin

McDowell et al [22] a proposé un outil OntoSyphon qui extraie des données sur le Web avec une ontologie : il prend l’ontologie et les pages HTML entrées, et à la sortie, il retourne les données extraites correspondant aux classes, aux instances et aux slots de l’ontologie Cet outil extraie des données selon les cinq étapes : (i) identifier une classe promise à partir de l’ontologie ; (ii) générer des phrases lexiques-syntactiques possibles pour les instances de la classe en utilisant le traitement heuristique ; (iii) chercher dans la page s’il y a des apparences de ces phrases, si oui, les extraire comme des instances candidates ; (iv) répéter les phases 2 et 3 jusqu’à ce que l’ensemble cherché soit vide ; (v) évaluer les instances candidates pour sélectionner les instances correctes de la classe

Espinasse et al [7] a proposé AGATHE, une architecture permettant d’extraire des informations sur le Web en se basant sur des agents et des ontologies Cette architecture est basée sur le même principe d’extraction des informations que MasterWeb [10] : (i) extraire fonctionnement des données en basant sur l’ontologie Web ; (ii) extraire sémantiquement des données de la page Web en utilisant l’ontologie de domaine avec des règles d’inférences en Jess Cette architecture sera présentée plus en détails dans la troisième section du document

Banko et al [3] a proposé TextRunner, un outil qui extraie des données ayant une structure indéfinie (les informations ouvertes) Buitelaar et al [2] a proposé SOBA, c’est

un sous composant du système SmartWeb Liddle et al [18] a proposé un outil qui permet

de créer et tester graphiquement l’extraction des informations sur le Web Popov et al [31] a proposé un outil qui permet de générer automatiquement les annotations entité-només avec les classes et les instances correspondantes

L’approche d’utilisation d’ontologie en EI se caractérise ainsi :

L’extraction sémantique Les informations sont extraites de façon sémantique en

se basant sur l’ontologie de chaque domaine De plus, elles sont plus pertinentes car on peut extraire une partie de texte dans la page HMTL Cependant, les

Trang 14

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

approches syntaxiques n’extraient qu’une celle d’un tableau dans les pages HTML

Elle peut profiter de la déclarativité de l’ontologie L’ontologie de domaine est déclarative Elle est donc ouverte et flexible ([30], [39], [42]) : on peut facilement ajouter, éditer ou supprimer des classes, les instances et des slots d’une ontologie

L’indépendance Il y a deux aspects de l’indépendance Tout d’arbord, l’ontologie est indépendante de la structure de la page Web et de façon dont les informations sont présentées sur la page Les approches de cette tendance sont donc indépendantes de la page HTML : ses résultats ne sont pas influencés par le changement da la structure de la page Ensuite, l’ontologie est indépendante de l’application On peut donc facilement élargir le système de l’un à l’autre domaine

en remplaçant l’ontologie de domaine correspondante

Par contre, la tendance d’utilisation de l’ontologie domaine a des difficultés dans la phase d’inférence sur l’ontologie, par ex WeDaX [34] utilise SOX, AGATHE [7] et MasterWeb [10] utilisent les règles d’inférence en Jess [9]

1.4 Extraction des informations par agent 1.4.1 Agent

Un agent [32] est considéré comme une entité autonome se situant dans un environnement spécifique, il est capable de vivre de façon autonome et flexible en percevant et en agissant sur son environnement pour atteindre son propre but Un agent

a quatre caractéristiques principales [41] : autonomie, réactivité, proactivité et sociabilité

Un système multiagent [38] est un réseau des entités qui peuvent interagir pour obtenir leurs propres objectifs, et donc, le système obtient l'objectif général Le système multiagent est efficace sur les applications dans les contextes suivants [26]:

Le système a besoin de communications complexes Une communication est considérée comme complexe si : elle a au moins deux participants et, échange des informations entres eux se passe en plusieurs fois

Le système doit fonctionner dans les cas ó on ne peut pas prévoir ou spécifier tout son comportement en des cas-en-cas (case-by-case)

Le système concerne la négociation, la collaboration ou la compétition entre plusieurs entités différentes

Le système doit fonctionner de façon autonome

Le système est prévu qu'il y ait des changements dans le système ou que le but

du système soit changé dynamiquement

Le système multiagent convient naturellement au problème de l’EI car, en effet, l’EI a des

Trang 15

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

caractéristiques correspondant aux contextes ci-dessus ([4], [27]):

Les sources des informations sont distribuées : elles appartiennent à plusieurs systèmes qui se situent aux serveurs différents sur le réseau Internet

Les sources des informations sont hétérogènes : elles sont réalisées par personnes différentes, en temps différents et en utilisant des mécanismes et des plates-formes différents

Les sources des informations changent dynamiquement selon le besoin de leurs propriétés

1.4.2 EI à base d’agent

Selon [4], un problème de l’EI n’est plus une requête simple sur la base des données, par contre, c’est un problème divisible en plusieurs sous problèmes interdépendants D’ailleurs, la réponse a besoin d’être intégrée à partir de plusieurs sous systèmes C'est-à-dire, on a besoin des communications complexes et de l’autonomie dans le système, c’est un contexte efficace du système multiagent

En effet, il y a plusieurs recherches choisissant le système multiagent comme une solution efficace pour le problème d’EI I Bouslimi et al [4] a proposé le modèle organisationnel CIGS (Cooperative Information Gathering System), ce modèle est réalisé

en utilisant Gaia, c’est une méthode d’analyse et conception du système orientées agent

R Okada et al [27] a proposé le modèle CAS (Coopreative Agents Society) pour l’extraction d’informations à partir d’Internet F Freitas et al [10] a proposé MasterWeb,

un système d’extraction des informations en basant sur l’ontologie domaine B Espinasse

et al [7] a proposé AGATHE (Agent information GATHEring), une architecture permettant d’extraire des informations sur le Web en basant sur des agents et des ontologies L Sofiane et al [36] a proposé MathNet, un système d’extraction des informations sur le Web en basant sur les agents mobiles T Xiaohui et al [43] a proposé une méthode d’expansion des requêtes basées sur des sujets hiérarchies, c’est une solution pour le problème d’EI S Cazalens et al [5] a proposé BONOM, c’est un système multiagent pour

la recherche des informations sur le Web

En basant sur la nature du système utilisé, on peut regrouper les recherches en trois groupes principaux :

Utilisation d’un seul agent, par exemple MasterWeb [10] En effet, il n’y a pas beaucoup de système dans ce groupe car quand on n’utilise qu’un seul agent, on

ne pourra pas complètement profiter les avantages d’un système multiagent : le partage du travail par l’interaction entre les agents et le traitement parallèle dans le système multiagent

Utilisation d’un système multi agent : CIGS [4], CAS [27], AGATHE [7]… Ce groupe est le plus populaire car il profite complètement des avantages du système multiagent Cependant, il existe toujours un problème lié sur l’analyse et

Trang 16

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

conception du système multiagent : jusqu’à présent, il n’y a pas encore de méthode standard et d’outil efficace qui nous aident à analyser et concevoir un système multiagent

Utilisation des agents mobiles, par exemple MathNet [36] En théorique, quand on utilise les agents mobiles, on pourra très bien s’adapter à l’environnement distribué, hétérogène et dynamique de Internet Cependant, quand on utilise les agents mobiles, on devra faire attention aux droits d’accéder aux ressources du serveur et aux problèmes sécurités sur le réseau Ces problèmes ne sont pas faciles à résoudre, donc les systèmes multiagent mobiles ne sont pas encore populaires

En résumé, le système multiagent est une solution qui semble convenable au problème d’extraction des informations sur le Web car elle est efficace dans un environnement distribué, dynamique et hétérogène correspondant de la nature de Internet

1.5 Conclusion

Aujourd’hui, le problème d’extraction des informations sur le Web est de plus en plus difficile et complexe car Internet est un environnement qui est de plus en plus distribué, dynamique et hétérogène Actuellement, il y a plusieurs recherches s’y intéressant et ils ont proposé plusieurs méthodes différentes pour l’extraction des informations sur le Web

En effet, chaque méthode a l’air efficace dans un domaine spécifique et sur des pages particulières

Ce chapitre a présenté l’état de l’art du problème d’EI Le problème d’EI contient deux types : l’EI sur le Web caché et l’EI sur le Web explicite Généralement, l’EI sur le Web explicite contient deux étapes : l’extraction des régions des données et l’extraction des données sur les régions L’extraction des régions peut être faite selon trois approches : en

se basant sur le traitement de langage naturel ; en se basant sur des marqueurs sémantiques créés par l’utilisateur ; en se basant sur la structure de la page HTML L’approche basant sur la structure de la page HTML a trois tendances : en utilisant les techniques de XML et XSLT ; en utilisant l’arbre des marqueurs (DOM) ; en utilisant l’ontologie Web La deuxième étape de l’EI, l’extraction des données sur les régions, a trois tendances : en utilisant des techniques syntaxiques ; en utilisant des techniques sémantiques basées sur l’ontologie de domaine ou en utilisant des agents

Le chapitre suivant va présenter MatserWeb et AGATHE Ce sont deux architectures pour

le problème d’EI Elles composent les deux approches qui utilisent des ontologies et des agents

Trang 17

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Chapitre 2 MasterWeb et AGATHE

Ce chapitre va présenter deux systèmes dans le problème d’EI qui composent les deux approches qui utilisent des ontologies et des agents : MasterWeb, un système existant pour l’EI et AGATHE, une architecture proposée pour le problème d’EI

2.1 MasterWeb

MasterWeb [10] est un système multiagent pour extraire des données sur Internet en se basant sur des ontologies : “Multi-Agent System for Text Extraction and Retrieval over the Web” Il fait partie du projet brésilien – allemande : « A sematic approach to data retrieval »

Cette section va présenter MasterWeb C’est un système multi agents qui est construit pour l’EI Il se compose deux approches qui utilisent des ontologies et des agents La section 1 va présenter généralement MasterWeb ; la section 2 va présenter l’agent d’extraction, le cœur de MasterWeb (Pour des détails sur MasterWeb, consultez [10])

2.1.1 Architecture et fonctionnement

L’architecture de MasterWeb a trois parties :

Chargement des pages : chercher et télécharger les pages Web à partir de plusieurs sources différentes Le composant principal de cette partie est le méta moteur

Extraction des informations : extraire des informations concernées à partir des pages qui sont reçues par le méta moteur C’est le cœur de MasterWeb Le composant principal de cette partie est l’agent d’extraction

Fourniture des services : fournir des informations extraites aux utilisateurs ou aux autres agents Le composant principal de cette partie est le médiateur

Le fonctionnement du système est illustré dans la figure 2 :

Tout d’abord, le méta moteur cherche des pages Web sur Internet en utilisant des moteurs de recherches existant (Altavista ou Excite…) Puis, il les télécharge et les envoie aux agents d’extraction

Chaque agent d’extraction s’occupe d’extraire des informations dans un domaine particulier Il reçoit les pages Web par le méta moteur Puis, il extraie des informations concernées en se basant sur les ontologies (l’ontologie de domaine

et l’ontologie Web) Les informations extraites sont stockées dans une base de données

Trang 18

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

De côté de l’utilisateur (les utilisateurs ou les autres agents) Il peut demander des informations dont il a besoin Le médiateur reçoit la demande Puis, il interroge la base de données pour répondre à la demande

Figure 2 : Architecture générale de MasterWeb (source [10])

2.1.2 Agent d’extraction

L’agent d’extraction s’occupe d’extraire des informations dans un domaine particulier (un cluster) Il reçoit les pages Web par le méta moteur Puis, il extraie des informations concernées en se basant sur les ontologies (l’ontologie de domaine et l’ontologie Web) Les informations extraites sont stockées dans une base de données

Figure 3 : Agent d’extraction de MasterWeb (source [10])

L’agent d’extraction fonctionne selon quatre étapes (figure 3 [10]) :

Trang 19

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Validation : vérifier si la page Web (vers un URL) est validée Une page est considérée comme validée si elle satisfait les conditions : elle est accessible ; elle est sous forme html ; elle n’est pas encore traitée précédemment

Prétraitement : extraire pour chaque page validée, des éléments représentants la page tels que le contenu, les titres de la page, les liens, les emails parmi d'autres éléments Ces données sont transmises au moteur d'inférence de l'agent

Reconnaissance : classifier fonctionnellement la page L’agent d’extraction vérifie

si la page s’agit d’une liste, d’un message, d’un frame ou d’une page html Puis, il

ne traite que la page qui est vraiment en html : si la page contient des informations concernant son cluster, elle sera transmise à la phase d’extraction Si la page contient des informations concernant les autres clusters, elle sera recommandée aux agents dans les clusters correspondants

Extraction : extraire des informations concernées en utilisant des ontologies de domaine

2.2 AGATHE

Cette section va présenter AGATHE C’est une architecture pour le problème d’EI Cette architecture se compose aussi de deux approches qui utilisent des ontologies et des agents La section 1 va présenter l’objectif, l’architecture et le fonctionnement de AGATHE ; la section 2 va présenter en détail le sous-système d’extraction, le cœur de l’architecture AGATHE (Pour le détail sur AGATHE, consultez [7])

2.2.1 Architecture et fonctionnement

Le système AGATHE est une architecture logicielle générique permettant le développement de systèmes de collecte d’information sur le Web sur un ou plusieurs domaines restreints [7] AGATHE met en œuvre une collecte coopérative d'information à base d’agents et d’ontologies Ce système prend en compte des contextes de recherche

en considérant des regroupements de pages Web relatifs à des domaines spécifiques

Figure 4 : L’architecture générale de AGATHE (source [7])

Trang 20

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Le système AGATHE contient trois sous-systèmes principaux [7] (figure 4) :

Le sous-système de Recherche (SSR) est chargé de l’interrogation des moteurs

de recherche externes sur le Web (comme Google) afin d’obtenir des pages Web qui seront traitées par le sous-système d’Extraction

Le sous-système d’Extraction (SSE) composé de différents « cluster d’extraction » (CE), chacun spécialisé dans le traitement de pages Web sur un domaine spécifique (comme celui de la recherche académique, ou celui du tourisme)

Le sous-système d’utilisation (SSU) assure le stockage des données extraites à partir des pages Web traitées par le sous-système d’Extraction, et fournit une interface d’interrogation pour des utilisateurs, pouvant être des humains ou d’autres agents logiciels

Le fonctionnement d’AGATHE est illustré dans la figure 4, par les flèches d’interaction numérotées entre ses différents sous-systèmes [7] :

flèche 1 : Un cluster d’extraction du SSE demande une recherche pour des pages particulières au SSR

flèches 2 et 3 : Le SSR travaille comme un méta robot de recherche, recherchant des pages Web, en interrogeant des moteurs de recherche existants comme Google, Altavista ou d’autres

flèche 4 : Ces pages sont ensuite transmises au SSE, plus précisément à l’agent

du cluster d’extraction qui en avait fait la demande (flèche 1)

flèche 5 : Si nécessaire, des recommandations sont envoyées par le cluster considéré à d’autres clusters d’extraction, ceci afin de leur proposer des pages qui peuvent potentiellement les intéresser

flèche 6 : L’information extraite est transmise au SSU, afin d’être stockée dans une base de données spécifique, et qui sera accessible pour interrogation par les utilisateurs (flèche 7)

Ce document se concentre seulement sur le sous-système d’extraction, les autres sont décrits détaillé dans [7]

2.2.2 Sous système d’extraction

Généralement, le SSE génère tout d’abord les requêtes de pages Web envoyées au SSR, puis et c’est sa tâche majeure, traite les résultats de ces requêtes provenant du SSR Cette tâche est composée de plusieurs sous tâches : validation, classification fonctionnelle et extraction d’information [7]

Trang 21

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Figure 5 : L’architecture interne de SSE (source [7])

Comme le montre la figure 5 [7], chacun des clusters d’extraction est un système agents réalisant la classification des pages Web obtenues et l’extraction d’informations à partir de ces pages Les clusters d’extraction sont composés de différents types d’agents : des agents extracteurs, des agents préparateurs, un agent superviseur, un agent de recommandation et un agent de stockage (pour les détails, consultez [7])

multi-a Agent préparateur

Chaque cluster a un ou plusieurs agents préparateurs Ils reçoivent les pages Web en provenance SSR Ils sont créés par l’agent superviseur du même cluster et peuvent être supprimés par lui lorsqu’ils ne sont plus utilisés

Figure 6 : Agent préparateur (source [7])

Ces agents réalisent un premier traitement, le traitement fonctionnel, des pages Web en

la séquence des tâches suivantes :

Validation : vérifier si les pages Web sont valides C'est-à-dire si elles sont au format HTML, elles sont accessibles, et si elles n’ont pas déjà été stockées dans

Trang 22

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

la base de données Les pages ne vérifiant pas ces conditions ne seront pas traitées par la suite

Prétraitement identifiant le contenu, le titre, les liens et les emails disponibles dans

la page en utilisant des techniques issues du domaine de l’RI (Recherche d’Informations) et éventuellement des techniques basées sur le langage naturel

Classification fonctionnelle : Cette tâche, à base de connaissances, utilise le moteur d’inférence Jess et exploite une ontologie définissant des concepts liés au Web (l’ontologie Web)

La figure 6 illustre l’enchaỵnement des tâches réalisées par l’agent préparateur L’agent préparateur reçoit (1) de l’agent superviseur les pages HTML brutes (sans traitement préalable) Commence alors la tâche de validation de ces pages (2) Alors soit l’agent commence la tâche de pre-processing (3), soit la page est invalide et est envoyée à l’agent stockeur (4) afin d’éviter de répéter le traitement dans le futur La tâche de pre-processing étant réalisée, la tâche de classification fonctionnelle est effectuée (5) Cette tâche produit des pages prêtes pour la phase d’extraction et de classification et ces dernières sont envoyées aux agents extracteurs (6) Dans le cas ó la page est invalide, celle-ci est envoyée à l’agent stockeur (7)

b Agent extracteur

Chaque cluster est aussi composé de plusieurs agents extracteurs La tâche spécifique

de ces agents est d’effectuer une classification sémantique des pages reçues, ainsi qu’une extraction des informations qu’elles contiennent Chacun des agents extracteurs est associé à un concept particulier de l’ontologie de domaine associé au cluster d’extraction considéré

Figure 7 : Agent extracteur (source [7])

La figure 7 illustre l’enchaỵnement de tâches réalisées par l’agent extracteur L’agent extracteur reçoit les pages préparées de l’agent préparateur (1) et effectue la

Trang 23

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

classification sémantique (2) Les adresses des pages classifiées et les classes auxquelles elles appartiennent, sont envoyées à l’agent stockeur (3), et à l’agent recommandeur (4) Ensuite, l’agent extracteur réalise la tâche d’extraction d’information des pages (5) Ces informations sont aussi envoyées à l’agent stockeur (6) et à l’agent recommandeur (7) Indépendamment des autres tâches, l’agent extracteur a la possibilité d’interroger le Web en envoyant une requête à l’agent superviseur du SSR (8)

c Agent recommandeur

L’agent recommandeur, illustré par la figure 8, reçoit les pages traitées par des agents extracteurs et recommande certaines de ces pages à d’autres agents extracteurs du même cluster ou à des agents recommandeur d’autres clusters Pour ce dernier cas, l’agent recommandeur a aussi connaissance d’une partie des ontologies liées aux autres clusters que le sien

Figure 8 : Agent recommandeur (source [7])

La figure 8 présente l’enchaînement de tâches effectuées par l’agent recommandeur Il reçoit l’information extraite et les pages classifiées d’agents extracteur (1), et des pages

de recommandation d’agents recommandeurs appartenant à d’autres clusters d’extraction (2) L’agent exécute la tâche concernant les recommandations vers les autres clusters d’extraction en utilisant les pages reçues au préalable (3,4) Les pages identifiées comme pouvant faire l’objet de recommandation sont transmises aux agents recommandeurs des autres clusters (6) en fonction des concepts identifiés au sein de ces pages Ensuite, il accomplit la tâche permettant d’identifier (5) les pages recommandées pour les agents extracteurs se trouvant dans le même cluster (7) Les autres pages sont envoyées à l’agent stockeur afin d’éviter tout traitement futur inutile (8)

d Agent superviseur

L’agent superviseur du cluster d’extraction possède des fonctionnalités similaires à celui

du sous-système de recherche Il supervise l’activité des agents préparateurs Il reçoit les

Trang 24

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

résultats des requêtes envoyées par le sous-système de recherche En fonction de la charge des agents préparateurs, il peut en créer ou en détruire et répartir les requêtes reçues entre eux

e Agent stockeur

L’agent stockeur est en charge de récolter les informations extraites et classifiées Il ne réalise pas directement l’action de stocker ces informations dans la base de données ; il prépare le stockage Il traite l’information qu’il reçoit afin de la conformer au format approprié de stockage selon la structure de la base de données Ensuite, les données formatées sont envoyées au SSU afin d’être physiquement stockées, et de pouvoir être exploitées par les utilisateurs

2.3 Conclusion

Généralement, AGATHE respecte le principe du problème d’EI sur le Web explicite Il traite les pages Web selon deux étapes :

Traitement fonctionnel : déterminer si la page contient des données nécessaires

en utilisant l’ontologie Web et des règles d’inférence Afin de déterminer si les données appartiennent au domaine spécifique, il utilise aussi l’ontologie de domaine pour cette étape

Traitement sémantique : classifier les données dan la page sont les instances de quelle classe dans l’ontologie domaine en utilisant l’ontologie domaine et des règles d’inférence

AGATHE se caractérise ainsi : les informations sont extraites sémantiquement ; l’utilisation de l’ontologie a l’avantage de façon déclarative ; l’extraction est indépendante

de la structure de la page, indépendante du changement de façon dont la page représente les informations, indépendante du domaine des informations

D’ailleurs, en basant sur le système multiagent, cette architecture est efficace dans un environnement distribué, dynamique et hétérogène correspondant de la nature de Internet

Ce chapitre a présenté deux systèmes d’EI qui composent les deux approches qui utilisent des ontologies et des agents :

MasterWeb, un système existant pour l’EI avec une architecture dont la partie d’extraction a un seul agent

AGATHE, qui s’appuise sur MasterWeb, c’est une architecture proposée pour le problème d’EI avec une architecture distribuée selon un système multi agents

Les deux systèmes ont le même but d’EI Ils utilisent les mêmes techniques : L’EI basée sur des ontologies et des agents Le chapitre suivant va présenter la projection de MasterWeb à la nouvelle architecture AGATHE

Trang 25

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

Chapitre 3 Projection de MasterWeb à AGATHE

Ce chapitre va présenter la projection du système existant MasterWeb à l’architecture proposée AGATHE : la section 1 va présenter la spécification du problème ; la section 2

va présenter la conception de système en détail ; la section 3 va présenter la mise en œuvre et l’évaluation de système ; la dernière section sera une petite conclusion du chapitre

3.1 Spécification du problème 3.1.1 Problématique

Comme la partie d’extraction de MasterWeb n’a qu’un seul type d’agent (agent d’extraction) qui s’occupe de traiter toute la chaîne d’extraction en séquence (dans un cluster) de la validation à l’extraction des pages Web, MasterWeb ne peut pas profiter des avantages d’un système multiagent réel : le traitement distribué et parallèle

Cependant, AGATHE est proposée comme une nouvelle architecture dont la partie d’extraction est considérée comme un système multiagent : il y a plusieurs agents qui partagent le travail de l’agent d’extraction C'est-à-dire, chaque agent s’occupe d’une partie de travail dans la chaîne d’extraction Clairement, ces agents peuvent traiter des pages Web en parallèle

Le problème principal est que comment peut-on projeter le travail de l’agent d’extraction

de MasterWeb aux travaux des agents dans le Sous-Système d’Extraction (SSE) de AGATHE Il contient :

Diviser et modifier le code, la base de règles, les ontologies de agent d’extraction

de MasterWeb aux ceux des agents dans le SSE de AGATHE

Définir et implémenter les protocoles, les messages pour la communication entre les agents dans le SSE de AGATHE

Reconstruire la base de données de MasterWeb pour s’adapter au nouveau système AGATHE

Les sections suivantes vont présenter en détail la façon dont on résout le problème

Trang 26

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

résultats des requêtes envoyées par le SSR

Agent préparateur : Il vérifie si la page est sous forme html ; identifie le contenu, le titre, les liens dans la page reçue Il classifie fonctionnellement la page

Agent extracteur : Il classifie sémantiquement la page et puis, extraie des informations dans son propre domaine sur la page prétraitée

Agent stockeur : Il sauvegarde les résultats classifiés et ceux extraits dans sa base des données

Agent recommandeur : Il reçoit des pages classifiées de l’agent extracteur et les envoie aux agents recommandeur des autres clusters

Ces agents sont décrits en détail dans la section 3.1.3

Figure 9 : Les agents et les protocoles dans SSE

Entre les agents du SSE, il y a les protocoles suivants (le protocole est nommé par le nom d’agent transmetteur plus le nom d’agent récepteur plus « protocole »):

Super_Prepa_Protocole : Il a lieu entre l’agent superviseur et l’agent préparateur dès que l’agent superviseur reçoit une page de agent recherche

Prepa_Stock_Protocole : Il a lieu entre l’agent préparateur et l’agent stockeur si, après avoir prétraité, il y a des pages invalidées ou après avoir classifié, il y a des pages de type Message, Liste

Prepa_Extrac_Protocole : Il a lieu entre l’agent préparateur et un agent extracteur

Trang 27

Rapport du stage : Collecte d’information sur le Web relatif à des domaines restreints, à base d’agents et d’ontologies

si, après avoir classifié, il y a des pages sous forme html

Extrac_Stock_Protocole : Il a lieu entre un agent extracteur et l’agent stockeur dès que l’agent extracteur termine sa classification ou son extraction

Extrac_Recom_Protocole : Il a lieu entre un agent extracteur et l’agent recommandeur si, après avoir classifié, il y a des pages à recommander

Recom_Recom_Protocole : Il a lieu entre l’agent recommandeur d’un cluster et celui d’autre cluster dès que le transmetteur reçoit une page recommandée d’un agent extracteur du même cluster

Recom_Extrac_Protocole : Il a lieu entre l’agent recommandeur et un agent extracteur dès que l’agent recommandeur reçoit une page recommandée de l’autre agent recommandeur de l’autre cluster

Ces protocoles vont être décrit en détaillé dans la section 3.1.4

3.1.3 Spécification des agents

Cette section va présenter en détail le comportement interne de chaque agent dans le SSE Ce document ne décrit que les trois premiers agents : Préparateur, Extracteur et Stockeur

a Agent préparateur

Figure 10 : Agent Préparateur

Ngày đăng: 27/10/2016, 23:04

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm