N - Institut d`électronique et d`informatique Gaspard

publicité
Etiquettes lexicales, grammaires
Eric Laporte
Institut Gaspard-Monge
Université Paris-Est Marne-la-Vallée
France
http://www-igm.univ-mlv.fr/~laporte/
Objectifs
Tokenisation
Rappel et précision en recherche d'informations
Élaboration d'une requête
Grammaires locales
Informations lexicales
Etiquettes lexicales
Lexiques pour le traitement des langues
Ambiguïtés
Consultation
Structures de traits
Recherche de formes
Masques lexicaux
Tokenisation
Tokenisation (1/2)
Tokens : éléments simples d'un texte écrit
Passer d'une séquence de caractères à une séquence de tokens
Je vais fermer l'autre porte
/Je/vais/fermer/l/'/autre/porte/
Définition des tokens
Les mots délimités par des espaces ?
/l'autre/
/autre,/
Certains symboles
- peuvent gêner la comparaison entre mots
- peuvent avoir une importance en eux-mêmes
/l/'/autre/
/autre/,/
Tokens-mots et tokens-non-mots
Tokenisation (2/2)
Définition par les délimiteurs
Simple
Fournit seulement les tokens-mots
Définition par les tokens
Fournit les tokens-mots et les tokens-non-mots
Permet de séparer 2 tokens sans délimiteur. Ex. : 60%, 1970s, G8
Dans les deux cas, expressions rationnelles
[^\w\s]
un symbole de ponctuation
\w+ une séquence d'1 ou plusieurs caractères alphanumériques
\d+ une séquence d'1 ou plusieurs chiffres
Algorithme de tokenisation (1/2)
Entrées : le texte, séquence de caractères ; une ou plusieurs
expressions rationnelles définissant les tokens
Sorties : une séquence de tokens
tant que le texte n'est pas fini {
pour chaque expression rationnelle {
appliquer l'expression au texte en allant le plus loin possible
marquer dans le texte la position obtenue }
si aucune marque alors passer au caractère suivant
sinon {
conserver seulement la marque la plus à droite
copier sur la sortie depuis le caractère courant jusqu'à la
marque
prendre comme caractère courant le caractère marqué } }
Algorithme de tokenisation (2/2)
Je vais fermer l'autre porte
|
| ^
|
|
|
^
|
|
...
Je
vais
Expressions rationnelles (1/2)
Notations en grep, sed, vi, emacs, flex, perl, python...
Détails des conventions différents pour chaque programme
[0123456789]
0|1|2|3|4|5|6|7|8|9
[0-9]
0|1|2|3|4|5|6|7|8|9
[^a-zA-Z]
1 caractère autre que [a-zA-Z]
CLEF?
CLE|CLEF
[0-9]+
[0-9][0-9]*
.
1 caractère autre que fin de ligne (\n)
^Le
"Le" si placé en début de ligne
dernier$
"dernier" si placé en fin de ligne
\|\(\)\*\[\?\+\.\^\$\\ |()*[?+.^$\
Expressions rationnelles (2/2)
Notation en python
\s
\w
\d
1 espace, fin de ligne ou tabulation
1 caractère alphanumérique
1 chiffre
Le tokeniseur de NLTK
>>> from nltk_lite import tokenize
>>> phrase = "Je vois l'autre."
>>> list(tokenize.regexp(phrase, "[^\s]+")
['Je', 'vois', "l'autre."]
>>>
Pour ne pas mélanger les types de caractères dans un token :
>>> list(tokenize.regexp(phrase, "[\w]+|[^\s\w]")
['Je', 'vois', 'l', "'", 'autre', '.']
>>>
Les tokeniseurs d'Unitex
Pour chaque langue, un tokeniseur sans paramétrage
possible
Définition par les tokens
Codage des tokens
Objectifs de la normalisation
Faciliter l'échange de données et d'outils
Formats lisibles, pas toujours adaptés au traitement direct
Les normes sont discutées par des experts variés
Elles sont compatibles avec des théories variées
Norme en construction
Organisation internationale de normalisation (ISO)
Elément token: attribut value, attribut id, contenu textuel
<token value="par" id="t8">par</token> <token value="page"
id="t9">page</token>
Attribut value: peut représenter une forme sous-jacente
<token value="de" id="t5">d</token><token value="le"
id="t6">u</token>
Format des fichiers Unitex
pour le codage des textes
Unitex: outil logiciel libre pour l'analyse de textes par lexique
(Sébastien Paumier, Université de Marne-la-Vallée)
Formats adaptés au traitement par lexique
Référence : manuel en français, anglais
tokens.txt, liste des tokens du texte, sans répétitions
0000073572
Au
lecteur
Glória
Kreinz
text.cod, fichier binaire équivalent au texte: chaque token est
représenté par un numéro déduit de la position du token dans le
fichier précédent
Numéros codés sur 4 octets, à partir de zéro
Rappel et précision
en recherche d'informations
Rappel et précision
en recherche d'informations (1/2)
Critères de succès
Rappel : détecter le plus possible de formes désirées
Précision : retenir le moins possible de formes non désirées
Rappel et précision
en recherche d'informations (2/2)
Rappel
Nombre de de documents retenus parmi les documents désirés
D&R/D
Exemple :
requête
justice
documents désirés
ministre de la Justice
retenu
garanties accordées aux justiciables en améliorant la
formation des magistrats
non retenu
Précision
Nombre de documents désirés parmi les documents retenus
D&R/R
Exemple :
requête
rentrée
documents retenus
bien préparer la rentrée des classes
Titine est rentrée à la maison
désiré
non désiré
Rappel et précision (1/5)
Deux valeurs indépendantes dont l'évolution est habituellement
antagonique
Bruit + précision = 1
Silence + rappel = 1
Evaluation précise du rappel et de la précision
- Marquer manuellement les documents désirés
- Appliquer le système et marquer les documents retenus
- Compter les documents à la fois désirés et retenus (D&R)
- Calculer le rappel (D&R / D) et la précision (D&R / R)
A cause du marquage manuel, ne peut être fait que sur un petit
corpus
Rappel et précision (2/5)
Graphique rappel/précision
précision
1
0
1
rappel
Rappel et précision (3/5)
Effet d'un relâchement de contrainte
Exemple : admettre des équivalents sémantiques
Le rappel a tendance à augmenter, la précision à diminuer
(pluls de documents)
précision
1
0
1
rappel
Rappel et précision (4/5)
Effet d'un resserrement de contrainte
Exemple : relever le seuil de proximité exigé entre requête et
document
Le rappel a tendance à diminuer, la précision à augmenter
(moins de documents)
précision
1
0
1
rappel
Rappel et précision (5/5)
Objectif de la recherche d'informations
Augmenter à la fois le rappel et la précision
Cas du modèle vectoriel
- jouer sur le seuil de proximité
- pré-traitement du texte : lemmatisation
Exemple :
requête
documents
rentrée
bien préparer la rentrée des classes
bien préparer le rentrée du classe
Titine est rentrée à la maison
Titine être rentrer à le maison
retenu
non retenu
C'est un pré-traitement qui nécessite des données linguistiques
Le rappel et les variantes
Causes du silence
Variations dans la façon d'exprimer une idée
- pluriel, féminin, conjugaison (morpho-syntaxe)
- synonymes
- dérivés
- langues
etc.
ministère
ministères
loi
règlement
justice justiciable
ministère
ministry
Relâchement de contrainte
Admettre des variantes
La précision et l'ambiguïté
Causes du bruit
Ambiguïtés (une forme, plusieurs interprétations)
bien préparer la rentrée des classes
Titine est rentrée à la maison
Allons boire un verre
La bouteille est en verre
Resserrement de contrainte
Sélectionner les formes dont l'interprétation correspond à la
requête
Amélioration de la requête
Objectif
Augmenter à la fois le rappel et la précision en améliorant la
requête
Rappel
Relâcher des contraintes sur les variations
Méthode : étendre la requête dans le sens de l'union (plus
d'occurrences)
Précision
Resserrer des contraintes sur l'ambiguïté
Méthode : étendre la requête dans le sens de la concaténation
(moins d'occurrences)
Relâcher des contraintes sur les variations
- pluriel, féminin, conjugaison (morpho-syntaxe)
<ministère> =
ministère + ministères
<règlement> =
règlement + règlements
<juger> =
juger + juge + juges + jugé + jugés +
jugée + jugées + jugeons + jugez + jugent...
- synonymes
loi + règlement
- dérivés
justice + justiciable
- autres ("association") justice + <magistrat> + <avocat> +
<tribunal> + <juge>...
<ministère> : masque lexical
Etendre la requête en une union de plusieurs requêtes
Resserrer des contraintes sur l'ambiguïté
En décrivant le contexte d'un mot ambigu, on sélectionne
certaines interprétations
requête
documents retenus
rentrée
bien préparer la rentrée des classes
Titine est rentrée à la maison
est rentrée
Titine est rentrée à la maison
la rentrée
bien préparer la rentrée des classes
rentrée des classes
bien préparer la rentrée des classes
Etendre la requête en une séquence de plusieurs mots
Grammaires locales
Une grammaire locale est une requête qui peut comporter
- plusieurs variantes
- des séquences de plusieurs mots
Forme améliorée de requête
L'amélioration des requêtes est-elle automatisable ?
Construction manuelle des grammaires locales
On la représente par un graphe avec un éditeur graphique
Unitex : FSGraph
Méthode d'amélioration d'un graphe avec un
corpus
Relâcher une contrainte
Faire une concordance sur le corpus
Resserrer la contrainte en fonction de la concordance
Itérer
précision
1
0
1
rappel
Relâcher/resserrer des contraintes
dans une grammaire locale (1/2)
Allonger des chemins
Ajouter du contexte gauche ou droit dans le graphe :
resserrement de contrainte (moins d'occurrences)
Raccourcir des chemins
Supprimer une partie du contexte gauche ou droit dans le graphe :
relâchement de contrainte (plus d'occurrences)
Relâcher/resserrer des contraintes
dans une grammaire locale (2/2)
Ajouter des chemins
Ajouter des variantes parallèles dans le graphe :
relâchement de contrainte (plus d'occurrences)
Remplacer un masque lexical par un autre plus général :
relâchement de contrainte
Supprimer des chemins
Remplacer un masque lexical général (ex. <V>) par une liste de
mots :
resserrement de contrainte
Informations lexicales
Ces opérations nécessitent des informations sur les mots
Pluriels, synonymes, ambiguïtés...
Informations lexicales
Informations lexicales (1/2)
Informations codifiées qui constituent les étiquettes des mots
Traits traditionnels
Catégorie grammaticale : substantif, verbe, adjectif...
Sous-catégories : indéfini, possessif...
Traits flexionnels : masculin, féminin, neutre, singulier, pluriel,
comparatif, nominatif, génitif...
Traits syntaxiques : transitif, accepte une complétive sujet...
Traits sémantiques : humain, concret, abstrait, comptable...
Formes canoniques
Formes sous-jacentes
Relations entre entrées
Informations lexicales (2/2)
Lemme
Une des formes fléchies choisie pour les représenter toutes
olivier,olivier.N:ms
oliviers,olivier.N:mp
La notion de lemme facilite l’organisation des données : de
nombreuses informations ne dépendent pas de la flexion et
peuvent être rattachées aux lemmes
Utilisation pour diminuer le nombre de dimensions dans le modèle
de l'espace vectoriel
Relations entre entrées lexicales
Les relations exploitables sont de nature sémantique et parfois
syntaxique
connecter/relier
confondre/confusion
Elles sont liées aux autres informations lexicales : la dérivation
tendre/tension n’est valable que pour tendre verbe
Relations purement sémantiques (thésaurus, réseau sémantique) :
manger/repas
connecter/relier
Relations sémantico-syntaxiques (lexique-grammaire) :
N0 confondre N1 (avec + et) N2
N0 faire Det confusion entre N1 et N2
Quantité d’information lexicale
Nombre de valeurs possibles d’un trait donné :
- 2 (mot grammatical/mot plein) : Google
- 15 (catégorie grammaticale) : corpus classiques
- des dizaines de milliers (lemme) : lexiques inclus dans Unitex,
thésaurus
Le nombre de valeurs différentes d’un trait mesure la quantité
d’information qu’il apporte
Jeux d’étiquettes lexicales (1/2)
Les corpus classiques n’incluent pas le lemme parmi les
informations lexicales
Brown (1981) : 4 lemmes, 119 étiquettes, presque sans mots
composés
Penn (1993) : 1 lemme, 36 étiquettes, presque sans mots composés
Les lexiques inclus dans Unitex sont beaucoup plus informatifs :
DELAF (1990) : 170 000 lemmes, 950 000 étiquettes, réductibles à
1 000 sans perte d’information
Corpus arboré du français (2003) : comparable aux lexiques
d'Unitex (même origine : LADL)
Jeux d’étiquettes lexicales (2/2)
950 000 étiquettes réductibles à 1 000 sans perte d’information
Forme fléchie
médiatrice
Etiquette
médiateur.N:fs
On suppose la forme fléchie connue et on simplifie l'étiquette
Forme fléchie
médiatrice
Etiquette
4eur.N:fs
Le nombre d'étiquettes différentes diminue sans perte d'information
Lexiques pour le traitement des langues
Lexiques
pour le traitement des langues (1/2)
Les informations lexicales ne sont pas prévisibles à partir de la forme
des mots :
mouvement, nom
brièvement, adverbe
tendre, verbe
tendre, adjectif
Les lexiques électroniques recensent les mots et les étiquettes
correspondantes
Une entrée lexicale est l’association d’une forme et des
informations lexicales correspondantes
La construction des lexiques électroniques est-elle automatisable ?
Lexiques
pour le traitement des langues (2/2)
Nombre d’entrées dans les dictionnaires DELA
90 000 entrées de lemmes simples (680 000 entrées fléchies simples)
Mémoire occupée : 21 Mo
Forme comprimée avec accès rapide adaptée au traitement direct :
1,8 Mo (automate minimal, 100 000 états, 230 000 transitions)
270 000 entrées fléchies composées
Mémoire occupée : 13 Mo
Forme comprimée avec consultation rapide : 7,2 Mo (automate
minimal, 840 000 états, 1 080 000 transitions)
Simplifications
Dans un domaine très restreint,
- le vocabulaire est limité ;
- il y a moins d’ambiguïtés : dans le domaine des ponts suspendus, on
conserve tendre, verbe, mais pas tendre, adjectif ;
- certaines expressions peuvent être considérées comme figées : dans
les bulletins météo, alternance de passages nuageux et d’éclaircies
donc on a moins besoin d'informations lexicales sur les mots qui en
font partie
Ambiguïtés (1/2)
Les informations lexicales permettent de représenter formellement
les ambiguïtés
Ambiguïtés lexicales et lemmes
la porte droite du bâtiment
lemme : droit
La droite a voté contre cette loi lemme : droite
Ambiguïtés lexicales et traits
Le moteur sert à tendre le câble cat. gramm. : verbe
Luc se croit tendre avec Marie cat. gramm. : adjectif
cf. Ambiguïtés typographiques
Je ne sais pas. Je l’ai en C. Paul aussi
<.F>
<.F>
<.A>
Ambiguïtés (2/2)
Ambiguïtés lexicales et constructions syntaxiques
La branche pousse dans la gouttière
construction : N0 pousse dans N1
L'échelle pousse sur la gouttière
construction : N0 pousse sur N1
Les branches poussent les tuiles dans la gouttière
construction : N0 pousse N1 dans N2
Ambiguïtés lexicales et sens
La branche pousse dans la gouttière
sens : croissance
L'échelle pousse sur la gouttière
sens : pression
Les branches poussent les tuiles dans la gouttière
sens : mouvement
Consultation d’un lexique sur un texte
Les informations lexicales trouvées dans le lexique sont incluses
dans la représentation du texte
En cas d’ambiguïtés, toutes les hypothèses peuvent être
représentées
La résolution des ambiguïtés est-elle automatisable ?
Unitex :
- pré-traitement
- application des ressources lexicales (par la fenêtre du prétraitement, ou par le menu Text)
- pour visualiser les entrées trouvées dans le lexique : Word Lists
- pour engendrer les automates des phrases : menu Text,
Construct FST-Text
Structures de traits
Les informations lexicales peuvent être codées sous forme d’une
structure de traits (norme en construction)
Elément <fs> (feature structure) : un ensemble de traits
Elément <f> (feature) : un trait avec un nom et une valeur
La valeur peut être un <str> (chaîne de caractères), un <fs>, un
<sym>, <plus>, <minus>...
La norme en construction prévoit un format long et un format
compact
Structures de traits : format long
<fs>
<f name='lemma'>
<str>passager</str>
</f>
<f name='gramGrp'>
<fs>
<f name='part of speech'><sym>adjective</sym></f>
<f name='gender'><sym>feminine</sym></f>
<f name='number'><sym>singular</sym></f>
</fs>
</f>
</fs>
Structures de traits : format compact
<fs>
<f name='lemma'>
<str>passager</str>
</f>
<f name='gramGrp'>
<fs feats='pos@A gen@f num@s'/>
</f>
</fs>
Déclaration :
<fLib>
<f id='pos@A' name='part of speech'>
<sym>adjective</sym></f>
<f id='gen@f ' name='gender'><sym>feminine</sym></f>
<f id='num@s' name='number'><sym>singular</sym></f>
</fLib>
Structures de traits et format DELA
Avantages du format XML des structures de traits
On peut deviner le sens des informations sans connaître les
conventions
La structure est utilisable par les logiciels qui manipulent les
étiquettes lexicales
Avantages du format DELA
Compact
Permet de visualiser sur un même écran plusieurs dizaines de mots
ou entrées
Convient pour éditer et mettre à jour les données
Recherche de formes
Recherche de formes
La recherche de formes dans un texte sert à la recherche
d'informations (indexation de documents, extraction
d'informations)
C'est aussi l'opération de base de l'analyse syntaxique
Applications
traduction automatique
correction orthographique
synthèse vocale
Dans certaines langues
découpage en mots
Critères de succès
Rappel et précision
Recherche de formes
pour découpage en mots
En espagnol
Es la mejor forma de comprobarlo
"C'est la meilleure façon de le prouver"
comprobar
"prouver"
(des milliers de verbes)
lo
"le"
(une dizaine de pronoms)
Lo comprobó
"Il l'a prouvé"
Les traitements sont simplifiés si on considère comprobarlo comme
une combinaisons de deux mots, plutôt qu'un mot
... sauf au moment de découper le texte en mots
En arabe standard
wara'isuhu
"et son président"
wa
"et"
ra'isu
"président"
hu
"son"
Recherche de formes
pour découpage en mots
En chinois mandarin
Pas d'espaces entre les mots
En coréen
manasiôs'takojocha
"même (...) qu'(il l')a rencontrée"
mana
"rencontrer"
si
ôs'
ta
ko
(honor) (passé) (déclar) "que"
jocha
"même"
Informations lexicales
et recherche de formes
Une fois les lexiques appliqués à un texte, les informations incluses
dans le texte peuvent être exploitées pour rechercher des formes
linguistiques dans le texte (Unitex)
Masques lexicaux
Expressions qui reconnaissent des mots en fonction de propriétés
lexicales
- lemme : <droit> reconnaît droit, droits, droite, droites
- catégorie grammaticale : <V> reconnaît n’importe quel verbe
(utiliser les conventions des lexiques consultés)
- autres traits présents dans le lexique : <N:s> reconnaît n’importe
quel substantif singulier
- combinaisons de ces informations : <pouvoir.N> reconnaît
seulement pouvoir et pouvoirs
- autres masques lexicaux : <MOT>, <PRE>, <MAJ>... (v. manuel)
- forme fléchie : droit
Concordances lemmatisées
Une concordance réalisée avec un lemme (ex. <droit>) est une
concordance lemmatisée
Avec consultation de lexique (Unitex)
- peut produire une concordance de n’importe quel texte disponible
dans un format électronique
- il existe des dictionnaires disponibles avec des informations
lexicales fines (facteur de précision)
Avec corpus lemmatisé
les ambiguïtés lexicales sont levées (facteur de précision)
Téléchargement