Tải bản đầy đủ (.pdf) (82 trang)

Identification et extraction de relations n aires à partir des textes

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.02 MB, 82 trang )

Institut de la francophonie
pour l’informatique, IFI

Institut national de recherche en informatique et en
automatique, INRIA

Mémoire de fin d’études
Master en informatique

Identification et extraction de relations
n-aires à partir des textes

Réalisé par :
NGUYEN Van Tien
Etudiant de la promotion 12, IFI
Sous la direction de :
Khaled KHELIF
Hacène CHERFI
Réalisé au sein de l'équipe-projet EDELWEISS de l’INRIA Sophia Antipolis, France

Sophia Antipolis, France, le 30 septembre 2008


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Réalisé à l’INRIA Sophia Antipolis, France

NGUYEN Van Tien
Promotion 12, IFI

Table des matières


Remerciements ...................................................................................................................... 3
Résumé.................................................................................................................................. 4
Abstract ................................................................................................................................. 5
Liste des figures..................................................................................................................... 6
Liste des tableaux .................................................................................................................. 7
1
Introduction.................................................................................................................... 8
1.1
Contexte ................................................................................................................. 8
1.2
Problématique ........................................................................................................ 8
1.3
Motivation.............................................................................................................. 8
1.4
Objectifs................................................................................................................. 9
1.5
Contribution ........................................................................................................... 9
1.6
Environnement du stage ....................................................................................... 10
1.7
Organisation du document .................................................................................... 10
2
Etat de l’art .................................................................................................................. 11
2.1
Web sémantique ................................................................................................... 11
2.2
Ontologie ............................................................................................................. 11
2.2.1
Introduction................................................................................................... 11
2.2.2

Représentation des ontologies ....................................................................... 12
2.2.3
Ingénierie des ontologies............................................................................... 13
2.3
Annotation sémantique ......................................................................................... 14
2.3.1
Introduction................................................................................................... 14
2.3.2
Outils d’annotation sémantique et SemAnnot ................................................ 16
2.4
Relation sémantique ............................................................................................. 17
2.4.1
Extraction des relations sémantiques ............................................................. 17
2.4.2
Positionnement de notre stage dans le contexte de travail .............................. 18
2.5
Définition de la relation n-aire .............................................................................. 19
2.5.1
Cas d'utilisation 1 : un attribut additionnel décrivant la relation ..................... 19
2.5.2
Cas d'utilisation 2 : plusieurs aspects différents d'une même relation ............. 20
2.5.3
Cas d'utilisation 3 : sans argument principal de la relation ............................. 21
2.5.4
Cas d'utilisation 4 : avec une liste ordonnée d’arguments............................... 21
2.6
Analyse syntaxique de la phrase ........................................................................... 22
2.6.1
Introduction................................................................................................... 22
2.6.2

Outil d'analyse syntaxique RASP .................................................................. 22
2.6.3
Description des relations grammaticales de RASP......................................... 24
2.7
Conclusion ........................................................................................................... 25
3
Méthode proposée pour l'identification et l'extraction des relations n-aires à partir de
texte 26
3.1
Introduction.......................................................................................................... 26
3.2
Prétraitement ........................................................................................................ 27
3.2.1
Récupération et formalisation des relations grammaticales ............................ 27
3.2.2
Triplet de tokens communs à toutes les relations n-aires................................ 28
3.3
Identification de la relation n-aire ......................................................................... 29
3.3.1
Cas d’utilisation 1 ......................................................................................... 29
3.3.1.1 Division en sous-cas ................................................................................. 29
Page 1


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Réalisé à l’INRIA Sophia Antipolis, France

NGUYEN Van Tien
Promotion 12, IFI


3.3.1.2 Identification de sous-cas 1....................................................................... 30
3.3.1.3 Identification de sous-cas 2....................................................................... 30
3.3.2
Cas d’utilisation 2 ......................................................................................... 31
3.3.2.1 Division en sous-cas ................................................................................. 31
3.3.2.2 Identification de sous-cas 1....................................................................... 31
3.3.2.3 Identification de sous-cas 2....................................................................... 32
3.3.3
Cas d’utilisation 3 ......................................................................................... 32
3.3.4
Cas d’utilisation 4 ......................................................................................... 33
3.4
Extraction des arguments d’une relation n-aire ..................................................... 33
3.4.1
Algorithme d'extraction d'un argument de la relation n-aire ........................... 33
3.4.1.1 Détermination du token pivot.................................................................... 34
3.4.1.2 Construction du graphe correspondant à la phrase..................................... 34
3.4.1.3 Recherche dans le graphe.......................................................................... 36
3.4.2
Cas d’utilisation 1 ......................................................................................... 37
3.4.2.1 Description des arguments et formalisation de la relation n-aire............... 37
3.4.2.2 Extraction des arguments .......................................................................... 38
3.4.3
Cas d’utilisation 2 ......................................................................................... 40
3.4.3.1 Description des arguments et formalisation de la relation......................... 40
3.4.3.2 Extraction des arguments .......................................................................... 41
3.4.4
Cas d’utilisation 3 ......................................................................................... 43
3.4.4.1 Description des arguments et formalisation de la relation.......................... 43

3.4.4.2 Extraction des arguments .......................................................................... 44
3.4.5
Cas d’utilisation 4 ......................................................................................... 45
3.4.5.1 Description des arguments et formalisation de la relation......................... 45
3.4.5.2 Extraction des arguments .......................................................................... 46
3.5
Approche pour une phrase complexe comportant plusieurs relation n-aires........... 47
3.6
Conclusion ........................................................................................................... 48
4
Implémentation ............................................................................................................ 49
4.1
Introduction.......................................................................................................... 49
4.2
Diagramme des classes ......................................................................................... 49
4.3
Description des classes et des paquets................................................................... 50
4.3.1
Classes principales ........................................................................................ 50
4.3.2
Paquet rasp.................................................................................................... 53
4.3.3
Paquet identification...................................................................................... 55
4.3.4
Paquet extraction........................................................................................... 57
4.3.5
Autres paquets............................................................................................... 60
5
Evaluation de notre méthodologie ................................................................................ 63
5.1

Critères d'évaluation ............................................................................................. 63
5.2
Résultats d'évaluation ........................................................................................... 64
Conclusion et perspectives ................................................................................................... 68
Références ........................................................................................................................... 69
Annexes............................................................................................................................... 71
Annexe 1 : La signification des relations grammaticales de RASP................................... 71
Annexe 2 : La signification des tags de RASP ................................................................. 74
Annexe 3 : Les phrases utilisées à évaluer le programme.................................................. 79

Page 2


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Réalisé à l’INRIA Sophia Antipolis, France

NGUYEN Van Tien
Promotion 12, IFI

Remerciements
Je tiens à remercier tout d’abord M. Khaled KHELIF et M. Hacène CHERFI pour avoir bien
encadré mon stage, et pour leur aide précieuse.
Je remercie tout particulièrement Mme Rose, l’ancienne directrice de l’équipe Edelweiss
d’avoir consacré du temps à la discussion avec moi sur mon travail et sur la piste de
recherche.
Un grand merci également aux collègues de l’équipe Edelweiss pour leur accueil dans
l’équipe.
Je tiens à remercier tout particulièrement les amis au CIV et Sophia Antipolis d’avoir partagé
les difficultés de la vie au cours de mon stage : Hung, Phu, Lan, Hau, Tuan, etc.

Tous mes remerciements vont à mes collègues, aux professeurs et aux personnels de l’IFI de
m’avoir aidé au cours de mes études.
Je remercie également, ma famille, ma copine qui m’ont donné la motivation pour avancer
dans mon travail.
Enfin, je remercie toutes les personnes qui m’ont aidé et que j’ai oublié de remercier cidessus.

Page 3


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Réalisé à l’INRIA Sophia Antipolis, France

NGUYEN Van Tien
Promotion 12, IFI

Résumé
Avec l’évolution du web actuel vers le web sémantique, l’annotation sémantique à partir des
textes joue un rôle de plus en plus important. Dans le processus d’annotation sémantique,
l’extraction des relations sémantiques dans un texte est indispensable car cela permet de
détecter non seulement les concepts dans une ontologie mais encore la relation entre ces
concepts. Plusieurs travaux ont été réalisés pour résoudre ce problème en utilisant différentes
approches. Toutefois, ces travaux se sont concentrés sur la relation binaire, donc ont ignoré la
relation n-aire qui lie plusieurs concepts. L’objectif principal de ce stage est de proposer une
méthode pour l’identification et l’extraction de relations n-aires dans un texte. Le cas
d’utilisation à résoudre est celui du W3C qui décrit les bonnes pratiques pour la représentation
en RDF des relations n-aires.
Au cours de ce stage, nous avons proposé une méthode qui se base sur une approche
linguistique. L'idée principale est que chaque type de relation n-aire est caractérisé par un
ensemble des relations grammaticales qui sont issues d’un outil d'analyse syntaxique.

L'objectif de l'identification de relations n-aires est donc de trouver cet ensemble. Dans le but
de l'extraction d'une relation n-aire, il faut déterminer ses arguments. En se basant sur le fait
que chaque phrase est considérée comme un graphe orienté et étiqueté, des arguments d’une
relation n-aire sont extraites en construisant un graphe correspondant à la phrase et ensuite en
appliquant un algorithme de parcours de graphe.
Notre méthode est réalisée par un programme qui prend en entrée un texte et donne en sortie
un fichier représentant en XML les relations n-aires trouvés dans ce texte. Notre système
permet de détecter et d'extraire simultanément plusieurs relations n-aires présentes dans une
phrase lorsque celle-ci comporte en plusieurs.
Ce stage a été réalisé au sein de l’équipe Edelweiss de l’INRIA Sophia Antipolis, France qui
est un des huit centres principaux de recherche de l'institut national de recherche en
informatique et en automatique. Le cadre d’application de ce sujet de stage est la plateforme
d’annotation SemAnnot de cette équipe. Le résultat de ce stage est aussi utilisé dans deux
européens projets SevenPro et Sealife afin de construire des annotations sémantiques à partir
de corpus de texte.
Mots-lés : identification de relation n-aire, extraction de relations n-aires, relation sémantique
annotation sémantique, sémantique web.

Page 4


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Réalisé à l’INRIA Sophia Antipolis, France

NGUYEN Van Tien
Promotion 12, IFI

Abstract
The evolution of the current web towards to the semantic web shows that a semantic

annotation from texts plays a growing role in importance. In this process, extraction of
semantic relations in a text is essential because it can detect not only the concepts in ontology
but also the relationship between these concepts. A lot of studies have been realized to solve
this problem by using different approaches. However, most studies have concentrated only on
the binary relation, so ignoring the n-ary relations that relate many concepts. The main
objective of this internship is to propose a method for the identification and extraction of nary relations in a text. The use case aimed at solving these two issues is the ones defined by
the W3C that describes best practices for the RDF representation of n-ary relations.
During this internship, we proposed a method which is based on linguistic approaches. The
main idea is that each type of n-ary relations is characterized by a set of grammatical relations
which are issued from a tool for the sentence syntax parsing. The objective of the
identification of the n-ary relations is to find this set. In order to extract a n-ary relation, we
should determine its arguments. Basing on the fact that each sentence is considered as a
directed labeled graph, the arguments of the n-ary relation are extracted by setting-up a graph
corresponding to the sentence and followed by applying a traversal algorithm on this graph.
Our method is implemented by a program that has as input a text and the output is an XML
file which describes n-ary relations found in this text. Our system can detect and extract most
of n-ary relations contained in the sentences complex.
This internship is realized within the Edelweiss team of the INRIA Sophia Antipolis, France,
which is one of eight major research centers of the French National Institute for Research in
Computer Science and Control. The application scope of this internship is the annotation
platform SemAnnot. The results of this internship qre used in two European projects
SevenPro and Sealife in order to build semantic annotations from texts.
Key words: n-ary relation identification, n-ary relation extraction, semantic relation, semantic
annotation, semantic web.

Page 5


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes

Réalisé à l’INRIA Sophia Antipolis, France

NGUYEN Van Tien
Promotion 12, IFI

Liste des figures
Figure 1 : Le modèle en couches du W3C ............................................................................ 12
Figure 2 : Un exemple sur RDF............................................................................................ 13
Figure 3 : Un exemple sur l’annotation sémantique .............................................................. 14
Figure 4 : Le rôle de l’annotation sémantique dans la recherche sémantique......................... 15
Figure 5 : Plateforme d’annotation sémantique SemAnnot de l’équipe Edelweiss ................ 16
Figure 6 : Processus général pour l’extraction de la relation sémantique............................... 18
Figure 7 : Un exemple du cas d'utilisation 1 de la relation n-aire .......................................... 19
Figure 8 : Un exemple du cas d'utilisation 2 de la relation n-aire .......................................... 20
Figure 9 : Un exemple du cas d'utilisation 3 de la relation n-aire .......................................... 21
Figure 10 : Un exemple du cas d'utilisation 4 de la relation n-aire ........................................ 22
Figure 11 : La sortie de RASP sous forme de liste................................................................ 23
Figure 12 : La sortie de RASP sous forme d’arbre XML ...................................................... 24
Figure 13 : Hiérachie de 17 relations grammaticales de RASP ............................................. 25
Figure 14 : Démarche générale pour l’identification et l’extraction des relations n-aires....... 26
Figure 15 : Construction du graphe correspondant à une phrase ........................................... 35
Figure 16 : Le graphe correspondant à la phrase d'exemple .................................................. 35
Figure 17 : Construction de sous-graphe .............................................................................. 36
Figure 18 : Recherche des sommets connectés à un sommet................................................ 36
Figure 19 : Algorithme d'extraction d'un argument de la relation n-aire................................ 37
Figure 20 : Représentation en XML de la relation n-aire de UseCase1 ................................. 38
Figure 21 : Représentation formelle d'une relation de UseCase1........................................... 38
Figure 22 : Représentation en XML d'un exemple de UseCase1.1 ....................................... 39
Figure 23 : Un exemple de UseCase1.1................................................................................ 39
Figure 24 : Représentation en XML d'un exemple de type UseCase1.2 ............................... 40

Figure 25 : Un exemple de UseCase1.2................................................................................ 40
Figure 26 : Représentation en XML de la relation n-aire de type UseCase1.......................... 40
Figure 27 : Représentation formelle d'une relation de UseCase2........................................... 41
Figure 28 : Représentation en XML d'un exemple de type UseCase2.1 ................................ 42
Figure 29 : Un exemple de UseCase2.1................................................................................ 42
Figure 30 : Représentation en XML d'un exemple de UseCase2.2 ........................................ 43
Figure 31 : Un exemple de UseCase2.2................................................................................ 43
Figure 32 : Représentation en XML de la relation n-aire de type UseCase3.......................... 43
Figure 33 : Représentation formelle d'une relation de UseCase3........................................... 44
Figure 34 : Représentation en XML d'un exemple de UseCase3........................................... 44
Figure 35 : Un exemple de UseCase3................................................................................... 45
Figure 36 : Représentation formelle d'une relation de UseCase4........................................... 45
Figure 37 : Représentation en XML de la relation n-aire de UseCase4 ................................. 45
Figure 38 : Un exemple de UseCase4................................................................................... 47
Figure 39 : Représentation en XML d'un exemple de UseCase4........................................... 47
Figure 40 : Architecture du programme................................................................................ 50
Figure 41 : La classe NaryRelationProcessor........................................................................ 51
Figure 42 : La classe Sentence ............................................................................................. 51
Figure 43 : Le paquet rasp.................................................................................................... 54
Figure 44 : Le paquet identification...................................................................................... 56
Figure 45 : Le paquet extraction........................................................................................... 58
Figure 46 : Le paquet data.................................................................................................... 60
Figure 47 : Le paquet graph ................................................................................................. 62
Page 6


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Réalisé à l’INRIA Sophia Antipolis, France


NGUYEN Van Tien
Promotion 12, IFI

Liste des tableaux
Tableau 1 : Les tokens pivots et les arguments d'une relation n-aire d'un exemple de UseCase1.2 ..... 39
Tableau 2 : Les tokens pivots et les arguments d'une relation n-aire d'un exemple de UseCase2.1 ..... 41
Tableau 3 : Les tokens pivots et les arguments d'une relation n-aire d'un exemple de UseCase2.2 ..... 43
Tableau 4 : Les tokens pivots et les arguments d'une relation n-aire d'un exemple de UseCase3 ........ 44
Tableau 5 : Les tokens pivots et les arguments d'une relation n-aire d'un exemple de UseCase4 ........ 46
Tableau 6 : Les tokens pivots et les arguments pour le triplet (company, make, family) ..................... 48
Tableau 7 : Les tokens pivots et les arguments pour le triplet (company, sell, product). ..................... 48
Tableau 8 : Les étapes et les paquets chargés ....................................................................................... 50
Tableau 9 : Description de la classe Sentence....................................................................................... 52
Tableau 10 : Description de la classe RaspProcessor............................................................................ 54
Tableau 11 : Description de la classe XmlParser .................................................................................. 55
Tableau 12 : Les classes correspondantes aux conditions pour l'identification de relations n-aires ..... 56
Tableau 13 : Description de la classe UseCaseIdentificator ................................................................. 57
Tableau 14 : Les classes et les relations n-aires correspondantes ......................................................... 59
Tableau 15 : Les classes et les sous cas d'utilisations correspondants .................................................. 59
Tableau 16 : Quelques phrases testées dans le but d’évaluation de l’identification de relations n-aires
...................................................................................................................................................... 64
Tableau 17 : Quelques phrases testées dans le but d’évaluation de l’extraction de relations n-aires.... 65
Tableau 18 : Résultat de l’évaluation de l’identification de relations n-aires ....................................... 66
Tableau 19 : Résultat d’évaluation de l’extraction de relations n-aires ................................................ 67

Page 7


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes

Chapitre 1 : Introduction

NGUYEN Van Tien
Promotion 12, IFI

1 Introduction
1.1

Contexte

Le web sémantique est une évolution de World Wide Web qui associe un sens aux
informations afin de faciliter la coopération homme-machine. L’information sur la
signification de données dans les documents (par exemple textes, images, vidéos, etc.) du web
actuel est appelée annotation web sémantique. En fait, il est impossible d’annoter
manuellement les milliards de web ressources existantes. Par conséquent, l’utilisation de
traitement de langue naturelle (NLP1 en anglais) joue un rôle important dans le contexte
d’annotation sémantique.
Ce stage est réalisé au sein de l’équipe Edelweiss de l’INRIA Sophia Antipolis qui travaille
sur la génération automatique d’annotations sémantiques à partir de documents multimédia et
notamment à partir de textes. L’idée principale est de détecter les instances de concepts et les
relations entre ces instances afin de générer l’annotation RDF2 qui décrit ces relations. Ce
stage fait partie d’une brique dans la réalisation de la plateforme d’annotations sémantiques
SemAnnot qui est en cours de développement dans l’équipe Edelweiss.
1.2

Problématique

Dans le processus d’annotation sémantique d’une ressource web, il est indispensable de
trouver les relations entre les concepts. Le type de relation à laquelle nous nous intéressons est
celui de la relation n-aire. De façon générale, il faut répondre aux questions suivantes :

Comment identifier les relations ?
Il s’agit de détecter les relations n-aires existantes dans un texte. Les relations n-aires étudiées
dans ce document sont celles définies par le W3C3. Nous nous focalisons sur la détection des
relations n-aires au sein d’une même phrase.
Comment extraire les relations ?
Il s’agit d’extraire tous les arguments qui forment une relation n-aire détectée. Il faut que la
solution donnée soit capable d’extraire toutes les relations n-aires possibles dans la même
phrase.
1.3

Motivation

Avec le développement croisant du Web, la recherche d'information en fonction de la
sémantique est une exigence naturelle et essentielle pour trouver des connaissances utiles dans
la grande masse d'informations contenues dans le web. Cette exigence n'est satisfaite que
1

NLP : natural language processing
RDF : Resource Description Framework, />3
W3C : The World Wide Web Consortium, />2

Page 8


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 1 : Introduction

NGUYEN Van Tien
Promotion 12, IFI


lorsque les informations possèdent un sens. Cela se fait par les annotations sémantiques qui
attachent une sémantique aux informations en utilisant une ontologie.
D'autre part, le problème d’identification et d’extraction de relations dont celles n-aires jouent
un rôle important dans le processus de génération automatique des annotations sémantique à
partir de texte. C'est la raison pour laquelle ce sujet est choisi pour mon stage de fin d'études.
De plus, en réalisant ce sujet de stage, j'ai occasion d'étudier le traitement du langage naturel
et l'ingénierie des connaissances. C'est important pour que je puisse continuer à faire la
recherche dans ce domaine. C'est pourquoi j'ai réalisé ce sujet.
1.4

Objectifs

La tâche principale du travail de ce stage est de résoudre les problèmes concernant
l’identification et l’extraction de relation n-aire à partir de texte. L’objectif est donc de
proposer une méthode efficace pour détecter correctement toutes les relations n-aires dans un
texte. Par ailleurs, il faut proposer un algorithme qui permet d’extraire tous les arguments
d’une relation et qui permet d’extraire toutes les relations existantes. Pour cela, il faut
construire un programme qui permet d’implémenter la solution proposée. L’entrée de ce
programme est un texte, et sa sortie doit être toutes les relations avec leurs arguments
correspondants qui sont représentés formellement, par exemple, sous forme XML4 ou RDF.
Le résultat doit être évalué par des experts du domaine.
1.5

Contribution

Au cours de ce stage, nous avons proposé une solution qui permet d’identifier et d’extraire les
relations n-aires dans un texte.
Notre approche se base sur l’usage des relations grammaticales issues d’une analyse
syntaxique de la phrase et sur le fait que chaque phrase peut être considérée comme un

graphe orienté. L’idée principale est que chaque famille de la relation n-aire est caractérisée
par un ensemble de relations grammaticales déterminé. Par conséquent, l’identification de
relations n-aires consiste à chercher cet ensemble. Pour l’extraction de relation n-aires, il faut
extraire leurs arguments qui ont la forme de groupes de mots. En analysant les relations
grammaticales au sein de la phrase, nous avons remarqué qu’un groupe de mots sera trouvé si
nous déterminons bien le mot le plus important dit token pivot du groupe. Notre algorithme
proposé pour l’extraction d’arguments de la relation n-aire est réalisé en trois étapes. Le but
de la première étape est de trouver tous les tokens pivots. Dans la deuxième étape, un graphe
orienté correspondant à la phrase et son sous-graphe sont construits. La tâche de la dernière
étape est de trouver le groupe de mots formé par un token pivot en utilisant un algorithme de
parcours du graphe sur le sous-graphe construit.

4

XML : Extensible Markup Language, />
Page 9


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 1 : Introduction

NGUYEN Van Tien
Promotion 12, IFI

Le cadre d’application de ce sujet de stage est la plateforme d’applications SemAnnot de
l’équipe Edelweiss. Le résultat de ce stage est aussi utilisé dans deux projets SevenPro et
Sealife afin de générer des annotations sémantiques.
1.6


Environnement du stage

L'INRIA (institut national de recherche en informatique et en automatique) est un
environnement international qui se côtoie plus de 80 nationalités. Ce stage s’est déroulé au
sein de l'équipe Edelweiss, un des équipe-projets de l'INRIA Sophia Antipolis.
L'équipe-projet pluridisciplinaire EDELWEISS vise à proposer des modèles, des méthodes et
des outils pour aider des communautés virtuelles de pratique et/ou d'intérêt à gérer leurs
connaissances de manière collaborative via le Web, en interagissant avec des ressources
d'information et des personnes “annotées sémantiquement”, c'est-à-dire indexées par des
“ontologies”. L’annotation sémantique de ressources d'information est un des axes de
recherche de cette équipe ( />1.7

Organisation du document

Le reste de ce document est organisé comme suit.
Le chapitre 2 a pour but d’indiquer le contexte de notre travail. Dans cette partie, des aspects
du web sémantique tels que les ontologies, l’annotation sémantique et la relation sémantique
sont abordées. Ensuite, les recommandations du W3C sur les relations n-aires sont aussi
présentées. A la fin de ce chapitre, nous présentons l’analyse syntaxique des textes et l’outil
RASP en particulier.
Le chapitre 3 est réservé à présenter notre solution pour l’identification et l’extraction des
relations n-aires dans le texte. Dans cette partie, nous détaillons notre approche qui utilise les
relations grammaticales issues d’un outil d’analyse syntaxique pour détecter les relations naires. Ensuite, notre algorithme pour l’extraction des arguments de la relation n-aire est
détaillé.
Le chapitre 4 a pour but de présenter la réalisation. L’architecture du programme est abordée.
Le chapitre 5 présente l’analyse et l’évaluation de notre solution en testant le programme sur
des plusieurs données différentes.
La conclusion et les perspectives terminent ce rapport. Quelques pistes de recherche
concernant l’identification et l’extraction des relations n-aires seront présentées dans cette
partie.

Enfin, nous donnons en annexes quelques explications sur la signification des relations
grammaticales de RASP. Cela est nécessaire pour comprendre notre solution.
Page 10


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

2 Etat de l’art
Cette partie a pour but de présenter le contexte, les concepts de base, les outils ainsi que les
travaux existants qui sont relatifs à notre travail ayant pour but l'identification et l'extraction
de relations n-aires dans un texte.
2.1

Web sémantique

Selon Tim Berners-Lee, l'inventeur du web, le web sémantique est une extension du web
actuel dans laquelle l'information se voit associée à un sens bien défini permettant aux agents
logiciels d'exploiter directement la sémantique des ressources et de coopérer avec différents
type d’utilisateurs afin de les aider plus efficacement dans leur accès (recherche,
divertissement, commerce électronique, etc.) aux ressources web [Berners-Lee et al., 2001].
Autrement dit, l'objectif du web sémantique est de rendre plus efficace et plus facile
l'exploitation des ressources web pour humain en coopérant avec des applications qui sont
capables d'appréhender le volume des informations disponibles sur le Web. Le Web devient
un espace d’échanges d’informations entre machines, en permettant l’accès à un très grand
volume d’informations, et en fournissant les moyens de gérer ces informations.

Pour que le web sémantique fonctionne, il faut avoir un moyen qui associe le sens aux
informations et qui permet de partager les informations. Cela se fait en utilisant des
ontologies. L'ontologie est présentée par la suite.
2.2

Ontologie

2.2.1 Introduction
Le terme «ontologie» est un mot que l'informatique a emprunté à la philosophie au début des
années 1990. Il est construit à partir des racines grecques ontos (ce que existe, l'existant) et
logos (le discours, l'étude). En philosophie, l'Ontologie est une branche fondamentale de la
Métaphysique, qui s'intéresse à la notion d'existence, aux catégories fondamentales de
l'existant et étudie les propriétés les plus générales de l'être [Gandon, 2006].
En informatique, ce terme est adopté par les chercheurs dans le domaine de l'intelligence
artificielle afin de réduire la confusion conceptuelle et terminologique et de tendre vers une
compréhension partagée pour améliorer la communication, le partage, l'interopérabilité et le
degré de réutilisation possible.
Différentes définitions des ontologies ont été proposés mais celle qui est devenue la plus
utilisée dans la littérature est la suivante : «Une ontologie est une spécification explicite pour

Page 11


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI


la conceptualisation d’un domaine.»5
Dans le web sémantique, l'ontologie joue un rôle très important pour la coopération entre les
personnes, entre les machines, entre les personnes et les machines en définissant un
vocabulaire commun permettant de partager la sémantique des informations dans un domaine.
2.2.2 Représentation des ontologies
Pour que les applications puissent appréhender la sémantique des informations, les ressources
doivent être formalisées. Cette formalisation se fait en utilisant les différents langages du web
sémantique. Différents langages de niveau de complexité croissante sont proposés afin de
mieux exploiter, combiner et raisonner sur les contenus de ces ressources.
Il existe à présent plusieurs langages pour la représentation formelle des connaissances. Le
W3C propose une architecture en couches comme sur la Figure 1.

Figure 1 : Le modèle en couches du W3C
Dans cette architecture, XML (Extensible Markup Language [XML]) est la base pour les
autres langages comme RDF, RDFS, OWL, etc. XML est proposé par le W3C et reconnu
comme un standard permettant de représenter une structur sous la forme d’une arborescence
en utilisant un système de balisage dans lequel les utilisateurs peuvent définir une nouvelle
balise.
Une ontologie peut être représentée en utilisant les langages RDF, RDFS et OWL.

5

Traduction de “An ontology is an explicit specification of a conceptualization” [Gruber, 1993]

Page 12


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art


NGUYEN Van Tien
Promotion 12, IFI

Étant donné un modèle de triplets simple «sujet - prédicat – objet» ou «ressource - propriété
– valeur», RDF (Resource Description Framework [Manola et Miller, 2004]) est une
recommandation du W3C pour la description des resources du web. Les valeurs sont soit des
ressources, soit des littéraux (valeurs atomiques). Par exemple, en utilisant ce modèle, on peut
représenter que «Le nom d'étudiant avec le code Student-IFI-P12-15 est NGUYEN Van Tien»
comme suit :
<rdf:Description rdf:about='Student-IFI-P12-15 '>
<name>NGUYEN Van Tien</name>
</rdf:Description>
Cela est représenté sous forme d'un graphe orienté sur la Figure 2.
name
Student-IFI-P12-15

NGUYEN Van Tien

(Ressource)

(Propriété)

(valeur)

Figure 2 : Un exemple sur RDF
RDFS (RDF Schema [Brickkley et Guha, 2004]) est un méta-modèle recommandé par le
W3C qui a pour but de définir la sémantique des ressources représentées en RDF. RDFS
décrit les ressources sous forme des classes en utilisant rdfs:class et rdfs:subClassOf qui
donnent une hiérarchie de ressources.

Dans le contexte du web sémantique, RDFS est utilisé pour définir les concepts et la relation
entre les concepts dans une ontologie. Cependant, RDF a pour but de définir les instances d'un
concept indiqué par RDFS et la relation entre ces instances dans cette ontologie.
Se basant sur RDF et RDFS, OWL (Ontology Web Language [McGuinness et Harmelen,
2004]) offre un langage standard pour définir des ontologies pour le web sémantique. Par
rapport à RDFS, OWL ajoute de nouvelles notions telle que : l’équivalence des classes,
l’équivalence des relations, la symétrie et la transitivité des relations, la cardinalité, etc.
2.2.3 Ingénierie des ontologies
L'objectif principal de l’ingénierie des ontologies est la construction et l’exploitation
d’ontologies, c’est-à-dire représenter des connaissances d’un domaine indépendamment des
usages opérationnels qui peuvent en être faits.
Un des problèmes intéressants dans ce domaine est l’annotation sémantique. L’annotation
sémantique est présentée par la suite.

Page 13


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

2.3

NGUYEN Van Tien
Promotion 12, IFI

Annotation sémantique

2.3.1 Introduction
Une annotation (ou métadonnée) est une information graphique ou textuelle attachée à une

ressource afin de faciliter son accès, sa recherche, et son utilisation. Selon [Taniar et Rahayu,
2006], une annotation sémantique est un processus d'alignement des données de l’instance à
une ontologie6. Le web sémantique a proposé l’annotation du contenu de document en
utilisant l’information sémantique d’une ontologie de domaine [Uren et al, 2006].

Figure 3 : Un exemple sur l’annotation sémantique
(source [Uren et al, 2006])

6

Tranduction de “Semantic annotation is the process of mapping instance data to an ontology. “

Page 14


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

Il faut bien distinguer la différence entre une annotation informelle et une annotation formelle.
Par exemple dans une application de processeur de texte, annotation est utilisée par les
personnes. Les auteurs d’un document peuvent ajouter des annotations informelles au texte en
langage naturel, par exemple, "Les trois premiers articles du contrat sont supprimés par ... " ,
"Il faut ajouter ici l’évaluation de test du logiciel", etc. Cependant, l’annotation formelle ou
annotation sémantique est représentée sous forme d’un langage formel par exemple RDF,
OWL, etc. L’annotation sémantique identifie formellement les concepts et les relations entre
les concepts dans un document. Par exemple, l’annotation sémantique peut associer "Paris"

dans le texte à une ontologie qui l’identifie comme une instance du concept "city" et le lie à
l’instance "France" du concept "Country". L’annotation sémantique sera utilisée par la
machine pour la recherche sémantique des informations.
La Figure 3 montre un exemple d’une annotation sémantique. L’annotation sémantique dans
cet exemple identifie les personnes, les organisations, les projets qui sont stockés dans un
serveur de nouvelles (News group). Imaginons que ce serveur stocke différentes nouvelles, en
se basant sur cette annotation sémantique, on peut trouver sémantiquement les nouvelles qui
correspondent aux projets de web sémantique et qui sont publiées par exemple en 2004.

Figure 4 : Le rôle de l’annotation sémantique dans la recherche sémantique
(source [Uren et al, 2006])
Généralement, l’annotation sémantique joue un rôle important dans la recherche sémantique.
Cela peut être représenté dans la Figure 4. Pour que la recherche sémantique fonctionne, il
faut traiter trois classes principales de données : le document, l’ontologie et l’annotation. Il est
nécessaire que l’outil de recherche sémantique soit relié aux documents et aussi bien à
l’annotation sémantique pour l’exploitation des informations. Lorsqu’il y a un changement
relatif aux modèles de connaissances, l’outil de maintenance de l’ontologie doit permettre aux
Page 15


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

utilisateurs de mettre à jour les ontologies. La mise à jour des ontologies a une influence sur
l’annotation. Donc l’outil qui gère les annotations doit détecter le changement des ontologies
en se connectant à outil de maintenance de l’ontologie. De son côté, l’outil d’annotation doit

envoyer ce changement à l’outil de maintenance de l’ontologie. Cela est important car la base
d’annotations étant construite en se basant sur l’ontologie et le texte doit correspondre aux
versions réelles des ontologies. De plus, l’outil de recherche sémantique ne coopère
directement qu’avec la base de données d’annotation et le document plutôt que l’ontologie.
2.3.2 Outils d’annotation sémantique et SemAnnot
Grâce à l’importance des annotations sémantiques pour la recherche sémantique, plusieurs
plateformes et plusieurs outils ont été proposés afin d’annoter sémantiquement de façon
automatique ou manuelle, par exemple : Annotea, CREAM, OntoMat, OntoAnnotate, SHOE
Knowledge Annotator, SMORE, KIM, MnM, etc. [Uren et al., 2006]. Les annotations sont
souvent représentées en RDF. Par ailleurs, la majorité de ces systèmes s’intéressent surtout à
la tâche d’instanciation de concepts et proposent des techniques d’instanciation de formes
simples de relations pouvant exister entre ces concepts (synonymie, partonomie…) [Khelif,
2006].

Figure 5 : Plateforme d’annotation sémantique SemAnnot de l’équipe Edelweiss
[Khelif, 2008]

Page 16


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

L’équipe Edelweiss propose une platforme d’annotation sémantique appelée SemAnnot. Cette
plateforme doit fournir un service d’annotation non seulement de documents textuels mais
aussi de sources structurées : DB, HTML…Elle doit fournir aussi un service collaboratif qui

permet l’annotation multipoints de vue. SemAnnot génère l’annotation et crée l’ontologie
simultanément. De plus ce système est conçu pour la prise en compte du contexte (par
exemple en biologie "in vitro" et "in vivo") et la prise en compte des éléments différents dans
le document par exemple les tables, les figures…Une fonction principale de SemAnnot est la
recherche et raisonnement sur les annotations grâce au moteur de recherche sémantique
CORESE [Corby et al, 2004].
Les composants de l’architecture de SemAnnot sont représentés dans la Figure 5. Le travail
de ce stage se trouve dans le cadre du composant qui est en charge de l’extraction des
relations. Dans la partie suivante, nous présentons l’état de l’art sur l’extraction des relations
sémantiques.
2.4

Relation sémantique

2.4.1 Extraction des relations sémantiques
Une relation sémantique est une relation qui lie les concepts définis dans l’ontologie du
domaine. L’identification et l’extraction de relations sémantiques sont indispensables dans le
processus d’annotation sémantique car cela permet détecter non seulement des concepts dans
un texte mais aussi la relation entre eux.
Divers travaux ont été effectués en matière d’extraction de relations sémantiques à partir de
textes dans des domaines différents notamment en biologie, selon des approches différentes
par exemple : les approches statistiques, les approches syntaxiques, les approches utilisant
des marqueurs. Dans [Khelif, 2006], ces approches sont détaillées comme suit.
L’idée principale des approches statistiques est que les termes qui co-occurrent ensemble
ont de fortes chances d’être liés par des relations sémantiques. Elles exploitent donc la
distribution des termes dans le document/corpus en utilisant des techniques de fouille basées
sur des méthodes statistiques. En effet, en appliquant ces approches, au lieu d’extraire des
relations, un nuage de termes est proposé. A partir de ces termes, un expert pourrait déduire
des relations ou des classes conceptuelles.
Les approches syntaxiques exploitent aussi le principe de co-occurrence des termes pour la

détection des relations. Toutefois, elles utilisent la distribution syntaxique des termes à la
place des calculs statistiques pour extraire les relations.
Par ailleurs, les dernières approches se basent sur des patrons lexico-syntaxiques (règles
décrivant une expression régulière formée de mots et de catégories grammaticales
correspondant aux formes syntaxiques de la relation et ses arguments) ou des règles
contextuelles basées sur des indices et des déclencheurs. Ces approches permettent de
caractériser la sémantique de la relation. Plusieurs travaux ont été réalisés par exemple
Page 17


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

CAMELEON [Séguéla et Aussenac-Gilles, 2000], SEEK [Jouis, 1993]. Ce type d’approche
est aussi utilisé par l’équipe Edelweiss [Khelif, 2006].
2.4.2 Positionnement de notre stage dans le contexte de travail
En proposant l’approche qui utilise des marqueurs [Séguéla et Aussenac-Gilles, 2000] ont
montré que la relation sémantique peut être extraite en réalisant un processus composé de 4
étapes représenté dans la Figure 6.
La première étape (a) a pour but de détecter les comportements linguistiques stables associés
à des relations grammaticales. Après cette étape la relation est identifiée mais elle n’est pas
extraite.
Dans la deuxième étape (b), les relations détectées sont extraites. Toutefois, ce sont les
relations brutes mais pas celles sémantiques. Il s’agit des relations candidates ayant les
arguments qui peuvent être les termes définis dans l’ontologie.
La troisième étape (c) vise à extraire les relations sémantiques en se basant sur les relations

candidates trouvées à l’étape précédente. Nous passons du niveau linguistique au niveau
conceptuel en vérifiant si les arguments des relations candidats sont les termes définis dans
l’ontologie. Si oui, la relation sémantique est extraite.
Dans dernière étape (d), les relations sémantiques trouvées sont représentées en utilisant un
langage formel qui garantit une interprétation unique et non ambiguë grâce à un système basé
sur ce langage formel.

Figure 6 : Processus général pour l’extraction de la relation sémantique
Le processus décrit dans la Figure 6 est capable d’extraire des relations sémantiques. De
même, les travaux de [Khelif, 2006] permet aussi d’extraire les relations sémantique dans un
texte. Toutefois, les relations extraites dans ces travaux sont binaires, i.e entre deux concepts
du domaine. Cela signifie que ces travaux ne traitent pas les relations sémantiques liant
plusieurs concepts dans l’ontologie.

Page 18


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

Ce à quoi nous nous intéressons à résoudre dans notre stage se trouve dans les deux premières
étapes du processus abordé ici afin d’extraire les relations n-aires. Ces relations n-aires sont
brutes. Elles sont candidates pour que le composant «Relation extraction » de la plateforme
SemAnnot puisse extraire les relations sémantiques de type n-aire. La relation n-aire est
présentée par la suite.
2.5


Définition de la relation n-aire

Généralement, les langages de représentation des connaissances pour le web sémantique tels
que RDF et OWL permettent de représenter les relations binaires entre deux concepts ou un
concept et une valeur. Toutefois, dans quelques cas, il est nécessaire de représenter une
relation ayant plus de deux arguments. Il s'agit de la relation n-aire. C'est la raison pour
laquelle le W3C [Noy et Rector, 2006] a proposé une recommandation qui aborde la
définition et la représentation de la relation n-aire. La définition de la relation n-aire constitue
la base pour extraire des relations n-aires dans le texte.
Selon cette recommandation du W3C, la relation n-aire se divise en quatre cas d'utilisation.
Ces cas d'utilisation seront présentés dans cette partie.
2.5.1 Cas d'utilisation 1 : un attribut additionnel décrivant la relation
Nous pouvons définir une relation n-aire de type cas d'utilisation 1 (UseCase1) comme étant
une extension de la relation binaire entre un sujet et un objet dans laquelle la caractéristique
de la relation est détaillée par des informations supplémentaires. Les caractéristiques de la
relation peuvent être les suivantes : la probabilité, la raison, la conséquence, le moyen, etc.
Une phrase possède une relation de type du cas d'utilisation 1 s'il y a un où plusieurs attributs
additionnels décrivant une instance de la relation binaire.

Figure 7 : Un exemple du cas d'utilisation 1 de la relation n-aire
(voir [Noy et Rector, 2006])
Par exemple, dans la phrase “Christine has breast tumor with high probability”, il y a une
relation binaire entre Christine et la maladie de la tumeur au sein : breast tumor. De plus, la

Page 19


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes

Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

caractéristique de cette relation est détaillée par la probabilité d'avoir cette maladie. Donc
nous pouvons dire que dans cette phrase, il y a une relation n-aire ayant trois argument :
Christine, la maladie de tumeur, et la probabilité d'avoir cette maladie. Cette relation peut être
représenté par la Figure 7.
Dans cet exemple, nous utilisons un noeud vide _:Diagnosis_Relation_1 pour représenter la
valeur de la propriété has_diagnosis de la relation.
2.5.2 Cas d'utilisation 2 : plusieurs aspects différents d'une même relation
Imaginons que l'on ait une relation binaire entre un sujet et un objet d'une phrase. Si à présent,
nous ajoutons des informations pour détailler des aspects différents de l'objet. De cette façon,
nous récupèrons une relation n-aire. Autrement dit, une relation n-aire de cas d'utilisation 2
(UseCase2) est considérée comme une extension de la relation binaire entre un sujet et un
objet dont l’objet est détaillé par des informations modifiées.
Par exemple, dans la phrase “Steve has temperature, which is high , but falling.”, il existe une
relation binaire entre Steve et sa température corporelle. Ce qui est détaillé pour l'objet
(temperature) de cette relation binaire, ce sont son niveau (high) et sa tendence (falling).
Autrement dit, dans cette phrase il existe une relation n-aire qui a 3 arguments : Steve, le
niveau de la température et sa tendance. Cette relation est représentée par la Figure 8.

Figure 8 : Un exemple du cas d'utilisation 2 de la relation n-aire
(voir [Noy et Rector, 2006])
Notons que comme le cas d'utilisation 1, le cas d'utilisation 2 est également considéré comme
une extension de la relation binaire avec des informations supplémentaires. Donc il faut
distinguer la différence principale entre ces deux cas. Pour le premier cas, ces informations
sont celles ajoutées afin d'enrichir la caractéristique (par exemple la probabilité, la raison, la
conséquence, etc.) de la relation elle-même, alors que pour le deuxième cas les informations

supplémentaires ont pour but de donner des informations détaillées sur l'objet de la relation.

Page 20


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

2.5.3 Cas d'utilisation 3 : sans argument principal de la relation
Dans quelques cas, la relation n-aire lie plusieurs participants et il n'y en a aucun participant
qui est considéré comme propriétaire de la relation. Il s'agit d’une relation de cas d'utilisation
3 (UseCase3).

Figure 9 : Un exemple du cas d'utilisation 3 de la relation n-aire
(voir [Noy et Rector, 2006])

Par exemple, dans la phrase “John buys a "Lenny the Lion" book from books.example.com for
$15 as a birthday gift”, il y une relation n-aire d'achat purchase_1 avec 5 arguments suivants :
l'acheteur John, le vendeur “books.example.com“, l'objet à acheter "Lenny the Lion" book,
l'objectif d'achat “birthday gift“ et le prix “$15“. Dans cette relation, tous ces arguments
sont égaux dans leurs participation à la relation. La représentation de cette relation est
présentée dans la Figure 9.
En effet, il existe clairement une différence entre ce cas et les deux cas précédents. Les deux
cas précédents sont considérés comme une extension de la relation binaire avec un argument
principal de la relation. Alors que, dans ce cas, tous les arguments sont traités d’une façon
égale.

2.5.4 Cas d'utilisation 4 : avec une liste ordonnée d’arguments
Nous pouvons définir une relation de type cas d'utilisation 4 (UseCase4) comme une relation
avec une liste d’arguments qui a pour but de modifier l'objet de la phrase qui contient cette
relation. Notons que ce qui est important dans ce cas est l'ordre des arguments dans la liste.
Par exemple, la phrase “United Airlines flight 3177 visits the following airports: LAX, DFW,
and JFK” se trouve dans ce cas. Dans cette phrase il y une relation n-aire ayant quartre
arguments entre l’avion United Airlines flight 3177 et la liste en ordre des aéroports qu’il a
visité : LAX, DFW et JFK. Cette relation est représentée par la Figure 10.
Page 21


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

Figure 10 : Un exemple du cas d'utilisation 4 de la relation n-aire
(voir [Noy et Rector, 2006])
Pour ce cas, si l'ordre des arguments dans la liste est changé, la sémantique de la relation sera
aussi changée. Dans l'exemple ci-dessus, par exemple, si la liste des aéroports visités est
changée pour être la suivante DFW, LAX, JFK, il est possible que l'on ne puisse pas trouver
le vol correspondant.
2.6

Analyse syntaxique de la phrase

2.6.1 Introduction
Plusieurs traveaux ([Séguéla et Aussenac-Gilles, 2000], [Khelif, 2006]) ont montré que les

relations sémantiques dans une phrase peuvent être extraites en utilisant des outils de
traitement automatique de langue naturelle.
L'analyse des textes se compose de plusieurs étapes distinctes telle que l’analyse
morphologique, l’analyse lexicale, l’analyse syntaxique, etc. Dans le cadre de ce travail, nous
nous intéressons à l'analyse syntaxique de la phrase qui permet de représenter, sous forme
symbolique ou graphique, la ou les structures syntaxiques d'un texte.
Il existe plusieurs outils qui permettent d’analyser syntaxiquement un texte tels que RASP
utilisé pour l'anglais [Briscoe, 2006], LATTICE utilisé pour l'anglais ainsi que le français
[LATTICE, 2007], etc.
Dans ce qui suit, nous présentons l'outil RASP que nous avons utilisé dans ce travail pour
l'analyse syntaxique de la phrase.
2.6.2 Outil d'analyse syntaxique RASP
RASP (Robust Accurate Statistical Parsing) est un analyseur probabiliste pour l’anglais
développé par Briscoe & Carroll en 2002 [Briscoe, 2006]. RASP est conçu dans le but
d'annoter syntaxiquement le texte. Il ne fonction que sur le système d’exploitation Unix. Sa
sortie est représentée sous différentes formes. Elle nous permet, par les marqueurs (i.e.
appelés tags), de savoir le rôle grammatical de chaque mot dans une phrase et les relations
Page 22


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

grammaticales entre deux mots. Avec RASP, chaque phrase est formalisée sous forme d’une
liste des relations grammaticales.
Par exemple, pour la phrase “My name is Tien”, RASP peut produire les sorties sous

plusieurs représentations. Les sorties sont représentées sur la Figure 11 sous forme de liste et
la Figure 12 sous forme d’arbre XML.
("My" "name" "is" "Tien") 1 ; (-8.742)
(|ncsubj| |be+s:3_VBZ| |name:2_NN1| _)
(|xcomp| _ |be+s:3_VBZ| |Tien:4_JJ|)
(|det| |name:2_NN1| |My:1_APP$|)
Figure 11 : La sortie de RASP sous forme de liste
La sortie ci-dessus montre que le mot 'name' a été détecté comme le sujet du verbe 'be' par la
relation grammaticale ‘ncsubj’, et que le mot 'Tien' est détecté comme l'objet du verbe be' par
la relation ‘xcomp’. Il montre aussi l’existence d’une dépendance entre les mots ‘My’ et
‘name’. Notons que la Figure 12 présente les mêmes informations syntaxiques au format
XML.
<?xml version="1.0" encoding="iso-8859-1"?>
<!ELEMENT rasp (sentence+)>
<!ELEMENT sentence (string, lemma-list, parse+)>
<!ELEMENT string (CDATA)>
<!ELEMENT lemma-list (lemma*)>
<!ELEMENT lemma (PCDATA)>
<!ELEMENT parse (xparse | tree | (tree, gr-list) | gr-list)>
<!ELEMENT xparse (CDATA)>
<!ELEMENT tree (node+)>
<!ELEMENT node (node | wnode)+>
<!ELEMENT wnode (PCDATA)>
<!ELEMENT gr-list (gr*)>
<!ELEMENT gr (gr-weight?)>
<!ELEMENT gr-weight (PCDATA)>
<!ATTLIST sentence num CDATA #REQUIRED>
<!ATTLIST lemma num CDATA #REQUIRED>
<!ATTLIST lemma lem CDATA #REQUIRED>

<!ATTLIST lemma affix CDATA #REQUIRED>
<!ATTLIST lemma pos CDATA #REQUIRED>
<!ATTLIST lemma wtag CDATA #REQUIRED>
<!ATTLIST node rule CDATA #REQUIRED>
<!ATTLIST wnode lemma CDATA #REQUIRED>
<!ATTLIST gr type CDATA #REQUIRED>
<!ATTLIST gr subtype CDATA #REQUIRED>
<!ATTLIST gr head CDATA #REQUIRED>
<!ATTLIST gr dep CDATA #REQUIRED>
<!ATTLIST gr init CDATA #REQUIRED>
<!ATTLIST gr-weight weight CDATA #REQUIRED>
]>
<rasp>

Page 23


Mémoire de fin d’études
Identification et extraction de relations n-aires à partir des textes
Chapitre 2 : Etat de l’art

NGUYEN Van Tien
Promotion 12, IFI

<sentence num='1'>
<string>7.853)]]></string>
<lemma-list>
<lemma wtag='' lem='My' affix='' num='1' pos='APP$'/>
<lemma wtag='' lem='name' affix='' num='2' pos='NN1'/>

<lemma wtag='' lem='be' affix='s' num='3' pos='VBZ'/>
<lemma wtag='' lem='Tien' affix='' num='4' pos='JJ'/>
</lemma-list>

<tree>
<node rule='T/txt-sc1/--'>
<node rule='S/np_vp'>
<node rule='NP/det_n1'>
<wnode lemma='1'/>
<node rule='N1/n'>
<wnode lemma='2'/></node></node>
<node rule='V1/be_ap/-'>
<wnode lemma='3'/>
<node rule='AP/a1'>
<node rule='A1/a'>
<wnode lemma='4'/></node></node></node></node></node>
</tree>
<gr-list>
<gr type='ncsubj' subtype='' head='3' dep='2' init=''></gr>
<gr type='xcomp' subtype='_' head='3' dep='4' init=''></gr>
<gr type='det' subtype='' head='2' dep='1' init=''></gr>
</gr-list>
</parse>
</sentence>

1

;

(-


</rasp>

Figure 12 : La sortie de RASP sous forme d’arbre XML
Clairement, la représentation textuelle sur la figure 11 est plus lisible que celle sous forme
d’arbre XML sur la Figure 12. Cependant cette dernière est plus facile à traiter par la
machine. Notons que les deux représentations correspondent au même résultat d’analyse
syntaxique. Nous avons utilisé la deuxième représentation dans le système développé. Mais à
partir d'ici, pour faciliter les explications, nous utilisons la première représentation.
2.6.3 Description des relations grammaticales de RASP
Généralement, une relation grammaticale dans la sortie de RASP est encodée par trois
composants principaux. Le premier est le nom de la relation grammaticale, les deux derniers
sont les mots appelés Token qui font partie de la relation.
Par exemple, considérons la deuxième relation dans la Figure 11 : (|xcomp| _ |be+s:3_VBZ|
|Tien:4_JJ|). Le nom de la relation est xcomp, et deux tokens sont le verb ‘be’ et l’objet
‘Tien’.
Le nom de la relation est caractérisé par un type et éventuellement un sous-type. Le type et le
Page 24


×