Représentation informatique de grammaires fortement lexicalisées Application à la grammaire d’arbres adjoints Institut Gaspard Monge Benoit Crabbé Lattice — Université Paris 7 Représentation de grammaires fortement lexicalisées 1 Prégénérique Implémentation de grammaires électroniques de taille importante pour le langage naturel Grammaires motivées linguistiquement On focalise sur l’implémentation de grammaires d’arbres adjoints augmentées d’une composante sémantique On donne un langage et une méthodologie qui permettent de faciliter l’implémentation effective de grammaires de ce type Le langage et la méthodologie sont validés par l’implémentation d’une grammaire de compétence couvrant un fragment important du français Représentation de grammaires fortement lexicalisées 2 Plan Introduction Désidératas et motivations Partage de structure/Alternatives Un langage de représentation Langage de contrôle/Langage de description arborescentes Méthodologie Langage ! Partage de structure / alternatives Comparaisons Métarègles ∼ Candito ∼ Xia Validation : Implantation d’une grammaire/évaluation Conclusion Représentation de grammaires fortement lexicalisées 3 The big picture Problème général : implémentation de formalismes d’analyse syntaxiques de haut niveau (grammaire de compétence) Formalisme de bas niveau : bonnes propriétés formelles et informatiques mais expressivité réduite : Exemples : C FG , D CG , TAG . . . Formalisme de haut niveau : propriétés formelles et informatiques moins bonnes (moins bien connues) mais grand pouvoir d’expressivité Exemples : PATR II, A NLT (G PSG ), T DL (H PSG ), métagrammaire . . . Idée : compilation (=traduction) automatique du langage de haut niveau dans le langage de bas niveau. Représentation de grammaires fortement lexicalisées 4 Exemple classique (G PSG /A NLT) Implémentation A NLT de (Carroll 93) Langage de bas niveau = grammaire CF + unification à traits atomiques dont les symboles sont codés sur des entiers Langage de haut niveau = A NLT, permet par exemple d’exprimer : Propagation de traits de tête, de traits de valence, de slash (dépendances à longue distance) Métarègles (alternances actif/passif) Le parsing pour le langage de bas niveau s’implémente avec un algorithme classique Les propriétés informatiques du langage de haut niveau sont mauvaises (indécidable, métarègles = machine de Turing) Représentation de grammaires fortement lexicalisées 5 Le cas du travail : TAG et grammaires d’arbres lexicalisées Pour l’analyse syntaxique des langues naturelles, TAG est utilisé dans sa version lexicalisée (LTAG) Résultat formel : (Joshi et Schabès 97) et Joshi (2005) démontrent que LTAG lexicalise fortement une grammaire hors contexte grace à l’adjonction. LTAG = combiner des arbres élémentaires dotés d’une ancre lexicale par substitution et adjonction S S S S N↓ V V mange V! Adv trop = N↓ N↓ V V Adv mangetrop N Jean N V V Adv mangetrop = V Jean V Adv mangetrop Représentation de grammaires fortement lexicalisées 6 LTAG comme formalisme de bas niveau Formellement, une grammaire LTAG c’est une grammaire de bas niveau doté de propriétés formelles intéressantes (lexicalisation) et pour lequel on dispose d’algorithmes de parsing efficaces. En pratique pour l’implémentation de grammaires c’est insuffisant : Une grammaire TAG est constituée d’un ensemble conséquent d’unités élémentaires disparates (arbres élémentaires) : Manque d’expressivité : Impossibilité de capturer des généralisations → redondance descriptive et maintenance Représentation de grammaires fortement lexicalisées 7 Quelques arbres associés au verbe manger (a) S N ↓ V N↓ mange Jean mange des biscuits S N↓ V N↓ (b) mangent Les enfants mangent des biscuits S N↓ V’ PP (c) V↓ V P N↓ mangéspar Les biscuits sont mangés par les enfants S N↓ V’ (d) Cl↓ V mangés Les enfants les ont mangés S (a) représente un contexte canonique (b) représente un contexte pluriel (c) représente un contexte passivisé (d) représente un contexte à argument clitique (e) représente un contexte passivisé avec argument interrogé S PP P N↓ N↓ V’ (e) par V↓ V mangés Par quels enfants les biscuits sont-ils mangés ? Représentation de grammaires fortement lexicalisées 8 Implémentations et schémas d’arbres En pratique les implémentations (X TAG) distinguent schèmes / lexique Première étape de factorisation qui permet de gérer les variantes morphologiques (typiquement traitées par un tokenizer, tagger) Les arbres élémentaires sont créés à la volée par l’analyseur syntaxique Un lemme donné est associé à une famille d’arbres S N↓ V" N↓ S N↓ V N↓ mange S N↓ V’ V↓ V" ⇓ S N↓ V N↓ mangent PP P N↓ par + M ANGER S N↓ V’ PP V↓ V P N↓ mangéspar Représentation de grammaires fortement lexicalisées 9 Nécessité d’un langage de haut niveau Dans les implantations, une grammaire TAG c’est un ensemble de schémas La morphologie est prétraitée (prétraitement classique), on ne s’en soucie pas (vs approches et langages théoriques). Dans une grammaire réaliste, le nombre de schémas est très élevé (milliers, dizaines de milliers) Pour des raisons de maintenance et de facilité d’écriture de la grammaire (redondance), on souhaite un mécanisme qui permette de réutiliser des informations générales exprimées de manière factorisée pour produire les schémas automatiquement (= métagrammaire) Représentation de grammaires fortement lexicalisées 10 Plan Introduction Désidératas et motivations Partage de structure/Alternatives Un langage de représentation Langage de contrôle/Langage de description arborescentes Méthodologie Langage ! Partage de structure / alternatives Comparaisons Métarègles ∼ Candito ∼ Xia Validation : Implantation d’une grammaire/évaluation Conclusion Représentation de grammaires fortement lexicalisées 11 Partage de structure et alternatives On trouve dans les formalismes syntaxiques postgénératifs deux axes de représentation Un axe représentant le partage de structure Exemple : un verbe transitif comme un verbe verbe intransitif partagent l’information qu’il sont des verbes Un axe représentant les alternatives : Exemple : un verbe au passif est une variante de verbe à l’actif Formalisation Le partage de structure se formalise classiquement par une hiérarchie d’héritage Les alternatives se formalisent par des métarègles (G PSG) ou par des règles lexicales. Représentation de grammaires fortement lexicalisées 12 Exemple : métarègles TAG (Becker 93) (Partage de structure) Factorisation d’arbres de base dans une hiérarchie d’héritage (Alternatives) Définit des métarègles (≈ transformations précompilées à localité réduite) qui produisent des arbres dérivés (procédural et indécidable) S S N↓ 0 V N↓ 1 −→ N↓ 1 V PP V"mode=ppart V être LR-PASSIVE P N↓ 0 par S S V N↓ −→ Cl↓ LR-C LITIC (O BJ ) V V Représentation de grammaires fortement lexicalisées 13 Plan Introduction Désidératas et motivations Partage de structure/Alternatives Un langage de représentation Langage de contrôle/Langage de description arborescentes Méthodologie Langage ! Partage de structure / alternatives Comparaisons Métarègles ∼ Candito ∼ Xia Validation : Implantation d’une grammaire/évaluation Conclusion Représentation de grammaires fortement lexicalisées 14 XMG : idées centrales XMG est un langage de représentation grammatical Qui permet de représenter Le partage de structure Les alternatives Motivations Problèmes pratiques d’ordonnancement de règles lexicales Problèmes formels liés aux règles lexicales (boucles) Declaratif et monotone Formellement : Deux langages sont combinés : Un langage de contrôle qui s’interprète comme un programme logique Un langage de description d’arbres qui s’interprète par un problème de satisfaction de contraintes Représentation de grammaires fortement lexicalisées 15 Partage de structure Partage de structure : S N↓ V& N↓ N N* S N↓ Jean mange des biscuits S N↓ V& Les biscuits que Jean mange On souhaite identifier et réutiliser des fragments arborescents partagés par de nombreux arbres de la grammaire (sujet canonique) Représentation de grammaires fortement lexicalisées 16 Alternatives Alternatives : S N↓ V& N↓ arbre pour l’actif S N↓ V’ PP V↓ V& P N↓ par arbre de passif (par) Les alternatives ont un statut particulier : Contribuent à décrire des ensembles d’arbres mis en relation (≈ partagent une sémantique commune) Exemple : Une famille TAG est un ensemble d’arbres décrivant des réalisations alternatives d’un même cadre de sous-catégorisation. Représentation de grammaires fortement lexicalisées 17 Le langage de contrôle Permet de nommer des descriptions grammaticales S (1)a. SujetCanonique → N↓ V N N* b. SujetRelativé → S N↓ V S c. FormeActive → V& Une description nommée (ou classe) peut être réutilisée par ailleurs (de manière analogue à une macro) Représentation de grammaires fortement lexicalisées 18 Combiner les descriptions Disjonction (choix) de descriptions (2) Sujet → SujetCanonique ∨ SujetRelativé Un sujet est soit un sujet canonique soit un sujet relativé. La disjonction est un choix (interpretation indéterministe) Conjonction de descriptions (3) VerbeIntransitif → Sujet ∧ FormeActive Une conjonction de descriptions est interprétée comme la conjonction syntaxique de deux descriptions arborescentes où les noms des noeuds sont renommés Représentation de grammaires fortement lexicalisées 19 Interpretation par l’exemple Evaluation de la classe VerbeIntransitif : S N↓ V Le garçon. . . ∧ S V& dort N N* S N↓ V (Le garçon) qui. . . ∧ S N↓ V& ! Le garçon dort S V& dort N ! N* S N↓ V& Le garçon qui dort Représentation de grammaires fortement lexicalisées 20 Formellement : programme logique Syntaxe abstraite du langage de contrôle : But ::= Clause ::= But ∨ But | N om → But ∧ But But | φ | N om Une description grammaticale est interprétée comme une grammaire de réécriture où : Les descriptions arborescentes jouent le rôle des terminaux La composition (∧) joue le rôle de la concaténation de langages Les règles récursives sont interdites Etant donné un axiome, l’interprète de la description grammaticale génère l’ensemble des arbres correspondant au langage engendré par cette grammaire Représentation de grammaires fortement lexicalisées 21 Langage de description d’arbres On répond ici à 2 questions : que sont ces fragments ? comment sont-ils combinés ? = Langage “classique” de descriptions d’arbres Particularité (vs Candito 99, Xia 01) : lors de la composition (∧) de deux descriptions, les noeuds sont renommés ! permet de réutiliser plusieurs fois la même classe pour engendrer un arbre donné Le langage classique est augmenté de principes qui permettent de garantir la bonne formation des arbres engendrés en suivant des critères linguistiques Représentation de grammaires fortement lexicalisées 22 Le Langage de base Le langage de descriptions d’arbres comprend les relations de dominance réflexive et transitive, de dominance immédiate, de précédence et d’adjacence Les noeuds sont étiquetés par des catégories (complexes) Notation : (D0) y ≺+ z ∧ z ≺ w ∧ x "∗ y ∧ x " y ∧ x " w ∧ x : X ∧ y : Y ∧ z : Z ∧ w : W X est noté (D0) Y ≺+ Z W Une formule du langage est interprétée par un modèle (arbre fini) minimal Représentation de grammaires fortement lexicalisées 23 Modèle minimal Étant donné une formule, on cherche la classe de modèles (= arbres finis ordonnés linéairement) qui satisfont la formule. On a une infinité de modèles qui satisfont une formule donnée Modèle minimal Minimise le nombre de noeuds Minimise la dominance linéaire Exemple : a " b ∧ a "∗ c (1) a≈c b a (2) a a a (3) b≈c a (4) b b c (5) (6) b b c c x x c Représentation de grammaires fortement lexicalisées 24 Questions de nommage Une classe de la métagrammaire définit un espace de nom qui lui est propre Lorsqu’on combine deux descriptions on renomme tout Exemple : Deux descriptions dont les noms sont anonymisés : X W Z X ∧ Z Y Ca donne (avec unicité de la racine, unification des catégories) : X (a) W Z Y X (b) W Z Z Y (b) est indésirable Représentation de grammaires fortement lexicalisées 25 Préserver les noms ? Préserver les noms et imposer leur identification ? = Solution de (Candito, Xia) Xa Wb Zc Xa Zc Yd Problème : nommage global et collisions de noms On perd largement les bénéfices de la factorisation Collisions de noms délicates lorsqu’on utilise plusieurs fois la même classe On résout le problème en introduisant des contraintes additionelles sur les structures décrites par le langage de description Représentation de grammaires fortement lexicalisées 26 Contraintes additionelles Pour des raisons formelles aussi bien que pratiques le langage de base est insuffisant On permet de le paramétrer avec des contraintes supplémentaires, c’està-dire : Un ensemble de propriétés unaires additionelles associées aux noeuds Une contrainte tire parti de ces propriétés pour contraindre davantage l’admissibilité des modèles engendrés Exemples : Contraintes de coloration, d’unicité d’argument extrait, d’ordonnancement des clitiques, ilôts-wh. Représentation de grammaires fortement lexicalisées 27 Contrainte de coloration (Objectif) Inspiré des systèmes à polarités (ex. Grammaire d’interactions) Introduction d’un schéma de combinaison : Chaque noeud de la description est associé à une propriété, une couleur (blanc, noir, rouge) Contrainte : chaque noeud d’un modèle résultant est colorié soit en noir soit en rouge. Quand deux noeuds sont fusionnés, les couleurs sont mélangées comme suit : •B •R ◦W •B ⊥ ⊥ •B •R ⊥ ⊥ ⊥ ◦W •B ⊥ ◦W Le rouge représente la saturation totale, le noir la saturation partielle (combinaison optionelle) et le blanc la non saturation Représentation de grammaires fortement lexicalisées 28 Contrainte de coloration (suite) Exemple : X•B X◦W W• R Z• B Z◦ W Y•R Autres solutions possibles (Allemand, Coréen ?) : quelques noms globaux + un nom anonyme (rouge) à investiguer Le problème de nommage est très difficile. contradiction : On repose sur une (Enjeu expressif) TAG définit un domaine de localité (= portée des noms) étendu, on veut pouvoir accéder à tout noeud d’un arbre (Enjeu pratique) D’autre part on souhaite localiser les noms dans les classes (principe de base en informatique) Représentation de grammaires fortement lexicalisées 29 Contrainte d’ordonnancement des clitiques Rang des clitiques = propriétés unaires Contraintes = ordre linéaire défini sur le rang S S N↓ ≺ + ∧ V’ V’ Cl↓3 ≺+ V S |= N↓ V’ ∧ Cl↓4 ≺+ V’ V ∧ V" S V’ Cl↓3 Cl↓4 V" N↓ V’ Cl↓4 Cl↓3 V" Représentation de grammaires fortement lexicalisées 30 Unicité de l’argument extrait Les extractions multiples sont peu communes en français * A quelle fille Quels biscuits Jean donne ? On utilise un principe d’unicité : Propriété attachée au noeud : E Contrainte : Un modèle ne peut comprendre plus d’un seul noeud marqué de cette propriété S S N↓ V Jean. . . S ∧ N↓E S V . . . quels biscuits. . . ∧ PP S PN↓E à . . . à quelle fille . . . ∧ S V" donne ! Représentation de grammaires fortement lexicalisées ⊥ 31 Classification de Contraintes Mes contraintes viennent en droite ligne des contraintes LFG/GPSG (Kaplan, Gazdar,Pullum) Classification (inspirée de G.K. Pullum) : Contraintes formelles = structures sur lesquelles on travaille (ici arbres) Contrainte opérationelle (nommage) : coloration Contraintes universelles (≈ principes) : ex. complétude/unicité en LFG, (Frank 02) pour TAG. . . absent de la métagrammaire Contraintes spécifiques au langage (≈ paramètres) : ex. ordonnancement des clitiques, extraction, etc. L’implantation est conçue pour permettre l’ajout de nouvelles contraintes (de façon programmatique). Hence X MG Idée semblable à X DG (Debussman et. al) : ici on applique les contraintes offline Représentation de grammaires fortement lexicalisées 32 Plan Introduction Désidératas et motivations Partage de structure/Alternatives Un langage de représentation Langage de contrôle/Langage de description arborescentes Méthodologie Langage ! Partage de structure / alternatives Comparaisons Métarègles Validation : Implantation d’une grammaire/évaluation Conclusion Représentation de grammaires fortement lexicalisées 33 Méthodologie (introduction) On montre que le langage de description grammaticale permet de réutiliser largement la méthodologie de (Candito 99, Xia 01) pour décrire une grammaire du français On fonctionne en quatre étapes : Description et organisation fragments d’arbres Expression d’alternatives fonctionelles Expression d’alternatives de diathèse Description de familles d’arbres Représentation de grammaires fortement lexicalisées 34 Fragment d’arbres (blocs de construction) Chaque fragment d’arbre est associé à un nom qui permet de le réutiliser par après N S N* SujCanon → N↓ V SujetRel → S ObjCanon → V N↓ ObjWh → S N↓ S V S V ObjIndCanon → PP P N↓ à S PP S P N↓ à ObjIndWh → S V ObjParCanon → FormeActive → S V" PP P N↓ par S N↓ V S ObjParWh → PP S P N↓ par FormePassive → S V V↓ V" Représentation de grammaires fortement lexicalisées 35 Organisation des fragments en une hiérarchie d’héritage Exemple : ObjIndCanon → PPCanon ∧ φ φ est l’information supplémentaire qui représente la spécialisation ! On dit informellement que ObjIndCanon hérite de PPCanon ArgumentVerbal SujCanon CompltCanon ObjCanon PPCanon ObjWh Wh SujRel PPWh ObjIndCanonObjParCanon ObjIndWh ObjParWh En contexte d’héritage on utilise également un mécanisme supplémentaire qui permet à une sous-classe d’accéder aux noms déclarés dans les superclasses Représentation de grammaires fortement lexicalisées 36 Fonctions syntaxiques Fonctions sont vues comme des abstractions sur des realisations syntaxiques (4)a. Sujet → SujCanon ∨ SujRel b. Objet → ObjCanon ∨ ObjWh c. ObjetPar → ObjParCanon ∨ ObjParWh d. ObjetIndirect → ObjIndCanon ∨ ObjIndWh Par exemple, ObjetIndirect represente des alternatives telles que : (5)a. Jean parle à Marie b. A qui Jean parle-t-il ? (Objet indirect canonique) (Objet indirect wh) Représentation de grammaires fortement lexicalisées 37 Alternatives de diathèse Ici on traite les alternatives comme actif/passif. (6) AlternanceTransitive → (Sujet ∧ FormeActive ∧ Objet) ∨(Sujet ∧ FormePassive ∧ ObjetPar) Indique qu’à l’actif le premier argument est réalisé par un sujet Sujet et que le second comme un Objet alors qu’au passif le premier argument est réalisé par un ObjetPar et le second par un Sujet. Par exemple : (7)a. Jean envoie une lettre b. Une lettre est envoyée par Jean c. Par quelle personne la lettre est-elle envoyée ? Représentation de grammaires fortement lexicalisées 38 Familles TAG Finalement on peut représenter les familles TAG (8) FamilleDitransitive → AlternanceTransitive ∧ ObjetIndirect Une famille TAG représente l’ensemble des réalisations alternatives d’un cadre de sous-catégorisation donné. Autrement dit on rend compte de contextes du type : (9)a. Jean offre des fleurs à Marie b. A quelle fille Jean offre-t-il des fleurs ? c. Le garçon qui offre des fleurs à Marie d. Quelles fleurs le garçon offre-t-il à Marie ? e. Les fleurs sont offertes par Jean à Marie f. Par quel garçon les fleurs sont-elles offertes à Marie ? Représentation de grammaires fortement lexicalisées 39 Plan Introduction Désidératas et motivations Partage de structure/Alternatives Un langage de représentation Langage de contrôle/Langage de description arborescentes Méthodologie Langage ! Partage de structure / alternatives Comparaisons Métarègles ∼ Candito ∼ Xia Validation : Implantation d’une grammaire/évaluation Conclusion Représentation de grammaires fortement lexicalisées 40 Comparaisons (métarègles) Métarègles (Becker 93) Métagrammaire = déclaratif et pas de problèmes de terminaison Les fragments que l’on utilise dans la métagrammaire correspondent aux parties gauches et droites modifiées par les métarègles Les fragments sont factorisés entre eux dans la métagrammaire Possibilité de gérer les interactions de réalisation (ex. clitiques) dans la métagrammaire Représentation de grammaires fortement lexicalisées 41 Comparaison (métagrammaires) Métagrammaires (Candito 99, Xia 99) Langage et méthodologie monotones : Pas de distinction contexte de base/contexte dérivé Réutilisation des idées théoriques de la théorie du liage Pour grammaires à (au moins) deux dimensions Importance accrue de la notion d’alternative Distinction stricte système formel ∼ méthodologie Effort calculatoire réduit : Renommage de noeuds + couleurs ! réduit les problèmes de noms Alternatives sont plus faciles (directes) à exprimer Représentation de grammaires fortement lexicalisées 42 Plan Introduction Désidératas et motivations Partage de structure/Alternatives Un langage de représentation Langage de contrôle/Langage de description arborescentes Méthodologie Langage ! Partage de structure / alternatives Comparaisons Métarègles ∼ Candito ∼ Xia Validation : Implantation d’une grammaire/évaluation Conclusion Représentation de grammaires fortement lexicalisées 43 Validation et implémentations (DLP 04) ont implémenté un interprète concret pour le langage présenté Le langage de contrôle est implémenté comme un programme logique Les descriptions d’arbres sont traitées par un constructeur de modèles adapté de (DN 00) ! Réutilisation de techniques connues en programmation logique Implémenté en Mozart/Oz ! permet de bénéficier des optimisations de la bibliothèque ! Efficacité (rapidité) de la compilation Développement rendu plus facile : Rapidité de développement Plusieurs utilisateurs du système Représentation de grammaires fortement lexicalisées 44 Validation : Un fragment de grammaire du français Pour tester l’adéquation du langage, j’ai implémenté un fragment large de grammaire du français (TAG, d’après Candito 99, Abeillé 02) Aperçu de la couverture (Dépendants verbaux et adjectivaux) Constructions Fonctions syntaxiques Diathèse Sous-catégorisation Canonique, Clitique, Interrogative, Relative, Cliv Sujet, Objet, Objet Indirect, Genitif, Locatif, Obliq Sujet phrastique, Objets phrastiques, interrogativ Actif, Passif, Impersonnel, Moyen, Réflechi 46 cadres de sous-catégorisation Evaluation avec T SNLP (Lehmann 96) Réalisée avec l’analyseur L LP 2 (L ORIA) Items grammaticaux : accepte 76% Items aggramaticaux : rejette 83 % Ambiguité moyenne : 1.63 Représentation de grammaires fortement lexicalisées 45 Principales causes d’échecs Coordination Négation Incises Comparatif Causatif Inversion clitique à l’impératif Contrôle de l’objet Résiduelles : Différences de jugement sur la grammaticalité des phrases Phonologie trouvé-je Expressions idiomatiques Imperfections du lexique Représentation de grammaires fortement lexicalisées 46 Conclusion Proposition Un langage de représentation grammatical déclaratif et monotone : Langage de contrôle (composition, disjonction) Langage de description d’arbres (augmenté de principes) Méthodologie compatible avec Les perspectives théoriques en linguistique formelle Implémentation d’une dimension sémantique Perspectives Extension à d’autres formalismes (GI, XDG, LFG) done ! Implémentation effective d’une sémantique done ! Constitution de lexique almost done ! Optimisation des analyseurs (Clergerie 2005) ou Supertagging Quoi mettre dans une grammaire ? Benchmarking (couverture, “accuracy”, efficacité) Représentation de grammaires fortement lexicalisées 47