l`apprentissage de l`attachement des PPs

publicité
Mettre tout ça ensemble
corpus et annotation
fréquence et proportions
n-grammes
expressions régulières
perl
Le problème
PP modifieur du nom ou du verbe?
J’ai vu l’homme avec les jumelles
J’ai vu l’homme avec le chapeau
Je mange la pizza avec la fourchette
Je mange la pizza au fromage
Je mange la pizza avec une bière
Pourqoui faut-il resoudre ce problème?
Le 70% des erreurs de construction de structure syntaxique
pendant une analyse automatique sont des erreurs d’attachement
de PP.
Donc, si on ameliorait la performance de la resolution de ce
problème, toute l’analyse serait bien meilleure.
Comment faut-il resoudre ce problème?
J’ai vu l’homme avec les jumelles
J’ai vu l’homme avec le chapeau
Je mange la pizza avec la fourchette
Je mange la pizza au fromage
Je mange la pizza avec une bière
Y-a-t-il des régularités visibles qui distinguent entre
attachement au nom et attachement au verbe?
• L’information lexicale, quels mots sont utilisés dans la
phrase, est cruciale.
Attachment du PP: méthode manuelle
1. Recolte d’un petit corpus d’exemples de PPs avec la distinction
entre modifieur du nom ou modifieur du verbe. En général, par
introspection ou récolte non-systematique des données
observationnelles
2. Création des règles régissant les différences entre ces deux cas
de figure par observation jusqu’à couverture des toutes les
données observées
3. Implantation d’un système et extension aux exemples qui
n’avaient pas été prévus
Méthode manuelle: problèmes
1. Recolte non-systematique des données observationnelles, donc
pas garantie de rappresentativité
2. Possible complexité excessive du système de règles, surtout si
on veut tenir compte des mots
3. Pas de tests systèmatiques, ni de tests sur un ensemble séparé
d’exemples, pas d’evaluation quantitative, difficile à comparer
avec d’autres méthodes
Attachment du PP: méthode basée sur le corpus
1. Annotation d’un corpus d’exemples de phrases
spontanées.
2. Recolte de PPs dans le corpus avec la
distinction entre modifieur du nom ou modifieur
du verbe.
Rappresentativ
ité
3. Création d’un algorithme apprenant
Exhaustivité,
automatiquement les règles qui régissent les
même si
différences entre modifieur du nom ou modifieur
grande
du verbe.
variabilité
4. Implantation de l’algorithme et son entreinement
sur la base d’une partie du corpus.
5. Evaluation de la précision de l’algorithme sur la Fiabilité de
l’évaluation
partie restante du corpus.
Step 1
1. Annotation d’un corpus d’exemples de phrases spontanées
Questions: toutes le questions concernant l’annotation vue au
paravant. Anneés de travail de conception et annotation.
Penn Tree Bank
annotation syntaxique qui distingue les deux types
d’attachement
Exemples dans la PTB
( (S
(NP-SBJ
(NP (NNP Pierre) (NNP Vinken) )
(VP (MD will)
(VP (VB join)
(NP (DT the) (NN board) )
(PP-CLR (IN as)
(NP (DT a) (JJ nonexecutive) (NN director) ))
(NP-TMP (NNP Nov.) (CD 29) )))
(. .) ))
Exemples dans la PTB
( (S
(NP-SBJ (NNP Mr.) (NNP Vinken) )
(VP (VBZ is)
(NP-PRD
(NP (NN chairman) )
(PP (IN of)
(NP
(NP (NNP Elsevier) (NNP N.V.) )
(, ,)
(NP (DT the) (NNP Dutch) (VBG publishing) (NN group) )))))
(. .) ))
Step 2
2a Recolte des PPs dans le corpus avec la distinction entre
modifieur du nom ou modifieur du verbe
Questions
Qu’est-ce qu’on veut extraire?
Sous-arbre qui couvre
verbe nom PP
Comment arrive-t-on à extraire le sous-arbre couvrant
verbe nom PP, etant donné les arbres de la PTB?
Expressions régulières
Essayez
Step 2
2b Simplification et normalisation de données
Tête d’un syntagme: nom pour SN, verbe pour SV etc
On transforme le sous-arbre en suite de têtes syntaxiques plus
valeur binaire indiquant le type d’attachement
Exemple
mange pizza avec fourchette 1
mange pizza au fromage 0
PP tuples
VERB NOUN PREP NOUN2
abolish levy for concern 0
accept payment from Linear 0
accompany President on tour 0
accrue dividend at % 0
accumulate wealth across spectrum 0
yank balloon to ground 1
yield % at bank 1
yield % in offering 1
yield % in week 1
zip order into exchange 1
Step 3
3 Création d’un algorithme apprenant automatiquement les règles
qui régissent les différences entre modifieur du nom ou
modifieur du verbe
Question: faut-il comprendre ce qu’on apprend ou pas?
Autrement dit, faut-il apprendre grâce à une explication ou par
imitation?
La méthode basée sur les corpus utilise souvent l’apprentissage par
imitation
Quel algorithme? Essayez
VERB NOUN PREP NOUN2
abolish levy for concern 0
accept payment from Linear 0
accompany President on tour 0
accrue dividend at % 0
accumulate wealth across spectrum 0
yank balloon to ground 1
yield % at bank 1
yield % in offering 1
yield % in week 1
zip order into exchange 1
Step 3 - ENTREINEMENT
Mémoriser les données d’entreinement,
c-à-d mémoriser la tuple (têtes,attachement)
si des exemples se repètent, mettre à jour un compteur
Step 3 – TEST
Pour chaque donnée de test
si on a déjà vu la même donnée (la même séquence de 4 mots),
alors attachement = attachement à l’entreinement
sinon si on a vu une (ou plusieurs) sous-séquence(s) des 3 mots à l’entreinement,
alors attachement = attachement majoritaire
de la (moyenne des) sous-séquences des 3 mots
sinon si on a vu une (ou plusieurs) sous-séquence(s) des 2 mots à l’entreinement,
alors attachement = attachement majoritaire
de la (moyenne des) sous-séquences des 2 mots
sinon si on a vu une (ou plusieurs) sous-séquence(s) d’un mot à l’entreinement,
alors attachement = attachement majoritaire
de la (moyenne des) sous-séquences d’un mot
sinon attachement majoritaire
Step 3 – TEST
Pour chaque donnée de test
if (verbe nom prep nom2) in tuples d’entreinement
alors attachement = attachement de la tuple
elsif (verbe nom prep) ou (nom prep nom2) ou (verbe prep nom2) in tuples d’entreinement
alors attachement = attachement majoritaire de
(verbe nom prep) + (nom prep nom2) +(verbe prep nom2)
elsif (verbe prep) ou (nom prep ) ou (prep nom2) in tuples d’entreinement
alors attachement = attachement majoritaire de
(verbe prep) + (nom nom2) +(prep nom2)
elsif (prep) in tuples d’entreinement
alors attachement = attachement majoritaire de prep
sinon attachement majoritaire dans le corpus d’entreinement
Step 4
4 Implantation de l’algorithme et son entreinement sur la base
d’une partie du corpus
Exemple
#!/usr/local/bin/perl5
# Computes:
collects tuples and updates counts
# Loads:
<verbe nom prep nom2> tuples
open(TRAINING, "training-quads");
while (<TRAINING>) {
($v, $n, $p, $n2, $a) = split;
if
($a == 0 ) { $noms{"$v $n $p $n2"}++;
$noms{"$v $p $n"}++;
$noms{"$n $p $n2"}++;
$noms{"$v $p $n2"}++;
$noms{"$v $p"}++;
$noms{"$n $p"}++;
$noms{"$p $n2"}++;
$noms{$p}++;
$noms++;
}
else {….}
};
Exemple
#!/usr/local/bin/perl5
# Computes:
collects tuples and updates counts
# Loads:
<verbe nom prep nom2> tuples
open(TRAINING, "training-quads");
while (<TRAINING>) {
($v, $n, $p, $n2, $a) = split;
if
($a == 0 ) {
else {
….
}
$verbs{"$v $n $p $n2"}++;
$verbs{"$v $p $n"}++;
$verbs{"$n $p $n2"}++;
$verbs{"$v $p $n2"}++;
$verbs{"$v $p"}++;
$verbs{"$n $p"}++;
$verbs{"$p $n2"}++;
$verbs{$p}++;
$verbs++;
}
};
Step 5
5 Evaluation de la précision de l’algorithme sur un echantillon de
nouvelles phrases
PP: évaluation
open(TESTING, "testing-quads");
while (<TESTING>) {
($v, $n, $p, $n2, $a) = split;
deviner l’attachement avec algorithme vu dessus
calculer la précision des réponses
};
PP: évaluation
open(TESTING, "testing-quads");
while (<TESTING>) {
($v, $n, $p, $n2, $a) = split;
c’est à vous
};
MERRY CHRISTMAS
BUON NATALE
Programme détaillé du cours - Sémestre d'hiver
8 janvier 2003
Les données textuelles comme base pour l'évaluation:
Evaluation de la performance: les mesures de précision et de
rappel.
Evaluation de la fiabilité: l'accord inter-juge (le kappa).
TP petit programme Perl pour calculer precision, rappel et
accord inter-juge.
Programme détaillé du cours - Sémestre d'hiver
15 jan Introduction à l'apprentissage automatique: l'approche
d'apprentissage automatique aux problèmes de TALN. Les
méthodes d'apprentissage symbolique: les arbres à décisions.
TP
Programme détaillé du cours - Sémestre d'hiver
22 jan
L'apprentissage automatique du lexique 2
L'apprentissage automatique de la distinction entre arguments et
modifieurs (Avec Eva)
TP
Programme détaillé du cours - Sémestre d'hiver
29 jan L'apprentissage automatique du lexique 1 (anglais) La
classification automatique des verbes en classes semantiques.
TP Petit programme Perl/tgrep pour les SPs
5 fév Révision
Programme détaillé du cours - Sémestre d'été
12 mars
Introduction à la théorie de la probabilité:
probabilité simple et probabilité conditionelle; le théorème de
Bayes
19 marsDistributions la distribution binomiale; la distribution
normale.
26 marsL'apprentissage probabiliste: l'apprentissage
automatique de la sous-catégorisation (Brent).
2 avril L'apprentissage probabiliste: Desambiguisation des
classes des verbes (Lapata and Brew, Gildea).
9 avril L'apprentissage probabiliste: Attachment du PP: un
seul PP, plusieurs PPs (Collins and Brooks, Merlo et al.)
23 avril
annullé
Programme détaillé du cours - Sémestre d'été
30 avril L'analyse syntaxique probabiliste: PCFGs.
7 mai L'analyse syntaxique probabiliste: Collins 1996.
14 mai L'analyse syntaxique probabiliste: Collins 1997.
21 mai L'analyse syntaxique probabiliste: Charniak 2000
28 mai buffer/Gerold
4 juin annullé
11 juin Apprentissage de verbes en Espagnol (Eva)
18 juin Révision
Téléchargement