Chapitre 2 État de l’art
2.3 Études méthodologiques antérieures
2.3.3 Adaptation à un autre type de texte
Dans le cadre des campagnes MUC de compréhension de messages, plusieurs technologies
d’adaptation ont été développées (Humphreys, Gaizauskas et al. 1998), et un grand nombre
d’évaluations comparatives ont été publiées par la DARPA (MUC7 1998).
2.3.3.1 Brève présentation
Avant de passer à la présentation d’une approche adaptative de type Amilcare (Ciravegna 2001a),
nous présentons un brève historique sur les possibilités d’adaptation des applications à d’autres types
de textes.
2.3.3.1.1 Historique
Selon (Miller, Crystal et al. 1998), une technologie d’adaptation qui demande une annotation
linguistique n’est pas souhaitable dans le contexte de l’adaptation des applications à d’autres types de
textes. De plus, la quantité de texte annoté nécessaire pour l’apprentissage de l’annotation linguistique
doit être réduite afin de réduire au minimum la lourdeur de cette tâche (coût minimum, réduction du
temps de développement/maintenance).
Dans le domaine du TALN, adapter une application d’extraction d’information à un nouveau type
de texte a été considéré généralement comme une question de portage vers différents types de texte
libre
12(Cardie 1997). L’utilisation de l’extraction d’information pour le Web sémantique nécessite une
extension du concept de « type de texte ». Selon (Cardie 1997), il est difficile ou même inefficace
d’appliquer les méthodologies basées sur la linguistique et utilisées pour des textes libres à des textes
fortement structurés tels que les pages Web produites par des bases de données. Ces méthodes ne sont
pas capables de faire face à la variété des éléments extralinguistiques (étiquettes XML, documents
formatés, et langue stéréotypée) qui sont employées dans de tels documents.
L’intérêt de l’approche adaptative que nous allons présenter est de bénéficier des technologies et
des expériences qui ont été faites précédemment pour construire une application adaptable à différents
types de textes et qui fait face à la variété extralinguistique.
12
Texte non structuré
Nous décrivons, dans ce qui suit, une application d’extraction d’information pour l’annotation
dans le domaine du Web sémantique, qui a été développée pour répondre à un critère de portabilité et
d’adaptation.
2.3.3.1.2 Présentation
Amilcare (Ciravegna 2001a) est un système d'extraction d’information conçu comme support pour
l'annotation des documents dans le cadre du Web sémantique. Il est basé sur une méthodologie
adaptative tenant compte des besoins et en particulier :
• adaptation à différents types d'utilisateurs : de l’utilisateur naïf à l’utilisateur expert en matière
d'extraction d’information ;
• adaptation à différents types de textes (y compris un mélange de types de textes) ;
• adaptation à différents environnements d’annotation existants en perturbant le moins possible
la tâche habituelle de l’annotation.
La Figure 25 montre le mode de fonctionnement normal d’Amilcare. Un algorithme
d’apprentissage induit les règles qui permettent l’extraction d'information. Ces règles sont apprises par
la généralisation d’un ensemble d’annotations trouvées dans un corpus d’entraînement. Ainsi, le
système apprend comment reproduire de telles annotations.
Figure 25 : mode normal d’Amilcare
2.3.3.2 Type des énoncés traités
Afin de porter et/ou de maintenir un système d’extraction d’information, on peut être confronté à
quatre types de problèmes :
• l’adapter à de nouveaux domaines d’information, ce qui nécessite d’implémenter (ou
modifier) le lexique, les bases de connaissances, etc., et de produire de nouveaux modèles afin
de couvrir le nouveau domaine ;
• l’adapter à des sous-langages (voir la définition dans 4.1), ce qui nécessite de modifier la
grammaire et le lexique afin de traiter les constructions linguistiques spécifiques et typiques
du sous-langage ;
• l’adapter à différents genres de textes spécifiques qui peuvent combiner les deux précédents
points : résumé médical, article scientifique, rapports de police peuvent avoir leurs propre
lexique, grammaire, discours, structure ;
• l’adapter à différents formats de documents : les documents basés sur le Web peuvent varier
de documents XML structurés à des textes non-structurés et/ou non-formatés. Chaque format
de document peut donner lieu à différentes contraintes en termes d’analyse de langue.
Comme le montre l’exemple de la Figure 26, les données traitées par Amilcare sont des documents
qui présentent un contenu textuel réfléchi.
<XML version="1.0" encoding="UTF-8">
Title: seminar announcement:
Speaker: <speaker>Steven Skiena</speaker>
Department of Computer Science
State University of New York, Stony Brook
Date: Tuesday, January 14
Time: <stime>1:30 pm</stime>
Place: <location>Wean Hall 4634</location>
Topic: Algorithms for Square Roots of Graphs
The kth power of a graph G = (V, E), written G^k,
is defined to be the graph having V as its vertex set,
with vertices u, v adjacent in G^k if and only if
there exists a path of length at most k between them.
Similarly, graph H has a kth root G if G^k = H.
Powers of graphs have several interesting properties.
For example, the square of any biconnected graph and the
cube of any connected graph is hamiltonian.
In this talk, we present algorithms to find a square
root G of a graph G^2 for some special classes of graphs.
This is joint work with Yaw-Ling Lin.
Host: Dana Scott
Appointments can be made through Lydia DeFilippo, x3063,
lydia@cs.cmu.edu.
<speaker>Steve Skiena</speaker> will be at CMU Monday,
January 13, and Tuesday, February 14.
</XML>
Figure 26 : exemple de texte d’entraînement
2.3.3.3 Méthode et ressources
Amilcare peut fonctionner en trois modes : mode d’apprentissage (training mode), mode de test
(test mode) et mode de production (production mode).
• Le mode d’apprentissage est employé pour induire des règles. L'entrée se compose d’un
scénario et d’un corpus d’apprentissage annoté avec l'information à extraire.
La sortie de la phase d’apprentissage est un ensemble de règles capables de reproduire l'annotation
sur des textes du même type.
• Le mode test est utilisé pour tester les règles induites sur un nouveau corpus étiqueté (non vu
en mode apprentissage), cela permet de voir comment le système fonctionne pour une
application spécifique. Lors de son exécution en mode test, Amilcare enlève tout d'abord
toutes les annotations du corpus, ensuite, il réannote le corpus en utilisant les règles induites.
Enfin, les résultats sont automatiquement comparés aux annotations originales et sont
présentés à l'utilisateur. La sortie de la phase de test est le corpus réannoté par le système et un
ensemble de statistiques d'exactitude sur le corpus de test : le rappel, la précision et les détails
sur les erreurs du système.
• Le mode de production est utilisé dans une application réelle. Amilcare annote les documents
fournis. Si un utilisateur est disponible pour réviser ses résultats, l’administrateur utilise ses
corrections pour recommencer l’apprentissage.
Les modes d’apprentissage/test/production peuvent être intercalés pour produire une annotation
basée sur l’apprentissage. L'architecture par défaut d'Amilcare contient une ouverture vers les
systèmes d’extraction d’information qui réalisent la segmentation, l'étiquetage par les parties du
discours, et l'identification des entités nommées.
Amilcare utilise l’algorithme LP
2(Ciravegna 2001b), algorithme d’extraction d’information
adaptatif, classé parmi les systèmes d'induction (« Wrapper Induction System », WIS). Amilcare se
base sur deux composants essentiels : un composant d’induction et un composant de généralisation.
Composant d’induction
L’algorithme LP
2induit deux types de règles symboliques en deux étapes :
• règles qui insèrent des annotations dans les textes ;
• règles qui corrigent les erreurs et les imprécisions dans les annotations fournies par l’étape (1).
Des règles sont apprises par la généralisation d’un ensemble d'exemples marqués par des balises
XML dans un corpus d’apprentissage. Une règle d'étiquetage se compose d’une partie gauche,
contenant un modèle de conditions sur une séquence de mots connectés, et d’une partie droite qui est
une action insérant une balise XML dans le texte. Chaque règle insère une balise simple, par exemple
< /speaker >.
Pour chaque exemple, l'algorithme construit une règle initiale, généralise cette règle, et garde les k
meilleures généralisations de la règle initiale.
L'étiquetage produit par les règles appliquées au corpus peut conduire à quelques imprécisions
dans la détection des frontières d’expressions. Une erreur typique est par exemple "at <time> 4
</time> pm", où le "pm" devrait faire partie de l'expression de temps. L'algorithme d'induction utilisé
pour les meilleures règles d'étiquetage est également employé pour des règles de décalage :
identification, généralisation, test et sélection.
Si, comme cela arrive souvent, le système produit une balise ouvrante (par exemple <speaker>)
sans la balise fermante correspondante (</speaker>), on l’enlève.
Composant de généralisation
Le modèle de règle initial relie des conditions sur des chaînes de mots. Ce type de règle est typique
des systèmes d’induction (« wrappers »). Ce modèle de règle est intégré avec des conditions
additionnelles sur les résultats du pré-processeur linguistique. Cela signifie que des conditions sont
imposées non seulement aux chaînes (word="companies"), mais également aux lemmes ("company"),
les utilisateurs définissent leurs listes de classes à partir d’un dictionnaire.
Condition Additional Knowledge Acction
Word Lemma LexCat Case SemCat Tag
the The det low
seminar Seminar noun low
at At prep low
4 digit low <time>
pm noun low timeid
will Will verb low
Figure 27 : exemple de généralisation à partir de la règle initiale
L'efficacité de la règle initiale est comparée à celle d’un ensemble des règles plus générales
obtenues par un algorithme de recherche spécifique qui commence à modéliser l'exemple d'annotation
avec la règle la plus générale et le spécialise en ajoutant des contraintes. Le processus de spécialisation
s'arrête quand les règles produites ont atteint une exactitude satisfaisante et quand aucune nouvelle
spécialisation n'améliore la précision. De cette façon, les règles qui incorporent différents niveaux de
connaissance linguistique sont mises en concurrence directe, et seule la meilleure combinaison de
règles survit.
Condition Action
Word Lemma LexCat Case SemCat Tag
At
digit <time>
timeid
Figure 28 : généralisation possible de la règle de la figure précédente
2.3.3.4 Domaine d’application
L’algorithme LP
2a été utilisé dans un système industriel appelé « LearningPinocchio » sur lequel
nous avons trouvé quelques informations sur le coût en termes de temps développement.
Le système « LearningPinocchio » a été déployé dans plusieurs applications industrielles telles
que l’extraction d’information à partir de curriculum vitae professionnels écrits en anglais et trouvés
sur le Web. Il classe les informations trouvées par thème et alimente une base de données.
Le temps mis pour développer une telle application a été estimé à partir d’un exemple concret
« moyen » : il a fallu 24 heures pour la définition et la révision d’un scénario (un scénario est raffiné
par étiquetage de quelques textes de différentes manières), puis 10 heures environ pour étiqueter 250
textes. L’induction des règles a pris 72 heures sur une machine à 450MHz, avec une fenêtre de taille w
= 4. Enfin, la validation de résultats du système a nécessité 4 heures.
Amilcare a été porté vers plusieurs domaines et pour plusieurs types de textes, dans la même
langue. Étant financé par la DARPA, ce système n’a pas été porté vers d’autres langues. Pour le faire,
il faudrait:
• porter les ressources externes et internes utilisées vers la nouvelle langue désirée.
• réécrire le pré-processeur linguistique, seul module dépendant de la langue, le reste du
système étant indépendant de la langue.
Le coût serait alors la somme du coût de développement du pré-processeur et du coût estimé dans
le paragraphe précédent.
L'approche répond à l'exigence de faire face à différents types de textes comprenant les types
mélangés, parce qu'ils peuvent contenir différentes parties de texte dans lesquelles différentes
informations sont localisées, en utilisant différentes stratégies (linguistiques). Mais l’adaptation de
cette approche à des cas de sous-langage spécialisés tels que les textes des petites annonces
spontanées n’a pas été étudiée dans cette approche.
Pour nous, l’intérêt de cette approche est l’idée d’adaptation d’un extracteur d’information à un
nouveau domaine en restant dans la même langue. Amilcare prouve qu’il est parfaitement possible de
passer à de nouveaux domaines pour un traitement de textes « réfléchis ».
Dans le document
Multilinguïsation des systèmes de e-commerce traitant des énoncés spontanés en langue naturelle
(Page 62-67)