Analyse syntaxique

Download Report

Transcript Analyse syntaxique

Analyse syntaxique
Amalia Todirascu
[email protected]
Plan




Présentation des problématiques du TAL
Etiquetage morpho-syntaxique, approches
générales + Prise en main d'outils
(TreeTagger, Flemm)
Analyse syntaxique : présentation générale +
Prise en main d'outils (Cordial)
Ressources pour le Tal (grammaires,
lexiques)
Plan du cours



Les objectifs d'un outil d'analyse
syntaxique automatique
Notions: grammaire, lexique, arbre
syntaxique
Comment fonctionne un outil d'analyse
syntaxique automatique ?



approche classique
approche statistique
approche robuste
Motivation

Les objectifs des outils TAL sont de comprendre le
sense du texte, en passant par la syntaxe


Une personne qui parle sa langue maternelle va
identifier les phrases mal-formées du point de vue
syntaxique, en revanche les outils de TAL doivent
acquerir cette capacité
Un analyseur syntaxique automatique utilise



une grammaire
un lexique
un moyen de raisonner pour distinguer les phrases correctes et
les erreurs
Motivation (II)

Matériel d'étude pour:




les linguistes
les traducteurs
les chercheurs TAL
Applications TAL:




Outils d'aide à la traduction
Apprentissage d'une langue étrangère
Recherche d'information dans une base textuelle
Applications de commerce électronique
Un exemple d'annotation
Annotation pour "Goriot payait encore douze cents francs de
pension."
STA:fcl
S:prop("Goriot")
Goriot
P:v-fin('payer' IMPF 3S IND)
payait
fA:adv("encore")
encore
Od:np
=DN:num("douze")
douze
=H:n('cent' M P)
cents
=DN:adj('franc' M P)
francs
=DN:pp
==H:prp("de")
de
==DP:n('pension' F S)
pension

14/03/2009
Séminaire de formation LILPA
6
Grammaire, lexique, arbre

Point de vue linguistique



Une grammaire = un ensemble de règles qui
identifient les phrases correctes d'une langue
Le lexique = l'ensemble des mots qui sont
reconnus par une langue
Point de vue TAL


Grammaire = un ensemble de règles qui
s'appliquent pour construire la structure
syntaxique de la phrase
Lexique = l'ensemble des mots d'une langue en
format électronique, avec leurs propriétés
morpho-syntaxiques
Lexique

Collection des mots avec leurs propriétés
morpho-syntaxiques, sémantiques




Parfois seulement les lemmes sont disponibles
Génération automatique des formes fléchies
Utilisation des étiquetteurs peut remplacer le
lexique
Exemples
<forme: abeilles, cat: nom, lemme:abeille,
nombre:pl, genre: fém>
<forme: suis, cat: verbe, lemme:être, mode:
indicatif, temps: présent, pers: 1, nombre: sg>
<forme: suis, cat: verbe, lemme:suivre, mode:
Problèmes

Ambiguïtés – plusieurs analyses syntaxiques
seront possibles


Lexiques de grande taille pour une couverture
linguistique appropriée


Eventuellement l'information sémantique peut
servir pour éliminer les alternatives
incomplètitude
Traitement des erreurs – impossible si on
s'appuie sur un lexique
Grammaire (I)

Chomsky (Structures Syntaxiques, 1969)
propose une grammaire générative pour
l'anglais



Caractériser la notion de grammaticalité
Trouver un ensemble de règles qui décrivent
l'infinité des phrases produites dans une
langue
Premiers élements pour un traitement
automatique de la syntaxe
Grammaire en TAL (II)


Utilisées pour la génération d'un langage et
pour identifier si une phrase fait partie du
langage (analyse)
Composition




Un symbole initial
Un ensemble de composants syntaxiques
identifiables par la grammaire
Un ensemble de règles de transformation (dont
au moins une ayant le symbole initial à gauche)
Un ensembles de mots (le lexique)
Exemple – une grammaire du
group nominal




GN – symbole initial
REL, GP – catégories intermédiaires
Catégories lexicales: N, Adj, Prep,
PronRel, Det, P
Règles





GN -> Det N
GN -> Det N Adj
GN -> GN GP
GP -> Prep GN
GN -> GN PronRel P
Exemple – les règles
appliquées






P-> GN GV
GN->Pron
GN-> Det N GP
GN-> Det N
GV-> V GN
GP-> Prep GN







Pron -> Je
V -> vois
Det-> un
N-> homme
Prep -> avec
Det -> des
N-> jumelles
Arbre Syntaxique (I)


Chomsky propose une théorie qui permet
de modéliser la syntaxe pour être
utilisable par une machine;
Une règle de transformation d'une
grammaire = un noeud dans l'arbre
syntaxique avec ses descendants
GN -> Det N Adj

GN
Det N
Adj
fcl
prop
v-fin
Goriot
adv
payait encore
np
num n
adj
pp
douze cents francs prp
de
n
pension
fcl  prop v-fin adv np
np  num n adj pp
pp  prp n
14/03/2009
Séminaire de formation LILPA
15
Comment construire un arbre
syntaxique pour un texte?


Ressources: Grammaire et lexique
Stratégies possibles:



du haut vers le bas (du noeud racine vers les
feuilles)
du bas vers le haut (des feuilles vers le noeud
racine)
L'algorithme qui applique les régles de
grammaire


Entrée: la phrase à analyser
Sortie: l'arbre syntaxique associée, si la phrase
est correcte, sinon échec
Stratégie descendente


S_courant = P le symbole initial de la
grammaire
Tant que il y a encore des règles dans la
grammaire G




Si S_courant est une catégorie lexicale et le mot de
la phrase d'entrée fait partie du lexique et a la
même catégorie lexicale, stop
Sinon, identifie les règles ayant à gauche le symbole
S_courant
Choix d'une règle et transformation
S_courant = le premier élément à droite de la règle
Problèmes




Si plusieurs règles avec le même symbole
gauche disponibles => plusieurs arbres
Si un mot n’est pas dans le lexique,
impossibilité de construire l’arbre syntaxique
Si la grammaire n’est pas complète,
impossibilité de construire l’arbre syntaxique
Règles circulaires => branches infinies


GN-> Det N
GN -> GN GP
La stratégie ascendente


S_courant = P le symbole initial de la grammaire; R –
l’ensemble des règles de la grammaire; Pile – la pile
des symboles à interpreter
Tant qu’il y a des mots dans la phrase d’entrée




Choix du mot suivant et cherche le mot dans le lexique
Si le mot est dans le lexique, sélectionne la catégorie
lexicale, rajoute un nœud dans l’arbre et dans la pile des
symboles P
Si les derniers n symboles de la pile forment la partie droite
d’une règle, alors construit le nœud dans l’arbre et ajoute
le symbole gauche de la règle utilisé en Pile
Si Pile = {P}, alors succes, sinon echec
Problèmes de la stratégie
ascendente



Règles circulaires => branches infinies
aussi
Si un mot n’est pas dans le lexique,
l’algorithme s’arrête
Il faut revenir en arrière s’il y a plusieurs
règles applicables
Un exemple : Analyseurs
syntaxiques en ligne
FIPS


http://www.latl.unige.ch/
(Laboratoire d’Analyse et de Technologie du
Langage)
Langues traitées :


Anglais, Français, Allemand, Italien
Modèle chomskyen, théorie GB
=> architecture modulaire du programme
 Modules universaux
Modules
spécifiques

principes
paramètres

14/03/2009
Séminaire de formation LILPA
21
FIPS -Utilisation
1.
2.
Copier-coller le texte
Sélectionner l’application (le type de sortie)
1.
2.
3.
3.
Parser : analyse syntaxique seule
Tagger : analyse syntaxique + étiquettes
XML : (bug) schéma X-barre
Cliquer sur ‘Analyser’
14/03/2009
Séminaire de formation LILPA
22
FIPS - Parser
14/03/2009
Séminaire de formation LILPA
23
Plan du cours



Les objectifs d'un outil d'analyse
syntaxique automatique
Notions: grammaire, lexique, arbre
syntaxique
Comment fonctionne un outil d'analyse
syntaxique automatique ?



approche classique
approche statistique
approche robuste
Analyse syntaxique – divers
approches

Analyse syntaxique “classique” (Gazdar 1996,
Shieber 1984)


Analyse syntaxique robuste (S.Abney 1991)


Une phrase correcte = un arbre syntaxique
complet
Identifier que les constituents syntaxiques
“pertinents”
Analyse syntaxique statistique (Caroll 1996,
Bod & all 2003)

Les règles de grammaires sont décorées avec
des probabilités
Problèmes

comment gérer les ambiguïtés?





lexicales
syntaxiques
sémantiques
ressources linguistiques incomplètes
(grammaires, patrons)
quantité importante de textes à traiter
Analyse statistique


proposée pour résoudre les problèmes
des analyseurs syntaxiques
une méthode possible :


grammaires probabilistes (indépendentes
de contexte) (Charniak 1996)
nécessite une phase d'apprentissage sur
les données
Grammaires probabilistes





Un symbole de départ (le composant maximal
à identifier)
un ensemble de composants syntaxiques ou
catégories lexicales (symboles nonterminaux) N
un ensemble de symboles terminaux (mots) T
un ensemble de règles A -> A1…An (A N, Ai
TN )
un ensemble de probabilités pi associés à
chaque règle A pi(A->A1…An)=1
Un exemple de grammaire
probabiliste






P-> GN VN (1.0)
GP-> Prep GN (1.0)
GV-> V GN (0.7)
GV -> GV GP (0.3)
GN -> GN GP (0.4)
V-> saw (1.0)






Prep-> with (1.0)
GN -> astronomers
(0.1)
GN-> ears (0.18)
GN -> saw (0.04)
GN-> stars (0.18)
GN -> telescopes
(0.1)
Arbres syntaxiques
probabilistes



les règles de grammaires s'appliquent
pour créer l'arbre syntaxique associé au
texte
la probabilité de l'arbre = produit de
tous les règles qui s'appliquent pour
construire l'arbre
P(Arbre|R) =  p(ri), ri règle qui
s'applique pour construire l'arbre
Un exemple
P
GV
GN
astronomers
GN
V
saw
GP
N
stars
Prep
N
with
ears
p(t1)=1*0.1*0.7*1.0*0.4*0.18*1.0*1.0*0.18
Analyse statistique

apprentissage




des règles de grammaire
des probabilités
à partir d'un corpus (arboré), et des
exemples positifs
analyse syntaxique de la phrase:

construire un arbre syntaxique le plus
probable, étant donnée une grammaire
Apprentissage


sur un corpus arboré, on peut extraire
les règles trouvés dans le corpus
si S est la phrase à analyser, et T est
l'arbre syntaxique associé, les règles
LHS->RHS alors la probabilité:


P(T|S) = i=1..n P(LHSi->RHSi|LHSi)
P(LHSi->RHSi|LHSi) = Count(LHSi,
RHSi)/Count(LHSi)
Apprentissage (II)
2
2
à partir d'un corpus
nij  n**
étiqueté, il faut LL  2   nij  log
ni* n* j
j 1 i 1
calculer la
probabilité que n
mots apparaissent
Log-likelihood
n12 = n1* - n11
ensemble
w
¬w

2
2
w1
n11
n12
¬
n21
n22
w
1
n21 = n*1 – n11
n22 = n** - n11
L'analyseur syntaxique


cherche l'arbre T qui maximise la
quantité P(T|S)
un algorithme qui est basé sur un
diagramme, construite sur les mots de
la phrase d'entrée (Caroll, Briscoe,
1996)


liste de clés
états
Autre modèle




DOP (Data Oriented Parsing) (R.Bod 2003)
chaque personne produit un nombre infini de
phrases
d'où l'idée de stocker tous les sous-arbres
d'un arbre syntaxique identifié dans le corpus
quand on présente une nouvelle phrase:



on décompose en segments
on identifie les arbres partiels
on recompose pour avoir l'arbre syntaxique le
plus probable
DOP


une règle qui identifie les phrases correctes
des règles de décomposition des arbres



des règles de compositions


racine (sélectionner un nœud racine et extraire
le sous-arbre)
frontière (sélectionner d'autres nœuds que les
nœuds racines et effacer ces arbres)
substitution
comment calculer la probabilité d'une phrase
à base des fréquences de ses fragments

P(t) = nb(t)/( (racine(t)=racine(t'))*nb(t'))
t'
Avantages et limites

avantages


apprentissage à partir des données, donc à
des exemples rééls
limites


la taille et la qualité du corpus
d'entraînement sont très importantes
validation linguistique est nécessaire
Problèmes liés aux grammaires

Niveau d'ambiguïté élévé


Couverture linguistique


Information contextuelle nécessaire pour la
desambiguïsation
Exceptions pour les phénomènes spécifiques
Traitement des erreurs - alternatives


Analyse syntaxique partielle (S.Abney 1991)
Analyse statistique (Carroll, 1999, Bod, 2003)
Cordial analyseur
http://www.synapse-fr.com/
Cordial_Analyseur/Presentation_Cordial_Analyseur.ht
m



Logiciel commercial : pas d’information
précise sur les principes de fonctionnement
Installation sur sa propre machine, interface
d’utilisation
Choix des paramètres d’analyse
14/03/2009
Séminaire de formation LILPA
40
Cordial analyseur

Deux possibilités de sorties:



Dans les deux cas :



en arbre
en liste
relations (SUJ, COD, COI, Circonstant, Attribut,
etc.)
groupes syntaxiques
Sortie liste


14/03/2009
étiquette morphosyntaxique
classe sémantique
Séminaire de formation LILPA
41
Analyse syntaxique – divers
approches

Analyse syntaxique “classique” (Gazdar 1996,
Shieber 1984)


Analyse syntaxique robuste (S.Abney 1991)


Une phrase correcte = un arbre syntaxique
complet
Identifier que les constituents syntaxiques
“pertinents”
Analyse syntaxique statistique (Caroll 1996,
Bod & all 2003)

Les règles de grammaires sont décorées avec
des probabilités
Analyseurs syntaxiques en
ligne
1. VISL


http://beta.visl.sdu.dk/visl/fr/parsing/
automatic/
Langues traitées :


Danois, Anglais, Esperanto, Français, Allemand,
Portugais, Espagnol, Italien, Norvégien (bokmål)
Constraint Grammar

14/03/2009
Règles contextuelles écrites par des linguistes
(par opposition à une analyse probabiliste,
statistique)
Séminaire de formation LILPA
43
VISL - Utilisation
Choisir une sortie :
1.
arbre ou structure plate
•
2.
3.
Copier-coller le texte à analyser
Cliquer sur ‘Go!’
14/03/2009
Séminaire de formation LILPA
44
VISL - Arbre
14/03/2009
Séminaire de formation LILPA
45
VISL - Arbre
14/03/2009
Séminaire de formation LILPA
46
VISL – Structure plate
14/03/2009
Séminaire de formation LILPA
47
Analyseurs syntaxiques en
ligne
2. XFG



http://www.xlfg.org/
Développé par L. Clement
Langues traitées :


Anglais, Français
Grammaire LFG (Lexical Functional Grammar)
14/03/2009
Séminaire de formation LILPA
48
Analyseurs syntaxiques en
ligne
3. XIP



http://www.xrce.xerox.com/xip/page1
.jsp
Développé par S. Aït-Mokhtar et J.-P. Chanod
Langues traitées :


Anglais, Français, Espagnol, Italien, Portugais
Grammaire de dépendances entre ‘tokens’
14/03/2009
Séminaire de formation LILPA
49
Grammaires de dépendance
S
NP
V
NP
R0
VMOD
EN
D
N
SBJ
ROOT EN
Karl
travaille
le
soir
Karl
NMOD
V
D
travaille le
N
soir
Grammaires de dépendance
(II)
S
ROOT
R0
NP
V
EN
V:travaille
NP
D
N
SBJ
VMOD
NE:Karl
N:soir
NMOD
Karl
51
travaille
le
soir
D:le
Grammaires de dépendance
ROOT

Formalisme:
V:travaille
T = terminaux
SBJ
VMOD
 N = non-terminaux
EN:Karl
N:soir
 L = étiquettes
NMOD
 ROOT = noeud initial
D:le
 règles:
 RI : règle de catégorisation : X  y1 | … | yn
 RII : règle de dépendence :
X(Y1…Yi*Yi+1…Yn)
 RIII: catégories liées avec ROOT

52
R0
XIP - Utilisation
1.
2.
3.
Choisir la langue
Copier-coller le texte à analyser
Choisir une sortie
1.
2.
3.
4.
5.
6.
4.
minimale (analyse syntaxique)
totale (lemme + analyse syntaxique)
arbre
arbre complet (?)
extraction d’entités (fournit uniquement les
Entités Nommées)
format xml
Cliquer sur ‘Start parsing’
14/03/2009
Séminaire de formation LILPA
53
XIP – ‘full output’
14/03/2009
Séminaire de formation LILPA
54
XIP – ‘tree’
14/03/2009
Séminaire de formation LILPA
55
Conclusion


Pas de standard
Objectifs, fonctionnement des
analyseurs divers


=> Evaluation et comparaison difficiles
Relative médiocrité des performances

14/03/2009
pour le français, campagne d’évaluation
EASY
Séminaire de formation LILPA
56
Evaluation des analyseurs
Résultats de Syntex lors de la campagne EASY
Précision, rappel et f-mesure, avec le rang de classement de SYNTEX (r) et l’écart
avec l’analyseur classé deuxième pour la précision et la f-mesure (S-n°2), et l’écart
l’analyseur classé premier pour le rappel (S-n°1)
14/03/2009
Séminaire de formation LILPA
57
Evaluation des analyseurs
(II)
Corpus Littéraire
14/03/2009
Corpus Le Monde
Séminaire de formation LILPA
58
Evaluation (III)


Nouvelle campagne: PASSAGE (20072009)
http://atoll.inria.fr/passage



mise à disposition des corpus de référence
plate-forme d'annotations
outils de visualisation
Références bibliographiques




N.Chomsky – Structures syntaxiques, Editions du Seuil, 1969
Steven Abney - Parsing By Chunks. In: Robert Berwick, Steven
Abney and Carol Tenny (eds.), Principle-Based Parsing. Kluwer
Academic Publishers, Dordrecht. 1991
R. Bod, J. Hay and S. Jannedy (eds.) - Probabilistic Linguistics,
The MIT Press, 2003
Carroll, J. and Briscoe, E. (1996) “Apportioning development effort
in a probabilistic LR parsing system through evaluation”. In
Proceedings of the ACL/SIGDAT Conference on Empirical Methods
in Natural Language Processing, University of Pennsylvania, PA.


92-100.
Charniak, E. (1997) "Statistical parsing with a context-free
grammar and word statistics", Proceedings of the Fourteen
National Conference on Artificial Intelligence, AAAI Press/MIT
Press, Menlo Park
Collins, M.J. (1996) A New Statistical Parser Based on Bigram
Références







Abeillé, A., L. Clément, and F. Toussenel. (2003). `Building a treebank for
French', in A. Abeillé (ed) Treebanks , Kluwer, Dordrecht
Ait-Mokhtar, S., Chanod J.-P. (1997) Incremental finite-state parsing. In
Proceedings of Applied Natural Language Processing 1997, Washington, DC.
April 97
Bick, Eckhard (2006). A Constraint Grammar-Based Parser for Spanish. In:
Proceedings of TIL 2006 - 4th Workshop on Information and Human Language
Technology (Ribeirão Preto, October 27-28, 2006). ISBN 85-87837-11-7
Bourigault D., Fabre C., Frérot C., Jacques M.-P. & Ozdowska S. (2005), Syntex,
analyseur syntaxique de corpus, in Actes des 12èmes journées sur le
Traitement Automatique des Langues Naturelles, Dourdan, France
Joshi, A. (1994). Introduction to Tree Adjoining Grammars. In Computational
Intelligence
Lopez, P. (1999). Analyse d'énoncés oraux pour le dialogue homme-machine à
l'aide de grammaires lexicalisées d'arbres, Thèse, INRIA-Lorraine
Wehrli, E. (2005) Fips, a “Deep” Linguistic Multilingual Parser, Proceedings of
the 5th Workshop on Important Unresolved Matters, pages 120–127, Ann
Arbor, June 2005, Association for Computational Linguistics
14/03/2009
Séminaire de formation LILPA
61
Evaluation (I)


Un dossier de 6-8 pages :
Contenu



soit vous présentez un outil d'analyse
automatique (étiqueteur, analyseur syntaxique)
ou une ressource utilisée pour l'analyse
(lexique, grammaire) avec les avantages et les
limites
soit vous comparez deux outils de même
catégorie avec les avantages et les
inconvenients de chaque outil
Date limite : 4 novembre 2010
Evaluation (II)

pas de reprise à l'identique du
texte/source Web consulté



en cas de reprise identique, on cite l'auteur
et on met le texte entre ""
pas plus de 15% dédiées aux images
(copies d'ecran)
indiquer les sources consultées (même
si pages Web)