Un système multi-agent adaptatif pour la construction d’ontologies à partir de textes

De la construction d’ontologies aux ontologies dynamiques

     Depuis des années, la communauté scientifique a bien identifié les difficultés et le coût inhérents à l’acquisition des connaissances en général et à la construction d’ontologies en particulier. Ce travail est réalisé par un analyste. Outre ces contraintes à prendre en compte, l’analyste doit toujours s’assurer que le modèle qu’il est en train de produire est conforme aux objectifs d’adéquation visés du point de vue de l’application qui exploitera l’ontologie mais aussi du domaine couvert. Pour se donner ce type de garanties, l’intérêt de travailler avec des experts, mais aussi avec des textes, est important. Or, il est aujourd’hui avéré que le travail à partir de corpus textuels permet de réduire l’effort de construction d’ontologies [Bourigault et Aussenac-Gilles, 2003; Szulman et al., 2002; Maedche et Staab, 2000b; Daille, 1994]. Pour cela, il convient d’utiliser un outillage adapté afin de trouver les informations pertinentes, en provenance des textes, pour la tâche de construction. Toutefois, l’analyste est noyé par la masse d’informations qui doit être examinée, et les systèmes actuels ne sont pas capables de les discriminer automatiquement pour sélectionner ce qui est réellement exploitable. C’est pourquoi on se repose encore essentiellement sur l’analyste qui apporte sa propre vision, critique, et sélectionne. Les travaux réalisés à ce jour ont donc très probablement augmenté la pertinence du produit résultant, et réduit les coûts de construction en aidant l’analyste, mais il reste beaucoup à faire. En particulier, les coûts devraient pouvoir être encore réduits en s’attaquant aux difficultés citées ci-dessus : en présentant seulement les éléments les plus pertinents tirés des textes et en cherchant automatiquement des informations plus précises. C’est pourquoi, depuis peu, un nouveau courant a émergé dans la communauté, celui des ontologies dynamiques.

Vers un système adapté : Dynamo

    Le but avoué du courant des ontologies dynamiques est d’automatiser au maximum le processus de construction à partir de textes [Heflin et Hendler, 2000]. Ainsi, on introduit la dynamique dans le procédé de fabrication, et non dans le produit lui-même qui reste inerte, en quelque sorte un consommable du Web sémantique. Pourquoi alors ne pas aller plus loin en ayant une structure elle-même dynamique ? Il s’agit là d’un but séduisant, en rupture avec les approches classiques où une ontologie est une référence non révisable, contrairement à la connaissance qui est en évolution constante. Ce statut consacré et figé de l’ontologie provient principalement de la limitation des outils actuels qui ne sont pas conçus pour gérer cette évolution. En général, les agents utilisent les ontologies pour fonctionner. A notre connaissance, aucun travail n’utilise les systèmes multi-agents pour les créer. Mais en cherchant à matérialiser ces ontologies dynamiques, nous nous sommes concentrés sur l’utilisation de systèmes multi-agents adaptatifs comme moyen pour atteindre ce nouveau but. En effet, par leur biais, nous pouvons construire des systèmes à fonctionnalité émergente dont les entités sont en interaction constante. Ainsi, la construction d’ontologies redevient une tâche de conception, mais en se plaçant dans un contexte de conception vivante et de structure maléable en fonction des interactions avec l’utilisateur. C’est le point de vue adopté pour notre système nommé Dynamo (DYNAMic Ontologies). Cette idée originale n’a jamais été expérimentée à notre connaissance. Tout est à définir et s’inscrit dans un courant utilisant le traitement automatique de la langue (TAL) pour parvenir à une ontologie. Une première étape de la recherche a donc consisté à définir la part d’analyse des textes prise en charge par les agents et la part traitée par des logiciels de TAL existants. Nous avions déjà cherché à évaluer la faisabilité d’une chaîne de TAL basée sur un système multi-agent [Ottens, 2004] et les résultats obtenus nous ont poussé à faire intervenir le système multi-agent adaptatif en aval d’outils de TAL plus classiques. Ainsi, chaque agent de notre système représente un concept de notre ontologie et cherche sa place dans l’organisation en utilisant des analyses statistiques basées sur un réseau terminologique créé par un extracteur de termes. Pour cela, nous nous reposons principalement sur un algorithme distribué de classification et des comportements complémentaires implémentés dans nos agents pour construire la composante taxonomique de l’ontologie. Toutefois, cette approche soulève des difficultés inhérentes à la création de tels systèmes adaptatifs. C’est pourquoi notre contribution comporte également un volet concernant l’ingénierie agent. Le domaine d’application étant complexe, notre système doit être construit avec rigueur, et notre apport pour l’ingénierie des systèmes multi-agents se place dans cette optique méthodologique, proche du génie logiciel.

Linguistique de corpus et ingénierie des connaissances

     Il est alors légitime de se poser la question des spécificités de l’ingénierie des connaissances en tant que domaine utilisateur de la linguistique de corpus. Un point important provient du fait qu’il s’agit d’une ingénierie. En tant qu’ingénierie, ce domaine définit des travaux de conception (construction d’ontologies, par exemple) laissant une place importante aux choix de la personne en charge de la modélisation. Elle n’utilise donc pas les résultats des analyses pour constater des phénomènes linguistiques particuliers, mais pour aller plus vite dans la tâche de conception. Ce domaine laisse alors une plus grande part à l’interprétation que la linguistique : le corpus est un appui nécessaire mais insuffisant. Dans ce cadre particulier, nous nous intéressons à dégager certains indices dénotant la présence de connaissances au sein du corpus. La littérature [Hearst, 1992; Séguéla, 2001; Assadi, 1998; Szulman et al., 2002; Bourigault et Jacquemin, 2000; Maedche et Staab, 2000b; Daille, 1994] présente de nombreux critères, statistiques ou non, utilisés en ingénierie des connaissances ou en terminologie. Nous ne ferons pas une liste exhaustive de ces critères par soucis de concision, mais ils peuvent aller de métriques simples comme la co-occurence de termes, ou leur fréquence à des dispositifs plus complexes comme l’utilisation de patrons morpho-syntaxiques permettant d’identifier des régularités dans les constructions syntaxiques du corpus. Il s’agit bien évidemment d’un aspect très actif du traitement automatique de la langue directement utilisé en ingénierie des connaissances. Le but principal de cette utilisation des corpus est de pouvoir se baser le plus possible sur les usages des termes pour réaliser un travail de modélisation de qualité, mais aussi, pour une grande part, de réduire les coûts (ne serait-ce que simplement le temps passé à la réalisation). En vue de la construction d’une ontologie couvrant un domaine technique précis, se pose la question de constituer un corpus textuel adapté. Le choix des textes se portera alors, suivant leur disponibilité, sur des textes didactiques ou descriptifs sur les notions et procédés utilisés dans le domaine à couvrir [Condamines, 2003; Bourigault et al., 2004]. L’application ciblée contraint le contenu ontologique du résultat, ce qui influence le choix des textes du corpus à étudier. Le corpus peut être ajusté en fonction des premiers résultats de son analyse par des outils de TAL. Par exemple, malgré une sélection stricte des textes du domaine lors de la construction du corpus, les ontologues constatent parfois des phénomènes de sous-corpus [Aussenac-Gilles et Busnel, 2002]. Il s’agit de sous-ensembles de textes du corpus initial correspondant à un sous-domaine encore plus spécialisé et parasitant les analyses. Il convient alors de scinder le corpus initial pour éviter un biais au moment d’interpréter les données extraites des textes. Enfin, pour certaines applications, il existe peu de textes sur le domaine ce qui contraint les choix pour la construction du corpus. Dans un tel cas, il paraît indiqué de garder cette contrainte à l’esprit et de faire preuve de précautions supplémentaires pendant la modélisation, en faisant d’autant plus appel à des experts du domaine par exemple. Pour plus d’informations, on pourra se reporter à [Condamines, 2003].

Ontologies pour les systèmes multi-agents

    Le lien le plus répandu entre systèmes multi-agents et ontologies est l’utilisation d’ontologies pour faire fonctionner les systèmes multi-agents [Gandon, 2002], en particulier pour ce qui concerne les agents dans le Web sémantique et les Web services [Greenwood et al., 2007]. Dans ce cas, les agents se réfèrent à une ontologie connue pour mettre en œuvre un langage commun et être capable d’interagir. Les ontologies sont alors un moyen de médiation entre agents logiciels, ce qui est une des raisons de leur définition. Il existe également d’autres types d’usage des ontologies à l’échelle du système. Par exemple, un ensemble fixe d’ontologies donné initialement au système sera utilisé par tous les agents pour effectuer un traitement sur un ensemble de données [Elmore et al., 2003]. Dans ce cas le langage des agents est commun, et les ontologies leur permettent uniquement d’interpréter un flux de données en provenance de l’extérieur du système. Un autre système utilisant des ontologies est COMMA [Bergenti et al., 2002]. Dans ce dernier, chaque ontologie est encapsulée dans un agent et, en collaboration avec un agent interface, aide l’utilisateur à ajouter des documents dans une base de connaissance, ou à retrouver des documents. Pour cela, l’agent ontologie mis en œuvre est une aide pour construire correctement les méta-données du nouveau document, ou la requête de recherche.

Hiérarchie multi-critère

    Dans les sections précédentes, nous avons supposé que la similarité pouvait être calculée pour n’importe quelle paire de termes. Mais, dès que l’on utilise des données réelles, cette propriété n’est plus vérifiée. Certains termes n’ont de valeur de similarité avec aucun des autres termes extraits. De plus, pour les feuilles de la taxonomie, il est parfois intéressant d’utiliser d’autres moyens pour les positionner. En effet, pour cette structuration fine des feuilles de la taxonomie, les ontologues basent généralement leurs choix sur des heuristiques simples. Dans le réseau « Tête-Expansion », la relation tête est assez proche d’une relation générique/spécifique sur les termes. Les ontologues s’en servent alors comme indice pour positionner des concepts. Si les termes représentant deux concepts sont liés par une relation tête, alors les deux concepts peuvent être liés par une relation « est-un ». Par cette observation, nous avons conçu un nouvel ensemble de règles qui ne sont pas basées sur la similarité pour supporter cette structuration des feuilles de la taxonomie.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela chatpfe.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

Introduction
I Contexte et état de l’art 
1 Vers les ontologies dynamiques 
1.1 Des ontologies
1.1.1 Définition
1.1.2 Motivations
1.1.3 Diversité des types d’ontologies
1.1.4 Construction et maintenance des ontologies à partir de texte
1.2 Un point de départ : le corpus textuel
1.2.1 Définition
1.2.2 Linguistique de corpus et ingénierie des connaissances
1.3 Des termes et des concepts
1.3.1 Définitions
1.3.2 Comment lier terme et concept ?
1.4 Traitement automatique des langues pour la construction d’ontologies à partir de textes
1.4.1 Place des outils et point de vue sémantique
1.4.2 Importance de l’interprétation
1.5 Limites de la construction d’ontologies à partir de textes
1.5.1 Efforts et raffinement du produit résultant
1.5.2 La maintenance : un problème mal géré
1.6 Bilan
2 Systèmes multi-agents et construction d’ontologies 
2.1 Systèmes multi-agents et ontologies
2.2 La théorie des Adaptive Multi-Agent Systems (AMAS)
2.3 Une théorie appliquée aux systèmes multi-agents
2.4 Quelques problèmes traités avec des AMAS
2.5 Le processus de la méthode ADELFE
2.5.1 Survol du processus
2.5.2 Spécificités
2.6 Bilan
II Conception d’un système multi-agent pour la construction d’ontologies dynamiques 
3 Ingénierie agent basée sur les modèles 
3.1 Un modèle d’agent pour l’auto-organisation coopérative
3.1.1 Les différents modules
3.1.2 Fonctionnement interne
3.2 Utilisation du paradigme objet
3.3 Notations et stéréotypage
3.3.1 Le stéréotype de classe ‘ cooperative agent ‘
3.3.2 Les stéréotypes d’attributs et de méthodes
3.4 De la conception à l’implémentation
3.4.1 Positionnement MDA
3.4.2 Du modèle statique à la structure objet de l’agent
3.5 Bilan
4 Dynamo : système multi-agent pour les ontologies dynamiques
4.1 L’ontologie en tant que système multi-agent
4.2 Vue d’ensemble de Dynamo
4.2.1 Application d’ADELFE et choix fondamentaux
4.2.2 Architecture proposée
4.2.3 Structure interne des agents-concepts
4.3 Hiérarchie basée sur un procédé de classification
4.3.1 Rappels de classification
4.3.2 Un algorithme distribué de classification
4.3.3 Constat qualitatif
4.3.4 Exemple
4.4 Hiérarchie multi-critère
4.4.1 Ajouter les règles de « couverture en tête »
4.4.2 De l’utilisation de plusieurs critères
4.5 Simplification de l’arborescence
4.5.1 Elimination des branches dégradées
4.5.2 S’éloigner des arbres binaires
4.6 Bilan
III Expérimentations et Analyses 
5 Evaluation du système
5.1 Performances du système
5.1.1 Complexité de l’algorithme distribué de classification
5.1.2 Impact des règles de « couverture en tête »
5.1.3 Impact de l’élimination des branches dégradées
5.1.4 Impact du passage aux arbres n-aires
5.2 Application
5.2.1 Protocole expérimental
5.2.2 Exécution automatique
5.2.3 Intervention manuelle
5.3 Bilan
6 Perspectives 
6.1 Relations transverses
6.2 Apprendre sur les règles de calcul
6.3 Evaluer l’apport des ontologies formelles et la réutilisation
6.4 Améliorer l’algorithme de classification
6.5 Enrichir l’interaction avec l’utilisateur
6.6 Bilan
Conclusion
IV Annexes

Télécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *