Analyse distributionnelle automatique
Didier Bourigault
Equipe de Recherche en Syntaxe et Sémantique
CNRS – Université Toulouse Le Mirail
www.univ-tlse2.fr/erss/
D. BOURIGAULT Analyse distributionnelle 2
Zellig S. Harris et les sous-langages
Harris (1988, 1990, 1991)
Construction du sens Pas de sens a priori :
« There is no usable classification and strucure of meaning per se, such as we could assign the words of a given language to an a priory organization of meaning. » (Harris, 1988, p. 62) Exemple : les verbes multiply et divide
Le sens est analysable en étudiant les relations de dépendance qu’un mot a avec ses opérateurs et/ou opérandes dans un corpus
Mais les restrictions de sélection qu’un opérateur donné impose à ses arguments : sont relativement floues en langue générale (« language as a whole ») ont des limites très tranchées dans les sous-langages (« sublanguages »)
sublanguage : « language used by a particular community of speakers, say, those concerned with a particular subject matter or those engaged in a specialized occupation » (Sager, 1986, p. 2)
D. BOURIGAULT Analyse distributionnelle 3
Opposition langue générale / sous-langage : exemple
les sujets de montrer
Corpus « langue générale » : 10 années du journal Le Monde sous-language : Comptes rendus de réanimation chirurgicale (anatomie
pathologique)
les objets de montrer
étudeenquêtesondageexpériencefilmrésultatimage…
LGexemplelimitesigneimagevoievolontévisage…
LG
scanner cérébralradiographiebilanéchographie cardiaqueECGdopplerfibroscopie…
SLépanchementhématomepersistanceabsencecontusionprésencefracture…
SL
examen MONTRER problème
D. BOURIGAULT Analyse distributionnelle 4
Méthodologie harrissienne
Adaptation des méthodes de linguistique descriptive utilisées pour la découverte d’une grammaire d’une langue
4 étapes :1. Analyse syntaxique
manuelle (Harris), automatique (Sager)
2. Régularisation (normalisation) syntaxique
ex. : passif actif
3. Interrogation d’un expert
classes sémantiques de base
4. Mise au jour des classes et schémas caractéristiques du sous-langage
par analyse des régularités opérateurs/arguments (ex. : verbe/objet)
D. BOURIGAULT Analyse distributionnelle 5
TALN : analyse distributionnelle automatique
Depuis le début des années 90 :(Hindle, 1990) (Greffenstete,1994) (Lin, 1998) (Habert et al.)
Principe : « à partir d’un corpus analysé syntaxiquement, rapprocher des couples
d’unités que l’on retrouve dans des contextes syntaxiques identiques »
Pour mettre au jour les classes sémantiques d’un domaine terminologies, base de connaissances, ontologies
[ plaie , cicatrice ]modifiés par les adjectifs :
médianepropresternalutérineabdominaledroite
[ scanner , radiographie ]sujet des verbes :
confirmermontrerobjectiverrévélerretrouver
D. BOURIGAULT Analyse distributionnelle 6
A l’ERSS…
Analyseur syntaxique Syntex Analyse en dépendance Français, anglais
Analyseur distributionnel Upery1. Extraction de couples Prédicats/Arguments
2. Calcul de proximités distributionnelles entre prédicats et entre arguments
3. Construction de classes de prédicats et d’arguments (doubles cliques)
La chaîne d’analyse Syntex + Upery est utilisée De façon opérationnelle, sur des corpus spécialisés, pour la construction de
terminologies De façon exploratoire, sur des corpus de « langue générale » de très
grande taille, pour des recherches en sémantique lexicale (thèse E. Galy)
D. BOURIGAULT Analyse distributionnelle 7
Extraction de couples (prédicat, argument)
De l’analyse syntaxique en dépendance (Syntex) à la construction de couples (prédicat, argument) Un triplet syntaxique (recteur , relation , régi) … fournit un couple (prédicat , argument) = (recteur_relation , régi)
Le scanner montre une lésion nodulaire.
suj modobj
( montrer_suj , scanner)( montrer_obj , lésion )( lésion_mod , nodulaire)
recteur régi
rel
(recteur_rel , régi)
AS
AD
D. BOURIGAULT Analyse distributionnelle 8
L’analyse distributionnelle est duale : distinction prédicat / argument
Rapprocher des prédicats qui partagent les mêmes arguments ET rapprocher des arguments qui partagent les mêmes prédicats
Exemples (corpus médical)
[ montrer_suj , retrouver_suj ]
radiographiedopplerbilanscannerécographie
Rapprochement de prédicats Rapprochement d’arguments
[ scanner, échographie ]
effectuer_sujmontrer_sujpratiquer_objréaliser_obj
D. BOURIGAULT Analyse distributionnelle 9
1. Extraction des couples (prédicat, argument)
Cas standard : Une relation de dépendance syntaxique fournit un couple :
Le scanner montre une lésion nodulaire.
suj modobj
( montrer_suj , scanner)( montrer_obj , lésion )( lésion_mod , nodulaire)
D. BOURIGAULT Analyse distributionnelle 10
1. Extraction des couples (prédicat, argument)
Traitement des prépositions : 2 relations syntaxiques : 1 couple
elle est associée à une pneumoconiose.
( associer_à , pneumoconiose)
Un traitement par adriamycine
( traitement_par , adriamycine)
D. BOURIGAULT Analyse distributionnelle 11
1. Extraction des couples (prédicat, argument)
Traitement du passif : rétablissement de la construction active
Le diagnostic est confirmé par le scanner.
( confirmer_obj , diagnostic )( confirmer_suj , scanner )
D. BOURIGAULT Analyse distributionnelle 12
1. Extraction des couples (prédicat, argument)
Traitement de la coordination : distribution
On a réalisé un scanner et une échographie
( réaliser_obj , scanner )( réaliser_obj , échographie )
D. BOURIGAULT Analyse distributionnelle 13
1. Extraction des couples (prédicat, argument)
Structure à contrôle V + VINF : aller, venir, savoir, pouvoir, devoir, vouloir, croire, aimer,
compter, daigner, désirer, espérer, etc. V + à + VINF : arriver, chercher, commencer, consentir, continuer,
hésiter, , etc.
L’ échographie va peut-être le confirmer
( confirmer_suj , échographie )
La tension commence à diminuer
( diminuer_suj , tension )
D. BOURIGAULT Analyse distributionnelle 14
1. Extraction des couples (prédicat, argument)
Prise en compte de syntagmes nominaux arguments
Le scanner montre une lésion nodulaire.
( montrer_suj , scanner)( montrer_obj , lésion )( montrer_obj , lésion nodulaire )( lésion_mod , nodulaire)
D. BOURIGAULT Analyse distributionnelle 15
2. Calcul des proximités distributionnelles : Jaccard
Productivité d’un prédicat : nombre d’arguments différents avec lesquels on le trouve d’un argument : nombre de prédicats différents avec lesquels on le
trouve
JaccardSoit p1 et p2 deux prédicats
Soit n1 la productivité de p1 et n2 la productivité de p2
Soit a le nombre d’arguments partagés par p1 et p2
aproxjacc (p1,p2)= n1 + n2 - a
D. BOURIGAULT Analyse distributionnelle 16
2. Calcul des proximités distributionnelles : exemple
Exemple
abdominalcérébralcervicalhélicoïdalhépatiquenégatifspiraléthoracique
scanner_mod
productivité = 8
abdominalhépatiquenormalthoracique
échographie_mod
productivité = 4
nb d’arguments en commun = 3
3proxjacc = = 0.33 8 + 4 - 3
D. BOURIGAULT Analyse distributionnelle 17
3. Calcul des doubles cliques : principe
Double clique : un ensemble de prédicats et un ensemble d’arguments tels que (presque) tous les prédicats se trouvent avec (presque) tous les arguments.
Exemple :
abdominal
cérébral
cervical
hélicoïdal
hépatique
négatif
échographie_mod
radiographie_mod
scanner_mod
Prédicats Arguments
: couples ABSENTS
16 couples présents sur18 couples possibles (3x6)
D. BOURIGAULT Analyse distributionnelle 18
3. Calcul des doubles cliques : cohésion
Définition de la cohésion d’une double clique à partir de la notion de proximité entre prédicats et entre argumentsSoit P = l’ensemble des prédicats de la DC. On définit aP comme l’argument
fictif qui a pour prédicats l’ensemble P
Soit A = l’ensemble des arguments de la DC. On définit pA comme le prédicat fictif qui a pour arguments l’ensemble A
Pour chaque prédicat p de P, on calcule la proximité entre p et le prédicat pA
Pour chaque argument a de A, on calcule la proximité entre a et l’argument aP
La cohésion de la double clique est calculée comme la moyenne de ces proximités
p Є P prox (p, pA) + a Є A prox (a,aP)
NP + NA NP = card(P)NA = card(A)
cohésion(P,A) =
D. BOURIGAULT Analyse distributionnelle 19
3. Calcul des doubles cliques : cohésion
abdominal cérébral cervicalhélicoïdalhépatique négatif
échographie_modradiographie_modscanner_mod
aP
Soit la double clique :P = {échographie_mod, radiographie_mod, scanner_mod}A = {abdominal, cérébral, cervical, hélicoïdal, hépatique, négatif}
pA
abdominalcérébralcervicalhélicoïdalhépatiquenégatifspiraléthoracique
scanner_mod
proxjacc = 6 / ( 8 + 6 - 6 ) = 0.75
affection_moddouleur-_modexamen_modéchographie_modexpansion_modmasse_modmouvement_modrespiration_modscanner_mod
abdominal
Idem avec les autres prédicats de P Idem avec les autres arguments de A
proxjacc = 2 / ( 9 + 3 - 2 ) = 0.20
puis calcul de la moyenne des proximités
D. BOURIGAULT Analyse distributionnelle 20
3. Calcul des doubles cliques : algorithme
Descente de gradient sur la cohésion
A partir des prédicats Initialisation : soit p un prédicat,
on construit la double clique DC0 telle que : A est constitué de l’ensemble des arguments de p P est constitué du prédicat p et du prédicat le plus proche de pA.
Itération : pour passer DCi à DCi+1, Effectuer la meilleure des 4 actions possibles :
ôter de P le « moins bon » prédicat (prox avec pA la plus faible)
ôter de A le « moins bon » argument (prox avec aP la plus faible)
intégrer à P le « meilleur » prédicat (prox avec pA la plus forte)
intégrer à A le « meilleur » argument (prox avec aP la plus forte)
Arrêter quand on ne peut plus augmenter la cohésion
Idem à partir des arguments
Fusion des doubles cliques « proches »
D. BOURIGAULT Analyse distributionnelle 21
Analyse distributionnelle de corpus de langue générale de grande taille
« langue générale » ?
2 gros corpus : LM10 :
10 années du journal Le monde (1991-2000) 200 millions de mots Vendu par l’agence ELA, nettoyé et balisé par B. Habert
Frantext 20e 515 romans 30 millions de mots Founri par l’ATILF
Résultats quantitatifs : la masse ! LM10 : 6 183 862 couples de mots rapprochés Frantext20 : 792 354 couples de mots rapprochés
D. BOURIGAULT Analyse distributionnelle 22
D. BOURIGAULT Analyse distributionnelle 23
D. BOURIGAULT Analyse distributionnelle 24
D. BOURIGAULT Analyse distributionnelle 25
D. BOURIGAULT Analyse distributionnelle 26
D. BOURIGAULT Analyse distributionnelle 27
D. BOURIGAULT Analyse distributionnelle 28