Avant-projet Atoll

previous up next contents
Précédent : Présentation générale et objectifs Remonter : avant-projet ATOLL, ATelier d'Outils Logiciels Suivant : Logiciels



Fondements scientifiques

 

Formalismes grammaticaux

Mots-clés : analyse syntaxique, Lambda-Prolog, langage naturel, linguistique, programmation dynamique, programmation logique, programmation par contraintes


Résumé : Les participants de cet axe s'intéressent à l'analyse syntaxique de différents formalismes grammaticaux servant au traitement de la langue naturelle. L'ensemble de ces formalismes forme un continuum très large pour lequel sont étudiées des techniques génériques d'analyse permettant de traiter au mieux l'ambiguïté inhérente à toute langue.

Programmation Dynamique: technique de construction d'algorithmes consistant à diviser un problème en sous-problèmes élémentaires dont les solutions sont tabulées pour pouvoir être réutilisées plusieurs fois si nécessaire.

Des langages de programmation aux grammaires linguistiques

Le passage des grammaires pour les langages de programmation vers des grammaires pour les traitements linguistiques se traduit avant tout par un saut en complexité et l'obligation de gérer les ambiguïtés du langage. Il est bien connu que les problèmes d'ambiguïté en linguistique sont source d'explosions combinatoires mal maîtrisées qui augmentent considérablement le coût des traitements. De plus, alors que la syntaxe des langages de programmation se définit par une (sous-classe d'une) grammaire non contextuelle (CFG), aucun formalisme de description de la syntaxe des langues naturelles n'a fait l'unanimité des linguistes. On assiste de ce fait à une éclosion régulière de nouveaux formalismes grammaticaux pour la linguistique. Par exemple, outre les CFG, nous avons les grandes catégories suivantes:

Formalismes faiblement dépendant du contexte
Ces formalismes qui regroupent entre autres les grammaires d'arbres adjoints [TAG] et linéaires indexées [LIG] possèdent une base structurelle qui assure l'existence d'évaluateurs travaillant en temps polynômial.
Grammaires de clauses définies
[DCG]. Elles combinent un squelette non contextuel (CF) avec une décoration par des attributs logiques et utilisent une unification à la Prolog pour calculer et propager ces attributs.
Grammaires à traits
Héritières de la catégorie précédente, elles s'appuient encore sur l'unification mais cette fois-ci sur des domaines de structures typées à traits [Car92]. Elles peuvent également utiliser des contraintes. Nous avons ainsi les ``Lexical Functional Grammars'' [LFG] et ``Head-Driven Phrasal Structure Grammars'' [HPSG].
Grammaires stochastiques
Pratiquement, toute grammaire peut être complétée avec des probabilités ou des pondérations, en vue de mieux coïncider avec l'usage de la langue telle que rencontrée sur un corpus. Ces probabilités peuvent se voir comme des décorations prises dans un demi-anneau, dont les propriétés algébriques sont exploitables au cours de l'analyse syntaxique (voir la section [*]).

Nous-mêmes participons à ce foisonnement de formalismes (voir la section  [*]).

De plus, les spécificités évoquées précédemment peuvent se combiner, par exemple en ajoutant des contraintes et des attributs logiques sur une grammaire d'arbres adjoints.

Cependant, malgré cette diversité, la plupart des formalismes grammaticaux linguistiques trouvent leur place dans ce qu'on peut appeler le ``continuum de Horn'', c'est-à-dire un ensemble de formalismes de complexité croissante, allant des clauses de Horn propositionnelles aux clauses de Horn du premier ordre (grosso-modo Prolog), et même au-delà.

Ce constat motive notre travail de développement de techniques générales d'analyse permettant de couvrir ce continuum, ceci au travers de deux approches complémentaires qui toutes les deux utilisent les techniques de la programmation dynamique afin de réduire l'explosion combinatoire due au traitement des ambiguïtés:

Approche multi-passe.
Elle consiste, lorsque c'est possible, à découper un traitement en une séquence dont les composants ont une complexité (pratique ou théorique) croissante.
Approche globale.
Elle repose essentiellement sur la description du formalisme grammatical à l'aide d'automates à piles logiques.

Ces deux approches ne s'opposent pas. Au contraire, chacune enrichit l'autre. L'examen de particularités mises en évidence par l'approche multi-passe permet des avancées théoriques ; réciproquement, des concepts théoriques bien compris et identifiés vont se traduire par un élargissement du champ d'action de l'approche multi-passe.

Approche multi-passe

  Si l'on regarde les langages de programmation, on constate que traditionnellement leur traitement est découpé en phases successives de complexité croissante: analyse lexicale, analyse syntaxique, traitement de la sémantique statique, ... Ce découpage se justifie à la fois par des raisons théoriques et pratiques. Les automates finis qui modélisent l'analyse lexicale n'ont pas la puissance formelle nécessaire pour décrire la partie syntaxique qui nécessite une description par une (sous-classe des) CFG. Les CFG elles-mêmes ne permettent pas de décrire les phénomènes contextuels de la sémantique statique. Outre une efficacité potentielle accrue (chaque phase est traitée avec le bon niveau de formalisme), ce découpage augmente la modularité du processus.

L'approche multi-passe du traitement des langues naturelles résulte d'une vision similaire. On essaie d'isoler dans les formalismes grammaticaux des parties de complexité moindre sur lesquelles le reste du traitement va pouvoir s'appuyer. En fait on constate que la plupart des formalismes du continuum de Horn sont structurés par une base CF forte. Ces grammaires peuvent donc être vues comme une CFG décorée par un système de contraintes. L'approche multi-passe consiste pour tous ces formalismes à utiliser un analyseur CF général (très performant) sur lequel est greffé le système de contraintes, particulier à chaque formalisme traité. Le traitement du squelette CF est confié au système SYNTAX. On trouvera en section [*] une étude sur la validité de cette approche et en section [*] des applications aux LIG et aux DCG.

En revanche cette approche multi-passe ne s'applique pas très bien lorsque la structure CF du formalisme est faible (par exemple Prolog) ou lorsque il y a une dépendance entre une phase ultérieure et une phase précédente (par exemple lorsque le traitement des contraintes conditionne l'analyse CF). Cependant, de tels formalismes ne sont pas exclus de notre champ d'investigation grâce à l'``approche globale'' décrite ci-après..

Approche globale

  Cette approche, qui se veut très générale, repose sur un formalisme abstrait d'automate à piles permettant de décrire diverses stratégies d'analyse pour divers formalismes grammaticaux à base logique [VdlC93]. Ces automates sont ensuites évalués à l'aide de techniques de programmation dynamique. La notion de pile se prête en effet bien à la division des calculs en sous-calculs élémentaires et réutilisables dans différents contextes: il suffit essentiellement d'oublier provisoirement l'information disponible dans le bas des piles. Ces sous-calculs élémentaires sont représentables sous forme compacte d'items.

Cette approche trouve ses origines dans les analyseurs à chartes initialement développés par Earley [Ear70]. Elle permet de généraliser différentes méthodes proposées en analyse syntaxique mais aussi en programmation en logique, telles les transformations de type Magic-Set [Ram88].

Le système DYALOG, en cours de développement par É. de la Clergerie, valide cette approche pour la programmation en logique et différents formalismes linguistiques à base logique.

Forêts partagées d'analyse

Les deux approches précédentes ont de nombreux points en commun. Nous avons déjà cité l'utilisation des techniques de la programmation dynamique. Nous pouvons également noter la notion de forêt partagée d'analyse. Une telle forêt regroupe sous forme compacte l'ensemble des analyses possibles pour une phrase et est en générale assimilable à une grammaire [Lan91]. Ainsi, alors que l'analyse par une CFG peut conduire à un nombre exponentiel (ou même non borné) d'analyses, la forêt sera cubique en la longueur de la phrase analysée. Les forêts d'analyse, qui sont les structures intermédiaires de l'approche multi-passe, constituent également un point de départ pour des traitements linguistiques ultérieurs (prise en compte de contraintes syntaxiques ou sémantiques complémentaires, traduction, ...).

Le Poste de Travail Informationnel



Participants : Roland Dachelet , Bernard Lang , Hicham Ouahid , François Role


Mots-clés : interface homme-machine, hypertexte, document électronique, agent intelligent, cédérom, WWW


Résumé : Dans le cadre du développement d'un Poste de travail informationel, nous étudions diverses techniques de recherche, préservation, gestion et d'exploitation coordonnée des documents et informations numérisés, sur les divers média existant : ressources locales, cédéroms et Internet.

La nécessité de trouver des débouchés applicatifs à nos travaux, ainsi qu'un intérêt de l'équipe pour les nouveaux média (principalement cédérom et l'Internet) dont le rôle économique, social et culturel va croissant, nous a naturellement amenés à nous impliquer dans diverses actions dont nous espérons des synergies avec nos compétences en analyse syntaxique et déduction décrites plus haut, ainsi qu'avec nos compétences plus anciennes en génie logiciel et traitement de documents structurés.

Ce travail plus applicatif présente deux volets complémentaires, qui concernent d'une part la conception et le développement d'outils pour maîtriser un support matériel des documents qui est en pleine évolution, et d'autre part le développement de techniques d'analyse et de gestion des contenus des documents eux-mêmes. Ces deux aspects sont parfois difficilement dissociables. Par exemple, la réalisation d'un outil de recherche sur le Web requiert à la fois une maîtrise des techniques strictement informatiques de l'accès à l'information, mais aussi des outils sophistiqués d'extraction du contenu des documents (par exemple la lemmatisation des mots pour un indexeur sophistiqué). Il est également clair que ces problèmes font appel à une grande variété de techniques liées au traitement des documents, à l'analyse de la langue naturelle, et à la recherche documentaire. Bien entendu, il ne saurait être question d'acquérir une expertise universelle avec les moyens dont nous disposons, et nous cherchons au maximum à réutiliser des outils existants pour nos travaux, tout en nous efforçant d'identifier et d'explorer des problèmes originaux.

Le thème unificateur que nous fixons à ces activités est le développement d'un Poste de Travail Informationnel, permettant à un travailleur intellectuel de gérer facilement son capital d'informations et de documents, tant en ce qui concerne la recherche de nouveaux documents, qu'en ce qui concerne leur mémorisation et leur organisation (indexation) pour une réutilisation ultérieure.



previous up next contents Précédent : Présentation générale et objectifs Remonter : avant-projet ATOLL, ATelier d'Outils Logiciels Suivant : Logiciels