traitement automatique du u langage naturel à l'iai i · 2010. 1. 7. · le traitement...

42
DESS Industries de la langue Université de Metz UFR " Lettres et Sciences Humaines" Ile du Saulcy F-57045 METZ Cedex 1 Patrick Da Costa DESS Industrie de la Langue Année universitaire 1999-2000 T T r r a a i i t t e e m m e e n n t t A A u u t t o o m m a a t t i i q q u u e e d d u u L L a a n n g g a a g g e e N N a a t t u u r r e e l l à à l l ' ' I I A A I I Institut der Gesellschaft zur Förderung der Angewandten Informationsforschung e.V. an der Universität des Saarlandes

Upload: others

Post on 15-Mar-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

DESS Industries de la langue Université de Metz UFR " Lettres et Sciences Humaines" Ile du Saulcy F-57045 METZ Cedex 1

Patrick Da Costa DESS Industrie de la Langue

Année universitaire1999-2000

TTrraaiitteemmeenntt AAuuttoommaattiiqquuee dduu LLaannggaaggee NNaattuurreell àà ll''IIAAII

Institut der Gesellschaftzur Förderung

der AngewandtenInformationsforschung e.V.

an derUniversität des Saarlandes

Page 2: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un
Page 3: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Remerciements : Je tiens à remercier tous les membres de l'IAI pour leur accueil et pour l'aide qu'ils m'ont apportée durant ce stage, en particulier le Professeur Johann Haller et Munpyo Hong pour leurs enseignements ainsi que Maryline Hernandez pour le travail que nous avons effectué en collaboration.

Page 4: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

1

Sommaire

Introduction......................................................................................................3 1 Début du stage..........................................................................................6

1.1 Matériel informatique..........................................................................................6 1.2 Activités et Projets ..............................................................................................6

2 Dictionnaire Allemand-Français..............................................................8 3 Projet UNL .................................................................................................9

3.1 Qu'est ce que le projet UNL ? .............................................................................9

3.1.1 Architecture du système UNL.....................................................................9 3.1.2 Ressources du système UNL.....................................................................10 3.1.3 Formalisme UNL.......................................................................................10

3.2 Travaux effectués ..............................................................................................11 3.3 Conclusion.........................................................................................................13

4 Traductions .............................................................................................14

4.1 Traduction du nouveau site web de l'IAI ..........................................................14 4.2 Traduction des pages web du Département de Traduction Automatique .........15 4.3 Traduction de la présentation d'une conférence sur la sécurité.........................15 4.4 Conclusion.........................................................................................................16

5 Projet Mercedes ......................................................................................17

5.1 Premiers contacts avec Mercedes......................................................................17 5.2 Extraction de termes..........................................................................................17

5.2.1 Extraction de termes sans contexte............................................................18

5.2.1.1 Forme des groupes nominaux extraits ..................................................19

5.2.2 Extraction de termes avec contexte ...........................................................21

Page 5: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

2

5.3 Alignement Allemand-Français ........................................................................22 5.4 Conclusion.........................................................................................................25

6 CAT2 ........................................................................................................26

6.1 La traduction automatique aujourd'hui .............................................................26 6.2 Un exemple de traduction automatique : CAT2 ...............................................26

6.2.1 Caractéristiques de CAT2..........................................................................27

6.2.1.1 Architecture du système........................................................................27

6.2.1.1.1 Morphological Structure (MS).................................................28 6.2.1.1.2 Constituent Structure (CS) .......................................................28 6.2.1.1.3 Interface Structure (IS).............................................................28

6.2.1.2 Règles ....................................................................................................29

6.2.1.2.1 b-rules (building rules).............................................................29 6.2.1.2.2 f-rules (feature rules)................................................................29 6.2.1.2.3 t-rules (transfer rules)...............................................................30 6.2.1.2.4 tf-rules (transfer feature rules) .................................................30

6.2.1.3 Commandes CAT2................................................................................30

6.3 Travaux effectués sur CAT2 .............................................................................30

6.3.1 Pluriel des substantifs ................................................................................31 6.3.2 Pluriel et féminin des adjectifs ..................................................................33 6.3.3 Conjugaison des verbes .............................................................................34

6.4 Conclusion.........................................................................................................36

Conclusion....................................................................................................................37 Références....................................................................................................................38

Page 6: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

3

DESS Industrie de la Langue Aujourd'hui, la technologie de l'information devient l'un des secteurs les plus importants de l'industrie de notre époque. Elle s'étend au-delà des frontières nationales et participe aussi bien à la communication internationale qu'à la compétition internationale. Avec l'explosion de ces nouvelles technologies de la communication et de l'information, en particulier de l'Internet, les besoins en traitement automatique de la langue sont de plus en plus importants. L'objectif du DESS Industrie de la Langue, "Traitement Automatique du Langage Naturel (TALN) et Techniques de Traduction", de l'Université de Metz est de former des étudiants capables d'intervenir dans les secteurs de la communication mono- et multilingue (création et gestion de bases de données mono- et plurilingues, gestion de corpus et d'archives documentaires, traduction assistée et automatique, rédaction technique et scientifique, apprentissage des langues...). Le but des industries de la langue est de fournir aux utilisateurs (entreprises, organismes, individus, etc.) produits et services en TALN. Pour cela une double compétence est nécessaire : une compétence en linguistique pour connaître les fondements de la théorie des langages (morphologie, syntaxe, sémantique...) et une compétence en logique et en informatique (systèmes d'exploitation, langages de programmation...) pour pouvoir traiter les données linguistiques. Le profil des étudiants pour ce DESS est très varié. Ils peuvent avoir fait des études de langues, de linguistique ou d'informatique. Un partenariat entre l'Université de Metz et l'IAI (Institut für Angewandte Informationsforschung an der Universität des Saarlandes, Institut de recherche appliquée dans l'information à l'Université de la Sarre) s'est constitué dans le cadre du programme du DESS. Grâce à ce partenariat, les étudiants peuvent suivre des cours dispensés par des membres de l'IAI ainsi qu'effectuer des exercices pratiques, soit à l'Université de Metz, soit à l'IAI ou à l'Université de la Sarre. Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un des domaines de recherche traditionnels de l'Université de la Sarre. Des groupes de travail participent à de nombreux projets nationaux et internationaux depuis les années soixante. En 1985, l'Institut de recherche appliquée dans l'information à l'Université de la Sarre (IAI) est fondé. Il a été en particulier responsable de la partie allemande du projet EUROTRA, projet initié par l'Union Européenne visant à créer un système de traduction automatique des langues de l'Union.

Page 7: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

4

L'IAI L'objectif de l'IAI est de trouver des solutions aux problèmes concernant la technologie et l'ingénierie de la langue. Pour cela, il développe des produits et des prototypes de logiciels linguistiques, propose des services et participe à de nombreux projets nationaux et internationaux. L'IAI effectue également des évaluation de systèmes de traduction automatique existant sur le marché. Produits Les produits sont développés pour un utilisateur donné et ne sont pas destinés à être commercialisés à grande échelle. Les produits développés par l'IAI sont des outils : • de contrôle du langage (orthographe, terminologie et abréviations, grammaire et

style) ; • d'indexation et de classification automatique (Autindex) ; • de recherche multilingue d'informations (MproIR) ; • d'apprentissage de la langue (Lösungstrainer Russisch, logiciel d'apprentissage de

la langue russe, complément d'un manuel d'apprentissage du russe pour futurs traducteurs et interprètes) ;

• d'analyse morphologique et de génération ; • de balisage, de lemmatisation et d'analyse syntaxique de surface. Prototypes Tout comme les produits, les prototypes sont issus de projets de recherche et de développement. Il sont utilisés dans le cadre de la recherche et de la formation. Voici quelques exemples de prototypes développés à l'IAI : • programme de vérification de la syntaxe allemande (Dimacheck) ; • système de traduction automatique (CAT2) : issu du projet EUROTRA, ce système

est basé sur l'unification et permet d'obtenir une représentation syntaxique et sémantique des phrases ;

• système de traduction basé sur l'exemple (Memling) : contrairement aux systèmes de traduction classiques, ce système EBMT (Example-Based Machine Translation) ne prend pas en compte des chaînes de caractères, mais des phrases et des propositions ;

• formalisme de reconnaissance de modèles (KURD : Kill, Unify, Replace or Delete) : permet de reconnaître et de traiter des structures linguistiques dans le but de vérifier la grammaire et le style ;

• plate-forme avancée pour l'ingénierie linguistique (ALEP : Advanced Linguistic Engineering Platform) : outils d'analyse linguistique permettant entre autres la description morphologique et syntaxique de différentes langues de l'Union Européenne.

Projets Les projets, auxquels participe l'Institut, sont des travaux de recherche entrepris à la suite de l'obtention de financements de la part d'un organisme public ou privé. Ces projets se font généralement dans le cadre d'une coopération au niveau national et

Page 8: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

5

même international. Par exemple, le projet Interreg (Ingénierie linguistique au travers des langues frontalières) est mené en collaboration entre la région Lorraine et le Land de la Sarre. Ces projets regroupent de nombreux domaines tels que : • les systèmes d'informations multilingues : médecine (ANTHEM), droits des

médias (EMIS) ; • la production et la gestion de documentation technique : MULTILINT (en

allemand), MULTIDOC (multilingue) ; • la traduction de la parole (Verbmobil) ; • la communication et la recherche d'informations multilingues (UNL, Universal

Networking Language) : projet international lancé par l'ONU ; • ... A partir de ces projets, des produits ou des prototypes peuvent être développés. Services L'IAI propose aussi des services dans le domaine de l'ingénierie linguistique. Ces services sont : • l'indexation et la classification automatiques (par exemple d'articles de presse avec

Newscan) ; • la traduction ; • l'évaluation de produits (par exemple de systèmes de TA) ; • la localisation de logiciels. Certains services sont d'ailleurs disponibles sur Internet. En plus de son partenariat avec l'Université de Metz, l'IAI est aussi lié à l'Université de Nancy et propose des cours en linguistique informatique au Département de traduction et d'interprétariat de l'Université de la Sarre. Le stage Dans le cadre du DESS Industrie de la Langue de l'Université de Metz, un stage de trois mois minimum doit être effectué soit en France soit à l'étranger, dans une entreprise ou un laboratoire de recherche dans le domaine des industries de langue. Le stage a pour but de mettre en pratique les connaissances acquises durant l'année universitaire et de découvrir les industries de la langue. Le directeur de l'IAI, le Professeur J. Haller, qui donne aussi des cours sur la traduction automatique pour le DESS IDL, recherchait des stagiaires. Faire un stage dans son Institut représentait une excellente opportunité compte tenu de son importance dans le secteur de l'ingénierie linguistique. De plus, la possibilité de faire mon stage en Allemagne représentait une bonne occasion pour approfondir mes connaissances linguistiques en allemand et de découvrir un land, la Sarre, fortement marqué par les relations franco-allemandes. Après avoir envoyé ma demande de stage et passé un entretien, ma candidature fut acceptée pour un stage de 3 mois, du 2 mai au 28 juillet 2000.

Page 9: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

6

1 Début du stage

Le stage a débuté le 2 mai par une présentation effectuée par le directeur de l'IAI, le professeur J. Haller, de l'équipe, des activités et des projets en cours à l'Institut, suivie d'une introduction aux divers outils (matériel informatique) et ressources (bibliothèque) utilisés au sein de l'Institut.

1.1 Matériel informatique Le parc informatique est composé de PC et stations UNIX ainsi que d'imprimantes laser noir et blanc et d'imprimantes jet d'encre couleur. Imprimantes et ordinateurs sont connectés en réseau, et ces derniers sont bien sûr connectés à Internet. Pour avoir accès à un PC, il faut entrer un code différent pour chaque machine. Pour se connecter à une machine Unix, il faut entrer son login (identifiant d'utilisateur) ainsi que le mot de passe correspondant. L'IAI a recours à deux types de systèmes d'exploitation :

• Windows (NT ou 95) de Microsoft • Unix de Sun Microsystems

Grâce à des émulateurs (Hostaccess et PC-Xware), il est possible d'avoir accès aux machines Unix à partir d'un PC. Windows est un système utilisant une interface graphique simple d'utilisation et qui équipe environ 85% des ordinateurs dans le monde. Cependant, pour le développement d'outils (en particulier dans le domaine des technologies de la langue) et dans le cadre d'une collaboration en particulier avec d'autres équipes de recherche, le système Unix a été choisi. En effet, Unix est un système multi-utilisateurs et multi-processus. C'est-à-dire que le système accepte que plusieurs utilisateurs travaillent simultanément sur une seule et même station (via des terminaux textes ou graphiques). De plus chaque utilisateur peut effectuer plusieurs tâches en même temps. Unix se montre en outre plus stable et plus puissant que Windows en offrant plus de possibilités dans la manipulation des fichiers malgré un certain manque de convivialité (pas d'interface graphique). Avant ce stage, ma pratique du système était quasiment nulle. Que ce soit chez moi ou à l'université, le système d'exploitation utilisé a toujours été Windows. Mais, grâce aux conseils de M. Haller ou d'autres membres de l'équipe de l'IAI, mon adaptation à Unix fut rapide.

1.2 Activités et Projets M. Haller m'expliqua ce qu'il attendait de moi durant ce stage. Tout d'abord, il me confia des activités ne comportant pas de délais dans le but de vérifier et/ou d'améliorer la composante française de certains outils de l'IAI (dictionnaires électroniques) ou de projets (UNL). Ces tâches m'ont permis de me familiariser avec les outils de l'Institut.

Page 10: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

7

Par la suite, des projets et des tâches à échéance fixe m'ont été assignés, soit pour les propres besoins de l'Institut, soit pour un client (traduction et localisation, extraction de termes, indexation et classification de documents). Ces tâches étaient la plupart du temps effectuées en équipe avec Maryline Hernandez, étudiante du DESS IDL de Metz effectuant elle aussi son stage à l'IAI, mais toujours sous la tutelle d'un membre de l'Institut.

Page 11: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

8

2 Dictionnaire Allemand-Français

Ma première tâche au sein de l'Institut a été d'effectuer la révision et la correction, si nécessaire, d'un dictionnaire électronique allemand-français. Ce dictionnaire a été et est encore développé par Dieter Maas, spécialisé dans l'élaboration d'outils liés à la morphologie. Ce dictionnaire est intégré dans la plupart des applications multilingues utilisées et développées par l'Institut dans lesquelles le français intervient (système de traduction ou de recherche multilingue d'informations). Pour pouvoir traiter les fichiers du dictionnaire, comme tous les autres fichiers sous Unix, il faut utiliser l'éditeur de textes "vi" (visual editor). Pour lancer "vi", il suffit de saisir : vi nom_du_fichier L'éditeur "vi" ne possède aucune icône et aucun menu déroulant. Il présente la particularité de posséder deux modes différents : le mode commande et le mode insertion. On sort du mode insertion avec la touche escape (ECHAP ou ESC) et on y rentre avec la commande i (insert) ou a (append). Le déplacement du curseur se fait en mode commande et s'effectue soit à l'aide de lettres, soit avec les flèches de déplacement. Sur certains terminaux, les accents et les caractères spéciaux (par exemple : "ç", "ß") n'apparaissent pas. Ils sont remplacés par un code qui n'est pas le code ASCII. Voici les codes les plus utilisés pour l'allemand et le français :

\340 à \350 è \356 î \371 ù \342 â \351 é \357 ï \373 û \344 ä \352 ê \364 ô \374 ü \337 ß \353 ë \366 ö \347 ç

Les difficultés rencontrées lors de la vérification de ce dictionnaire ne concernaient pas les termes du langage courant. En effet, les problèmes se posaient généralement pour les termes techniques, en particulier ceux du domaine ferroviaire et médical. Une simple recherche dans un dictionnaire bilingue n'était pas suffisante. L'emploi d'un dictionnaire monolingue (allemand ou français) se révélait parfois plus approprié. Pour trouver le bon équivalent en français, il a aussi été nécessaire de consulter des bases de données terminologiques et/ou des sites webs spécialisés dans ces domaines. En collaboration avec Maryline, j'ai opéré la vérification de la lettre "a" et du début de la lettre "b". Mais, compte tenu de la priorité des activités qui nous ont été confiées par la suite, nous n'avons pas pu continuer.

Page 12: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

9

3 Projet UNL

En parallèle à la vérification du dictionnaire électronique, il nous a été demandé d'élaborer des règles de constructions syntaxiques pour un "enconvertisseur" français actuellement développé à l'IAI dans le cadre du projet UNL.

3.1 Qu'est ce que le projet UNL ? UNL (Universal Networking Language) est un projet de communication et de recherche multilingues d'informations qui a pour but de surmonter la barrière de la langue sur Internet. En effet, l'accès aux informations et aux services disponibles sur Internet est encore rendu difficile par l'obstacle de la langue, en particulier pour les non-anglophones. La raison pour laquelle l'ONU a lancé en avril 1996 un vaste programme de recherche international dans le but de mettre au point un "langage universel de réseau" (UNL), permettant de traduire un texte vers une multitude de langues. Cependant, contrairement aux systèmes de traduction classiques, le langage UNL n'a pas pour but de produire une traduction littérale des documents, mais plutôt d'extraire le sens des phrases pour pouvoir donner le sens global des textes présents sur les "autoroutes de l'information".

3.1.1 Architecture du système UNL Le langage UNL est un langage formel qui permet de décrire, résumer, stocker et de représenter des informations sous une forme indépendante des machines et des langues naturelles. On se sert de ce langage comme d'une langue pivot. UNL se veut le "HTML du contenu linguistique". Il proposera des programmes d'analyse et de génération qui seront mis à disposition en tant que plug-in pour un navigateur Internet.

Page 13: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

10

"Enconvertisseur" : Il permet d'extraire des informations d'un texte en langue naturelle pour en faire une représentation en langage UNL. Un éditeur UNL est disponible pour permettre à l'utilisateur d'intervenir sur "l'enconversion". "Déconvertisseur" : Il effectue l'opération inverse de "l'enconvertisseur". Il permet la génération vers une langue naturelle à partir d'expressions UNL.

3.1.2 Ressources du système UNL Pour permettre la représentation d'un énoncé en langage naturel vers le langage UNL, on utilise des UW (Universal Words). Ces "mots universels", représentés par des termes en anglais, décrivent les concepts d'un énoncé. En complément à ces UW, UNL dispose d'une KB (Knowledge Base), une base de connaissances. Cette base de connaissances donne plus de précisions sémantiques sur les concepts.

3.1.3 Formalisme UNL Le formalisme d'UNL se compose d'un jeu de relations binaires. Un énoncé est représenté par un hypergraphe dont chaque nœud contient un "UW" ou un autre graphe, le tout complété par des attributs (pluralité, modalité, aspect) précisant l'usage exact des concepts reliés par des arcs portant sur une relation sémantique (agent, objet). Exemple : DE: Das Gerben ist ein Verfahren zur Herstellung von widerstandsfähigem Leder. FR: Le tannage est un processus pour produire du cuir durable. EN: Tanning is a process for producing durable leather.

Page 14: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

11

aoj(procedure(icl>event)@indefsg.@entry, tan(icl>event)@generic) pur(procedure(icl>event)@indefsg.@entry, manufacture(icl>event)) obj(manufacture(icl>event), leather(icl>material)) aoj(durable(icl>characteristic),leather(icl>material))

3.2 Travaux effectués En collaboration avec Munpyo Hong, responsable du projet UNL à l'IAI, et après avoir consulté quelques travaux de recherche (cf. Références), nous avons pu élaborer quelques règles permettant la reconnaissance de modèles syntaxiques pour le français. Nous avons pris pour modèle ce qui a été fait auparavant pour l'allemand. "L'enconvertisseur" français développé à l'IAI repose sur le système de traduction CAT2 (cf. CAT2), système basé sur des règles de transferts utilisant des reconnaissances de modèles. Avant de décrire comment une règle se décompose, voici une liste des différentes abréviations et opérateurs les plus utilisés dans cette grammaire : acc => accusatif ag => agent (généralement représenté par 'a') d => pronom eh => extended head fst => first funct => functionnal category gl => goal (généralement représenté par 'c') gra=cap => upper case gra=small => lower case h => head heavy='*' => élément du lexique heavy='**' => phrase hpos => head position infl => inflexion n => nom nom => nominatif pf => prepositionnal form ptc1 => participe I (participe présent) ptc2 => participe II (participe passé) restr => restriction sc => sous-catégorisation slex => secondary lexem (mot dérivé) th => theme (généralement représenté par 'b') thrh => thema-rhema wh => why, who...

Page 15: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

12

r~=funct <=> funct=n * => 0 ou n ^ => 0 ou 1 ; => 'ou' ~ => 'non' Prenons l'exemple d'une règle de reconnaissance d'une phrase simple, sujet+verbe+complément, du type : "Le chat mange la souris". {h={cat=v,eh={type=main}}}. Cette expression détermine que le verbe est le prédicat. [*{h={cat=adv},komma_r=y},

Un adverbe peut commencer la phrase, mais il doit être suivi d'une virgule. L'astérisque détermine le caractère optionnel de cette adverbe.

{h={cat=(n;d),eh={num=NUM1,per=PER1,sem=ARG1,type~=relp,nom}}} L'argument 1 du prédicat, c'est à dire le sujet du verbe, est un nom ou (la disjonction est symbolisé par ";") un pronom avec une personne (per=PER1), un nombre (num=NUM1), une sémantique (sem=ARG1) et un cas (comme le sujet est toujours au nominatif, on a donc la constante "nom"). type~=relp signifie que le groupe nominal sujet n'est pas une proposition relative.

^{r=funct,pctr=no,h={cat=neg},(vpos=y,lex=n);(vpos=n,lex=ne)}, S'il s'agit d'une phrase négative (cat=neg), il faut mettre un "ne" devant un verbe commençant par une consonne (vpos=n) ou "n'-" devant un verbe commençant par une voyelle (vpost=y). Le symbole "^" indique qu'il ne peut y en avoir que 0 ou 1.

{heavy='*',h={cat=v,form=fin,eh={mode=ind},aux=nil,num=NUM1,per=PER1,refl=no},gra=small,sc={a={h={eh={cat=n,sem=ARG1}}},b={h={eh={cat=(n;d),sem=ARG2}}},c={h={eh={cat=p,sem=ARG3,pf=PFORM}}}},

Cette règle définit l'accord du verbe, qui ne doit pas être un auxiliaire (aux=nil), avec l'argument 1. Elle définit aussi les arguments requis par le prédicat.

^{lex=(pas;plus;point;jamais),h={cat=neg,pctr=no}}, pctr=no indique que la négation "pas", "plus", "point" ou "jamais" exige l'absence de ponctuation.

*{h={cat=adv}}, Possibilité de mettre un adverbe après le verbe. ^{h={cat=(n;d),eh={sem=ARG2}}, Possibilité d'un argument 2 qui serait un complément d'objet. ^{h={cat=p,eh={sem=ARG3,pf=PFORM}},

Possibilité d'avoir un argument 3, qui serait un groupe prépositionnel régi par la forme de la préposition de pf=PFORM.

*{h={cat=adv}}, Possibilité d'avoir un adverbe en fin de phrase. {string='.',lex='.',heavy='*'}]. La phrase se termine, lorsqu'elle rencontre le symbole de ponctuation "point".

Page 16: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

13

La phrase est ainsi découpée et à chaque partie, on assigne des attributs. Ces attributs sont définis par des valeurs qui peuvent être soit des constantes (en minuscule), soit des variables (en majuscule).

3.3 Conclusion Le projet UNL est animé par l'Université des Nations Unies (UNU) à Tokyo et une quinzaine d'équipes à travers le monde travaille sur ce projet. Ce projet est loin d'être terminé. La "déconversion" fonctionne assez bien pour de nombreuses langues, mais "l'enconversion", opération plus complexe, pose encore problème. Le développement de "l'enconvertisseur" français effectué n'en est qu'à ses débuts. Cependant, en l'état actuel, il ne constitue pas une priorité pour l'IAI, sa poursuite est donc remise à plus tard.

Page 17: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

14

4 Traductions

Au cours de notre stage, plusieurs traductions nous ont été proposées, bien que n'étant, pour ma part, pas traducteur de formation. La traduction "humaine" ne fait pas partie des activités principales de l'Institut. Mais dans certains cas, l'IAI doit effectuer des traductions soit pour ses besoins internes, soit pour un client important. L'Institut possède plusieurs systèmes de traduction automatique tels que CAT2, Systran, Comprendium ou encore Logos. Cependant, l'IAI est bien placé pour savoir que les traductions faites par de tels systèmes sont encore loin d'être parfaites. Certes, il existe des exemples de systèmes de traduction automatique acceptables. Mais ceux-ci sont rares et ne s'appliquent que dans certaines conditions (expressions limitées, structures syntaxiques simples). On peut citer comme exemple le prototype de traduction automatique d'offres d'emplois allemand-français développé dans le cadre du projet Interreg entre les universités de Metz, Nancy et Sarrebruck. Pour éviter de proposer des traductions fantaisistes, le choix d'un traducteur "humain" est donc préférable quand un texte de qualité est requis.

4.1 Traduction du nouveau site web de l'IAI Récemment, le site de l'IAI a été modifié. Cette modification était plus qu'une simple mise à jour. La présentation et le système de navigation ont été changés ainsi qu'une grande partie du contenu textuel. Le site est proposé en trois langues, allemand, anglais et français. Notre tâche a été de traduire le site de l'allemand vers le français. Pour effectuer cette traduction, nous nous sommes aidés de l'ancien site et de ce qui avait été fait en anglais. Pour résoudre un problème de compréhension à propos d'un produit ou d'un prototype, nous pouvions consulter directement la personne qui en est responsable au sein de l'équipe ou le Professeur Haller. Ce fut d'ailleurs un bon moyen d'approfondir nos connaissances des différents produits, projets, prototypes et services au sein de l'Institut. Pour plus de facilité, le texte en français était directement écrit sur le texte en allemand disponible en HTML. Pour cela, l'utilisation de Netscape Composer semblait appropriée. Netscape Composer est un éditeur du navigateur Internet Netscape Navigator, qui permet de créer ou de modifier une page web. Au bout d'un certain temps, nous nous sommes aperçus que certaines adresses des liens hypertextes étaient modifiées. En effet, selon que le fichier HTML était enregistré sur le disque dur ou sur une disquette, les liens changeaient automatiquement. Il a donc fallu procéder à la vérification et à la correction des pages précédemment traduites. Pour éviter ce type de problème, on nous a conseillé d'utiliser plutôt un simple éditeur de textes tels que Wordpad sous Windows ou vi sous Unix. L'inconvénient de ces

Page 18: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

15

éditeurs est que les balises sont visibles à l'écran et peuvent donc gêner lors de la lecture. Mais cela écarte tout risque d'effacement de balises involontaire. Après relecture et correction, les pages ont été vérifiées par M. Haller et confiées à la responsable système de l'IAI, Bärbel Ripplinger.

4.2 Traduction des pages web du Département de Traduction Automatique Par la suite, M. Haller nous a confié la traduction des pages web du département de traduction automatique de l'Université de la Sarre, section qu'il dirige. Les méthodes utilisées furent les mêmes que pour la traduction du site de l'IAI. Les seuls problèmes rencontrés étaient des problèmes d'équivalence entre le système universitaire allemand et le système français. Pour cela, une consultation de sites web équivalents en français a été nécessaire pour pouvoir faire une comparaison et trouver le terme approprié. Exemples : Doktoranden

�� Étudiants en doctorat Magisterprüfungsordnung

�� Règlement des examens de maîtrise

4.3 Traduction de la présentation d'une conférence sur la sécurité La troisième traduction effectuée était destinée à un client. Le document à traduire était une présentation des sujets d'une conférence sur les différents aspects de la sécurité (médecine, économie, philosophie...) dans de nombreux secteurs (énergie, transports, technologie de l'information et de la communication...). Ce document devait être traduit de l'allemand vers le français et vers l'anglais. Maryline s'est occupée de traduire vers le français et moi vers l'anglais. La difficulté lors de la transposition de ce document de l'allemand vers l'anglais était qu'il n'était pratiquement constitué que de groupes nominaux donc sans verbe, indépendants des uns des autres. La présence d'éléments situationnels rend généralement le travail du traducteur plus aisé. Ceci n'était pas le cas pour cette traduction, d'autant plus que les thèmes pour cette conférence était très pointus. Voici quelques exemples : Vergleichende Sicherheitsbetrachtung an Kfz zur Verbesserung der Sicherheit (einschl. Fahreigenschaften). Vorgeschlagener Referent:

Page 19: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

16

Comparative safety considerations on vehicles to improve safety (including driving characteristics).

Suggested speaker: Strahlenbelastung und Tumorerkrankungen bei Flugzeugpersonal Vorgeschlagener Referent: Dr. med. L. Bergau, Leiter des Medizinischen Dienstes der Deutschen Lufthansa AG, Frankfurt

Radioactivity level and tumour diseases among the aircraft crew Suggested speaker: Dr. med. L. Bergau,

Chief of the medical department of Deutsche Lufthansa AG, Frankfurt Häufigkeit und Risiko von Mikroschlafepisoden Vorgeschlagener Referent: Prof. Dr. med. W. Emser Neurologie Dillingen

Frequency and dangers of microsleep episodes Suggested speaker:

Prof. Dr. med. W. Emser Neurology Dillingen

Cependant, mon travail fut grandement facilité par l'utilisation du dictionnaire électronique allemand-anglais développé par D. Maas. En effet, ce dictionnaire est très riche de par la quantité des termes proposés et de par la variété des domaines traités. La correction de ma traduction fut effectuée par Catherine Pease, membre anglophone de l'IAI.

4.4 Conclusion La traduction "humaine" ne fait pas réellement partie du traitement automatique du langage naturel. Cependant, avant de pouvoir travailler sur un système de traduction automatique, il est nécessaire de connaître les mécanismes de la traduction. Pour cela une bonne connaissance des mécanismes complexes de la langue source et de la langue cible est exigée.

Page 20: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

17

5 Projet Mercedes

Depuis la création de l'IAI, le secteur de l'industrie automobile a toujours été un domaine de recherche privilégié. En collaboration avec quelques entreprises de ce secteur (BMW, Saab, Renault, Volvo, Rolls Royce et Jaguar), l'IAI a développé une station de travail pour rédacteur technique dans le cadre du projet Multidoc. Cet outil permet d'aider le rédacteur lors de la production et la gestion de documentation technique. Dans l'industrie automobile, la documentation technique prend une place très importante que ce soit pour la construction, l'entretien ou la réparation des véhicules. Il est donc nécessaire que la documentation soit cohérente et rigoureusement exacte. Multidoc propose des modules de vérification de la grammaire, du style, de la terminologie et de la cohérence de la documentation technique. Tout cela est d'ailleurs possible en plusieurs langues (allemand, français, anglais, suédois...). De plus, un système de traduction automatique est inclus, permettant d'obtenir une traduction informative.

5.1 Premiers contacts avec Mercedes L'IAI possède donc une grande expérience dans le domaine automobile et c'est pour cela qu'il a été contacté par Mercedes. Le constructeur allemand est confronté aux problèmes de gestion d'une base de données terminologiques. A chaque fois qu'un document est rédigé, les termes contenus dans le document doivent être cohérents avec les autres documents déjà rédigés. De plus, le secteur de l'industrie automobile est un secteur fortement globalisé. Les documents sont donc écrits en de nombreuses langues. Par conséquent, la cohérence entre les différentes langues est aussi très importante. En vue d'une possible collaboration future, la firme de Stuttgart a demandé à l'Institut de Sarrebruck d'extraire les termes d'un document rédigé en quatre langues (l'allemand, l'anglais, le français et l'espagnol). Le résultat final devait être présenté à Mercedes sous la forme d'une base de données sur MultiTerm (Trados) pour chaque langue avec un exemple du terme dans son contexte.

5.2 Extraction de termes L'extraction des termes pour l'allemand et le français m'a été confiée. L'opération comprenait deux étapes : l'extraction de termes sans contexte et l'extraction de termes avec contexte.

Page 21: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

18

Pour cela, l'IAI dispose de programmes d'extraction automatique des termes pour les deux étapes de l'opération. Cependant, l'intervention humaine a été nécessaire pour le "nettoyage" des listes de termes obtenues, car il est parfois difficile de définir ce qu'est un terme. Terme : Désignation au moyen d'unité linguistique d'une notion définie dans une langue de spécialité. Un terme peut être constitué d'un ou plusieurs mots. Notion : Unité de pensée constituée par abstraction à partir des propriétés communes à un ensemble d'objets. Les notions ne sont pas liées aux langues individuelles. Elles sont cependant influencées par le contexte socioculturel.

(ISO 1087, 1ère édition, 1990)

5.2.1 Extraction de termes sans contexte L'extraction de termes sans contexte se fait à l'aide d'un programme développé en interne à l'IAI nommé make_terms. Ce programme ne fonctionne que sous Unix. Le texte doit être converti en format txt avant de pouvoir être traité par cet outil. Pour lancer le programme il faut entrer la commande suivante :

/tools/make_terms fr <texte.txt> texte.out langue texte à analyser (entrée) liste des termes (sortie) Le programme effectue une analyse morphologique et syntaxique du texte. Celui-ci est découpé en divers syntagmes et les groupes nominaux (GN) sont extraits pour en faire une liste comme celle qui suit.

Page 22: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

19

C'est à partir de cette liste qu'il faut ensuite opérer le "nettoyage".

5.2.1.1 Forme des groupes nominaux extraits Le programme d'extraction de termes utilise les outils d'analyse morphologique de MPRO. MPRO est un analyseur morphologique, développé à l'IAI par Dieter Maas. Cet analyseur contient un dictionnaire morphologique dans lequel sont inclus des morphèmes accompagnés des informations permettant de décrire le processus de formation des mots (dérivation, composition, flexion). Lors de l'extraction des termes par le programme, les déterminants et les adverbes sont la plupart du temps éliminés, car ils ne font pas partie des éléments d'un terme. Voici les différents types de groupes nominaux extraits par make_terms : - Nom - Nom + Adjectif - Adjectif + Nom - Adjectif + Nom+ Adjectif Cependant, le programme ne peut pas reconnaître si l'adjectif fait partie du terme ou s'il s'agit d'un simple qualificatif. Par exemple, "suspension active", "autoroutes numériques" ou encore "double projecteur ovale" sont des termes à part entière. Si l'on supprime l'adjectif de l'un de ces termes, on a affaire à une notion différente. Le meilleur exemple est "autoroutes numériques" qui veut dire : réseau par lequel circule les informations numériques. Si l'on enlève "numériques", cela voudra plutôt dire : réseau de routes pour la circulation rapide des voitures et autres véhicules. Par contre, "nouveau coupé" et "châssis classique" ne peuvent être considérés comme des termes. Les adjectifs "nouveau" et "classique" ne font que qualifier les termes auxquels ils sont associés. Dans ces deux cas, ils ne permettent pas la formation de nouveaux termes. Donc, pour isoler le terme, il faut supprimer ces adjectifs. La présence de prépositions et de conjonctions de coordination pose également problème. Lorsque le programme se trouve face à un groupe nominal de type "système de suspension active", il extrait deux segments : - "système de" - "suspension active" Lors du nettoyage, il a donc fallu en fonction des cas soit joindre les deux segments pour reformer un terme, soit supprimer la préposition et laisser tel quel. Outre la particularité des groupes prépositionnels, make_terms ne permet pas de dissocier deux groupes nominaux reliés par une conjonction de coordination. Cette dissociation doit par conséquent être faite manuellement. Cependant, la plus grande difficulté lors du nettoyage fut de décider si telle ou telle entrée pouvait être définie comme terme.

Page 23: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

20

Voici un extrait de la liste une fois nettoyée :

Un programme d'extraction de termes sans contexte spécifique au français, appelé make_fr_terms, fait également partie des outils développés à l'IAI. En fait, make_fr_terms utilise le programme make_terms. Mais, il effectue au préalable une analyse morphologique grâce à MPRO et vérifie si les mots contenus dans le texte se trouvent dans le dictionnaire français. Par rapport à make_terms, il existe une autre différence qui réside dans le traitement des groupes prépositionnels. En effet, make_fr_terms ne découpe pas l'entrée après une préposition. Le groupe nominal + le groupe prépositionnel constituent une seule est même entrée. Pour le reste, l'extraction est sensiblement identique. Le premier programme a été choisi pour l'extraction de termes pour deux raisons. Dans un souci de cohérence, un seul et même programme a été utilisé pour toutes les langues. De plus le découpage effectué par make_terms s'est révélé plus précis que le second programme d'extraction. Malgré tout l'évaluation des deux programmes a permis de révéler les points sur lesquels l'extraction de termes pouvait être améliorée (groupes prépositionnels, conjonctions de coordination).

Page 24: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

21

Comparaison make_fr_terms/make_terms :

make_fr_terms make_terms -voitures dotées d`un châssis-virages avec une inclinaisonlatérale minimale-technique avant-gardiste du CL-suspension pneumatique-suspension ABC réduit-sensations de conduite-niveau de sécurité-mouvements de la carrosserie audémarrage-hydraulique haute pression-fractions de seconde-ère dans le domaine de la dynamique-de marche-confort digne de la classe-calculateur performant-confort de conduite-suspension active

-technique avant-gardiste du-système de-suspension active-suspension active-Active Body Control-nouvelle ère dans-le domaine-la dynamique-hydraulique haute pression-calculateur performant-amortissement de-la carrosserie-la situation-l`espace-mouvements de-la carrosserie-les courbes-nouveau CL négocie-virages avec-une inclinaison-virages avec-une inclinaison-évitement rapides-voitures dotées d`-un châssis classique-châssis classique-nouveau coupé-confort digne de la Classe-Active Body

5.2.2 Extraction de termes avec contexte La particularité de make_term_glossary est de proposer en plus du terme, le contexte dans lequel il se situe. Cela permet ainsi d'avoir plus d'informations sur le sens du terme et sur son usage. Pour lancer le programme, il faut saisir la commande suivante :

/tools/make_term_glossary fr de mix test.txt test.html langue du texte langue de l'interface domaine texte liste Le programme extrait les groupes nominaux, élimine les termes en double et trie par ordre alphabétique. Chaque fois qu'un groupe nominal est reconnu par le programme, la ou les phrases dans lesquelles il se trouve sont extraites et sont ajoutées à la suite du terme. Par rapport à make_terms, la présentation est différente. Les termes extraits par make_terms sont répertoriés sous la forme d'une simple liste non triée. make_term_glossary génère une liste comprenant : - le terme (en bleu) - le nombre d'occurrences dans le texte ("Anzahl der Belege") - la ou les phrases incluant le terme (le terme est en rouge dans son contexte)

Page 25: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

22

Voici un extrait de la liste des termes avec contexte après nettoyage :

Un des grands avantages de ce programme est qu'il génère la liste en format HTML, qui est un format plus facilement transportable que le format doc ou txt, car la liste peut alors être accessible quelle que soit la plate-forme utilisée (Windows, Unix, Linux) à partir de n'importe quel navigateur Internet (Netscape Navigator ou Internet Explorer). Pour le reste l'extraction suit le même processus que make_terms. L'objectif final était d'obtenir une liste où les entrées n'étant pas des termes étaient supprimées et de ne garder qu'un seul contexte par terme, tout en laissant le nombre d'occurrences. Pour la présentation à Mercedes, le document a été converti pour être intégré dans MultiTerm. A la suite de cette présentation, Mercedes a demandé à l'IAI d'effectuer un alignement à partir des listes de termes obtenues dans les quatre langues requises. Le but est d'avoir la correspondance de chaque terme entre les différentes langues. L'alignement entre l'allemand et le français nous a été confié.

5.3 Alignement Allemand-Français L'objectif final de l'alignement des listes de termes est d'établir une liste comprenant le terme allemand avec son contexte suivi des termes et des contextes correspondants en français, en anglais et en espagnol.

Page 26: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

23

Pour cela deux étapes ont été nécessaires : - l'alignement des textes, - l'alignement des listes de termes. Pour effectuer ces opérations, le logiciel Déjà Vu, développé par Atril, a été utilisé. Déjà Vu est un logiciel d'aide à la traduction de type mémoire de traduction. Une mémoire de traduction est une base de données dans laquelle les phrases de la langue source sont stockées en compagnie de leurs traductions. Ainsi, lors de la traduction d'une phrase, le logiciel recherche dans la base de données si une phrase identique ou similaire a déjà été traduite auparavant. Déjà Vu traite non seulement les phrases, mais peut aussi traiter de plus petits segments tels que les mots par exemple. Cela permet ainsi d'améliorer la traduction des phrases qui ne correspondent pas exactement à celles présentes dans la base de données ("fuzzy matches"). Un outil d'aide à la traduction tel que Déjà Vu permet au traducteur de gagner du temps lors de la production de ses travaux et d'utiliser une terminologie cohérente. Deux fonctions de Déjà Vu sont particulièrement intéressantes : - la fonction "pretranslate" : Déjà Vu fait une pré-traduction du texte à partir des

phrases contenues dans la base de données. - la fonction "propagate translation" : durant la traduction, cette fonction permet

d'appliquer ce qui a déjà été fait au reste du document. Cela évite ainsi de retraduire certaines parties du texte.

Plus le nombre de textes avec leurs traductions dans la base de données est important, plus le logiciel se révèle efficace, en particulier pour les textes techniques. De plus, Déjà Vu possède un module de gestion de bases de données terminologiques. Les textes fournis par Mercedes ont pratiquement la même structure car il s'agit de traductions à partir de l'allemand. L'alignement des textes fut donc facilité. Parfois, l'alignement automatique ne correspondait pas exactement. En effet, pour une phrase en allemand, on pouvait avoir deux phrases en français et vice-versa. Il a donc fallu soit concaténer en un seul segment deux phrases en français dans le premier cas, soit couper la phrase française (en deux segments) dans le deuxième cas. Les textes ainsi alignés ont été importés dans la base de données. La deuxième opération consistait à aligner les listes de termes avec contexte. Mais contrairement aux textes, les deux listes n'ont pas de structures parallèlement équivalentes. Compte tenu du tri alphabétique effectué par make_term_glossar, l'ordre des termes selon les listes diffère. De plus, le contexte choisi pour illustrer le terme pouvait être différent en fonction de la langue. Il fallait donc mettre les termes en français dans le même ordre que la liste des termes allemands et le cas échéant faire des recherches pour retrouver l'équivalent du contexte allemand. Cette méthode, peu efficace et fastidieuse, fut remplacée par une autre exploitant au mieux les fonctionnalités de Déjà Vu. Étant donné que les textes allemand et français alignés se trouvent dans la base de données, une seule liste de termes était nécessaire

Page 27: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

24

pour effectuer l'alignement des listes. Grâce à la fonction "pretranslate", tous les contextes pouvait être traduits automatiquement car ce sont des phrases présentes dans les textes de la base de données. Pour obtenir le terme français, il a simplement fallu se référer à la liste de termes en français ou l'extraire manuellement du contexte. Exemple d'alignement de termes et contextes:

Cette méthode s'est révélée plus rapide et plus efficace et ne nécessite pas obligatoirement l'extraction automatique des termes dans la langue cible. Elle permet ainsi d'avoir une stricte correspondance des termes de la langue cible avec ceux de la langue source. Dans un souci de cohérence, il a été demandé de ne garder que les termes correspondants aux termes allemands. Par conséquent, les autres n'ont pas été pris en compte. Le résultat final de l'alignement de termes allemand-français devait être présenté sous la forme d'une liste comprenant pour chaque entrée le terme allemand, son équivalent en français et le contexte où se trouve le terme français. Exemple : lambda-Sondensondes lambdaFundstelle: Au total, six pots catalytiques et huit sondes lambdaassurent la conversion des polluants contenus dans les gazd`échappement.

Page 28: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

25

Les travaux effectués ont été ensuite converti pour être inclus dans une base de données MultiTerm et envoyés à Mercedes qui étudie actuellement la possibilité, à partir de ce test, de confier à l'IAI l'extraction multilingue de termes de ses textes.

5.4 Conclusion Dans un domaine tel que le secteur automobile, la nécessité d'avoir une base de données terminologiques multilingue cohérente est un impératif. Compte tenu du volume énorme des documents techniques, répertorier les termes utilisés dans les différentes langues se révèle difficile. La possibilité d'automatiser l'extraction de termes est donc intéressante. Cependant, comme pour la traduction, l'intervention humaine reste nécessaire. Malgré tout, l'extraction automatique permet un allègement considérable du travail et évite ainsi la lecture intégrale des textes pour en extraire les termes. Si Mercedes souhaite poursuivre sa collaboration avec l'IAI, un projet de programme de génération automatique de base de données terminologiques multilingue sera lancé. Ce projet sera basé sur les résultats de ce qui a été effectué lors du projet Mercedes, en particulier sur la reconnaissance des termes qui nécessite encore de nombreuses améliorations.

Page 29: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

26

6 CAT2

6.1 La traduction automatique aujourd'hui Avec la globalisation des marchés et le développement du commerce électronique, la traduction automatique connaît depuis plusieurs années une croissance énorme. Le besoin de plus en plus important des entreprises de traduire leurs documents le plus rapidement possible et à moindre frais, en particulier sur le web, profite à de nombreuses sociétés. Certaines sociétés comme Systran, dont le système est utilisé par le moteur de recherche Altavista et par l'Union Européenne, connaissent un certain succès. Cependant peu de systèmes de traduction automatique se révèlent fiables et ceux qui le sont ne s'appliquent que dans un cadre limité. Bjorn Austraadt, spécialiste de ce domaine chez Berlitz, résume assez bien la situation lorsqu'il dit que la traduction automatique "en est au même stade que les automobiles qui peuvent se conduire toutes seules : sur une certaine piste, avec une certaine voiture, dans certaines conditions climatiques, cela marche". Mais les besoins sont là et c'est plus particulièrement vrai pour les organisations internationales, comme l'OMS ou bien sûr l'Union Européenne. Avec 11 langues officielles, la traduction représente un véritable casse-tête pour l'Union dont tous les documents (directives, lois...) doivent être produits dans toutes ces langues. Pour essayer de résoudre ce problème, l'Union Européenne initia, en 1985, un projet de recherche et de développement dans le but d'élaborer un système de traduction automatique des langues de la Communauté (9 à l'époque). C'était le projet EUROTRA. En 1991, ce projet ambitieux se termina sur un constat de semi-échec.

6.2 Un exemple de traduction automatique : CAT2 La partie allemande du projet EUROTRA fut confiée à l'IAI, récemment créé. C'est à partir de ce projet que le système de traduction automatique multilingue, CAT2, a été développé et amélioré par l'Institut de Sarrebruck. La contribution de plusieurs institutions européennes et internationales a permis l'implémentation dans le système de plusieurs langues comme le russe, le chinois, le coréen et le japonais. Le système CAT2 est intégré dans plusieurs projets soutenus en particulier par la Commission Européenne : - Apollo : création assistée par ordinateur de matériel pédagogique dans le domaine

des banques et de la finance.

Page 30: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

27

- Anthem : système d'informations multilingue dans le domaine médical. - Aramed : traduction de textes médicaux de l'arabe vers l'allemand et vers l'anglais

ainsi que de classifications médicales de l'anglais vers l'arabe. - CAT2-EDS : traduction de messages électroniques (anglais, allemand, français)

dans le cadre de la maintenance de logiciels. Avant de d'exposer les travaux que j'ai effectués sur ce système, il convient de passer en revue les caractéristiques de CAT2.

6.2.1 Caractéristiques de CAT2 Le formalisme CAT2 est un descendant direct du prototype original d'EUROTRA. Ce formalisme est basé sur les trois primitives "Constructors", "Atoms" et "Translators", appelé de ce fait <C,A>,T Framework qui a donné son nom au système CAT2. CAT2 fait partie de la branche des systèmes RBMT ("Rule-Based Machine Translation") qui consistent en la formalisation des règles et des connaissances du traducteur. Ces systèmes s'opposent aux systèmes E/SBMT (Example/Statistical-Based Machine Translation) qui correspondent, par exemple, aux mémoires de traduction. CAT2 est implémenté en Prolog (SISCtus), langage qui se base sur le principe de l'unification. Les données sont structurées sous la forme d'ensembles de traits ("feature bundles") sur lesquels on peut effectuer diverses opérations : unification, disjonction, négation, existence de traits. La méthode utilisée pour effectuer la traduction est celle du transfert. Cette méthode consiste en une représentation sémantique de la phrase de la langue source et de la langue cible. La représentation de la phrase cible doit être similaire à la représentation de la langue source.

transfert représentation phrase source

représentation phrase cible

analyse

génération

phrase source phrase cible La seule différence réside au niveau du vocabulaire de la langue cible qui est l'équivalent de celui de la langue source. Mais avant d'arriver à ces représentations, plusieurs étapes sont nécessaires.

6.2.1.1 Architecture du système CAT2 est un système de traduction stratificationnel qui est divisé en trois niveaux de représentation. Les "translators" assurent le passage d'un niveau à un autre, chaque niveau représentant un ensemble de règles qui décrivent la structure correcte des

Page 31: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

28

phrases. Les phrases sont représentées par des structures arborescentes, "tree-structure", appelées "objets".

6.2.1.1.1 Morphological Structure (MS) Le niveau de représentation morphologique est responsable de l'analyse et de la génération des mots. L'objectif de ce niveau est de définir la structure d'un mot à partir de ses morphèmes. Exemple : hommes = homme + s morphème lexical morphème grammatical (entrée du lexique) (indiquant le pluriel)

6.2.1.1.2 Constituent Structure (CS) A partir de la représentation sémantique ou après l'analyse morphologique, ce niveau permet de définir la structure grammaticale de la phrase. Il la découpe en divers constituants (groupes nominaux, groupes verbaux...) et établit les liens entre ces constituants à partir de leurs fonctions (sujet, verbe...). Exemple de représentation au niveau CS : "Les hommes mangent les poissons."

6.2.1.1.3 Interface Structure (IS) Ce niveau attribue aux fonctions syntaxiques des constituants un rôle sémantique tel que le prédicat (appelé ici "gouverneur"), l'agent ou le thème. Il établit ensuite les liens qui les unissent. Exemple de représentation au niveau IS pour la même phrase.

Page 32: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

29

Cette dernière représentation (isfr) est transférée au niveau de représentation sémantique de la langue cible (isen), puis au niveau syntaxique (csen) et enfin au niveau morphologique (msen) qui nous donne la traduction de la phrase. Voici les différentes étapes ayant été nécessaires pour traduire la phrase :

msfr => csfr => isfr => isen => csen => msen Étant donné que le système CAT2 est un système multidirectionnnel, l'opération peut très bien se faire dans le sens inverse. Dans le cas où une analyse complète ne pourrait être effectuée par le programme, ce dernier offre la possibilité d'une traduction "mot à mot".

6.2.1.2 Règles Pour arriver à ces différents niveaux de représentation de la phrase, il faut un certain nombre de règles. La grammaire et le lexique ont des règles qui apparaissent sous la forme de structure arborescentes. Les traits et les structures d'un objet s'unifient avec une règle s'il n'y a pas de contradiction, c'est-à-dire qu'il n'y a pas d'attribut dans l'objet qui soit incompatible avec la valeur d'un attribut dans une règle. A la suite de l'unification, tout trait supplémentaire contenu dans la règle est instantié dans l'objet. Il existe quatre types de règles : b-rules, f-rules, t-rules et tf-rules.

6.2.1.2.1 b-rules (building rules) Ce sont des règles de réécriture qui définissent les structures arborescentes valables pour chaque niveau de représentation (ms, cs, is). Exemple:

@rule(b){cat=s}.[{cat=np},{cat=vp}].Pour obtenir une phrase (cat=s), il faut un groupe nominal (cat=np) + un groupe verbal (cat=vp).

6.2.1.2.2 f-rules (feature rules) Ces règles s'appliquent aux objets construits par les b-rules. Une f-rule peut-être de 3 types : - default rules : assignent des traits par défaut à une structure selon le principe de

l'unification, si l'objet correspond à la règle. Si l'unification échoue, l'objet reste inchangé.

- strict rules : conditions que doit remplir un objet pour pouvoir être généré. Si la structure de l'objet de correspond pas aux conditions, l'unification échoue et il n'y a pas de génération.

- filter rules : conditions ne devant pas être remplies par l'objet pour être généré. Exemple :

@rule(f)num_per = {cat=n,agr={num=sing,per=3}}.[].

Par défaut, un substantif (cat=n) correspond à la 3ème personne du singulier (agr={num=sing,per=3}).

Page 33: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

30

6.2.1.2.3 t-rules (transfer rules) Ces règles ont pour but d'effectuer le transfert entre les différents modules de représentation à l'intérieur d'une langue (ms�cs...) ou entre deux langues (isfr�isen). Elles transposent la structure décrite d'un côté de la flèche à l'autre côté de celle-ci. En fonction des flèches, ces règles peuvent être uni- ou bidirectionnelles. Exemple :

@rule(t){lex=car}�{lex=voiture}

6.2.1.2.4 tf-rules (transfer feature rules) Ces règles permettent de transférer les valeurs des traits entre deux niveaux de représentation comme les accords ou les temps. Dans les f-rules et les tf-rules, un ensemble de traits peut être séparé en deux parties par l'opérateur >>. Si l'ensemble des traits s'unifie avec le côté gauche d'une règle alors l'unification s'applique aussi à la partie droite.

6.2.1.3 Commandes CAT2 Mon travail a grandement été facilité par les commandes du système CAT2 qui proposent de nombreuses fonctionnalités qui permettent entre autres de vérifier l'application d'une règle, trouver où se situe une erreur dans la grammaire, afficher la structure de traits... Voici un inventaire rapide de principales fonctions de CAT2 : - trace : permet de visualiser le déroulement pas à pas d'une traduction. Lorsqu'une

unification échoue, le message "failed" apparaît à côté de la règle utilisée. - translate : permet de faire passer une phrase d'un niveau de représentation à un

autre. - show : permet de visualiser l'ensemble des traits ou la structure arborescente des

objets (cf. 6.2.1.1.2 et 6.2.1.1.3). - compare : très utile pour comparer différentes interprétations d'un objet ou

différents objets. - input : permet d'insérer les phrases à traduire, soit en chargeant un fichier, soit en

les saisissant. - load : charge les grammaires (langue source, langue cible, module de transfert). - history : historique des commandes déjà effectuées pour pouvoir les ré-exécuter.

6.3 Travaux effectués sur CAT2 M. Haller, qui a fortement contribué au développement de CAT2, m'a confié l'amélioration d'une grammaire française. Cette grammaire ne fonctionnait qu'à la troisième personne du singulier et du pluriel. De plus, la module d'analyse et de génération morphologique était trop volumineux car il contenait toutes les entrées lexicales, déjà présentes dans le lexique interne de la grammaire (@common(fr_lexicon)), avec toutes leurs formes fléchies (pluriel, conjugaison...).

Page 34: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

31

Pour résoudre ces problèmes, il a fallu introduire des règles de formalisation : - du pluriel des substantifs - du féminin et du pluriel des adjectifs - de la conjugaison des verbes avec l'introduction de nouveaux pronoms personnels.

6.3.1 Pluriel des substantifs Pour pouvoir traiter les substantifs et leurs pluriels, le programme dispose de deux modules : - le niveau de représentation morphologique (@level(msfr/morph/french))

Exemples : @level(msfr/morph/french).@rule(b).homme={cat=n,lex=homme,lemma=(homme;hommes),vpre=yes}.[].journal={cat=n,lex=journal,lemma=journal,agr={num=sing},vpre=no}.[].journaux={cat=n,lex=journal,lemma=journaux,agr={num=plu},vpre=no}.[].

- le lexique interne de la grammaire (@common(fr_lexicon))

Exemples : @common(fr_lexicon)@rule(b)homme={role=gov,cat=n,lex=homme,vpre=yes,gen=masc,semf=pers}.[].journal={role=gov,cat=n,lex=journal,gen=masc,vpre=no,semf=thing}.[].

Au niveau morphologique, ces règles permettent de définir si la chaîne de caractères entrée (lemma) est un substantif (cat=n). Pour "journal" et "journaux", le nombre (agr={num=sing}) et (agr={num=plu}) est intégré dans la règle car le pluriel de journal a une forme irrégulière. En général pour obtenir un pluriel en français, on ajoute "s" au singulier. C'est la raison pour laquelle les règles par défaut suivantes ont été introduites pour éviter de doubler les entrées pour les pluriels réguliers :

noun = {cat=(n;a),lex=S,lemma=S,agr={num=sing} }.[].nouns = {cat=(n;a),lex=S,lemma=S+s,agr={num=plu} }.[].

Ces règles stipulent qu'un lemma de type cat=n est un pluriel s'il correspond à une entrée du lexique (lex) à laquelle on ajoute le morphème grammatical marquant le pluriel "-s". A noter qu'une f-rule semblable existe aussi pour les adjectifs.

Page 35: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

32

La première étape de simplification du niveau de représentation du niveau morphologique fut de créer un lien entre celui-ci et le lexique. Pour cela, il fallait insérer entre la déclaration du niveau et les règles :

@level(msfr/morph/french).@call(fr_lexicon).@rule(b).

Cela évite ainsi de réécrire les entrées du lexique dans le niveau morphologique. Pour reconnaître un substantif, la règle par défaut suivante fut introduite :

@rule(f)nbase={lemma=X,lex=X,flex=reg,cat=n}>>{agr={num=sing}}.[].

Si le lemma correspond au lex de type cat=n et à flex=reg (pluriel régulier) alors on lui assigne grâce à l'opérateur >> le nombre singulier (agr={num=sing}). La formation du pluriel se fait à l'aide d'une b-rule.

@rule(b)n_plural={lemma=X+s,lex=X,flex=reg,cat=n,agr={num=plu}}.[{lemma=X,lex=X,cat=n,flex=reg,agr={num=sing}}].

Si un lemma se termine par un "-s" et sa forme sans cette terminaison correspond à un substantif régulier du lexique, alors c'est un pluriel. La partie entre crochet représente l'ensemble des traits de la forme de base. Pour déterminer la régularité ou l'irrégularité du pluriel d'un substantif, il faut rajouter le trait flex avec la valeur reg ou irreg selon le cas. Dans la règle de construction du pluriel, la restriction flex=reg permet de ne pas prendre en compte les pluriels irréguliers. Pour traiter ces pluriels, une règle semblable au pluriel régulier aurait pu être introduite. Cependant, établir des règles générales pour la construction des pluriels autres que les pluriels en "-s" alourdirait le niveau morphologique. La solution fut donc de rentrer dans l'entrée lexicale du substantif irrégulier sa forme au singulier et au pluriel. Exemple :

@common(fr_lexicon)journal={role=gov,cat=n,lex=journal,gen=masc,vpre=no,semf=thing,flex=irreg}&({lemma=journal,agr={num=sing}};{lemma=journaux,agr={num=plu}}).[].

Grâce à l'opérateur &, on peut introduire une disjonction portant sur la forme du substantif en fonction du nombre.

Page 36: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

33

6.3.2 Pluriel et féminin des adjectifs Concernant la formation du pluriel et du féminin des adjectifs la démarche est quasiment la même, ce qui permet d'obtenir les règles de flexions suivantes :

@level(msfr/morph/french).@call(fr_lexicon).@rule(b).a_fem={lemma=X+e,lex=X,cat=a,gen=fem,agr={num=sing}}.[{lemma=X,lex=X,cat=a,flex=reg,agr={num=sing}}].a_fem_plu={lemma=X+es,lex=X,cat=a,gen=fem,agr={num=plu}}.[{lemma=X,lex=X,cat=a,flex=reg,agr={num=sing}}].a_plural={lemma=X+s,lex=X,cat=a,gen=masc,agr={num=plu}}.[{lemma=X,lex=X,cat=a,flex=reg,agr={num=sing}}].@rule(f).abase={lemma=X,lex=X,flex=reg,cat=a}>>{gen=masc,agr={num=sing}}.[].afem={lemma=X+e,lex=X,flex=reg,cat=a}>>{gen=fem,agr={num=sing}}.[].

Il a fallu rajouter des règles pour la formation du féminin singulier et pour la formation du féminin pluriel. La différence avec les substantifs réside dans le fait que la valeur du genre des adjectifs a été incluse. Mais certains adjectifs présentent la particularité d'avoir une construction différente selon que le mot qu'ils précèdent commence par une voyelle ou une consonne. Exemples :

Un vieil ami. Le vieux bateau.

Comment déterminer si un mot commence par une voyelle ou par une consonne ? Pour chaque mot dans le lexique, on doit avoir le trait vpre. Lorsque que l'on a vpre=yes, la première lettre du mot est une voyelle et lorsque l'on a vpre=no, c'est une consonne. Le substantif "homme" possède la particularité de commencer par une consonne mais d'avoir vpre=yes. On ne prend pas seulement en considération l'aspect graphique du début des mots mais on prend aussi en considération l'aspect phonétique de celui-ci. Le mot "homme" commence par un "h-" muet, on considère par conséquent que ce mot commence par une voyelle pour donner "le vieil homme" et non "le vieux homme".De plus, il faut que l'adjectif possède le trait vpost qui détermine si le nom qui le suit doit commencer par une voyelle ou non. vpost=yes signifie que le nom doit commencer par une voyelle alors que vpost=no signifie qu'il ne doit pas commencer par une voyelle. Lorsqu'il n'y a aucune mention de vpost, cela signifie que l'adjectif convient quel que soit le début du mot suivant. La règle suivante permet de choisir la bonne forme pour l'adjectif :

@level(csfr/syntactic/french).@rule(f)voyelle2={cat=np}.[*,{cat=ap,vpost=V},{cat=n}>>{vpre=V},*].

Page 37: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

34

Dans un groupe nominal, la valeur du vpost du groupe adjectival doit avoir la même valeur que la valeur du vpre du nom. Cette particularité au niveau du changement des formes adjectivales était déjà prise en compte par l'ancienne grammaire. Mais au niveau morphologique, cela induisait une entrée supplémentaire pour chaque adjectif qui possédait déjà une entrée pour : - le masculin singulier - le masculin pluriel - le féminin singulier - le féminin pluriel. Pour inclure toutes les formes d'un adjectif irrégulier en une seule entrée, la méthode utilisée fut la même que pour les substantifs au pluriel irrégulier. L'utilisation de l'opérateur & permet ainsi une disjonction portant sur la forme de l'adjectif en fonction de son genre, de son nombre et de son vpost. Cela a d'ailleurs permis de désambiguïser l'adjectif "vieux" qui a la même forme au masculin singulier et au masculin pluriel.

vieux={role=gov,cat=a,lex=vieux,vpre=no,flex=irreg,apos=pre}&({lemma=vieux,agr={num=sing},gen=masc,vpost~=yes};{lemma=vieux,agr={num=plu},gen=masc};{lemma=vieil,vpost=yes,agr={num=sing},gen=masc};{lemma=vieille,agr={num=sing},gen=fem};{lemma=vieilles,agr={num=plu},gen=fem}).[].

6.3.3 Conjugaison des verbes Après les adjectifs et les substantifs, l'objectif était d'établir des règles permettant la conjugaison à toutes les personnes du présent et non plus seulement à la troisième personne du pluriel et du singulier. En nous basant sur la grammaire pour le portugais, des règles par défaut ont été écrites sur le modèle de la règle suivante : @level(msfr/morph/french).@rule(f)ent={cat=v,lemma=X+ent,lex=X+er}>>{agr={num=plu,per='3'}.[].

qui signifie que si le lemma se termine par "-ent" et qu'il correspond à un lex de type verbe, dont la terminaison est "-er", alors on lui attribue la valeur "3ème personne du pluriel". En plus de cette règle, il fallait ajouter à la définition du verbe dans le lexique toutes les formes conjuguées du verbe. Sur les formes conjuguées ambiguës, c'est-à-dire correspondant à plusieurs personnes (exemple : je programme, il programme), il fallait ajouter un trait agr permettant de donner le nombre et la personne. Voici comment était déclaré un verbe dans le lex :

Page 38: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

35

programmer={role=gov,cat=v,lex=programmer,frame={arg1={role=agent,cat=n},arg2={role=goal,cat=n}}}&({lemma=programme,agr={num=sing,per=1}};{lemma=programme,agr={num=sing,per=3}};{lemma=(programmes;programmons;programmez;programment;programmer)}).[].

Bien que simplifiant la grammaire d'origine tout en ajoutant des conjugaisons, il était encore nécessaire d'écrire toutes les formes conjuguées de chaque verbe dans le lexique. Pour résoudre ce problème une approche similaire à celle de la formation du pluriel des substantifs fut choisie. Cependant, contrairement aux substantifs ou aux verbes réguliers en anglais, le radical du verbe ne correspond pas au lexème. L'idée fut donc de remplacer le lex à l'infinitif (par exemple, "adopter") par le radical du verbe ("adopt") pour construire les règles suivantes :

@level(msfr/morph/french).@rule(b).ent={lemma=X+ent,lex=X,cat=v,flex=reg,tense={tns=pres},agr={num=plu,per='3'}}.[{lemma=X,lex=X,vform=infin}]....

Cette méthode implique non seulement de remplacer les lex dans le lexique de la mais aussi dans la grammaire de transfert vers l'anglais ce qui n'est pas très efficace.

@level(isen<=>isfr).@rule(t).atom={lex=participate}.[]<=> {lex=particip}.[].

Pour conserver l'infinitif du verbe en tant qu'entrée lexicale, un trait indiquant le radical (stem) a été introduit dans la grammaire, tout d'abord dans le lexique :

programmer={role=gov,cat=v,lex=programmer,stem=programm,flex=reg,vpre=no,frame={arg1={role=agent,cat=n},arg2={role=goal,cat=n}}}.[].

et ensuite dans la règle de construction de la conjugaison des verbes dans le niveau morphologique :

ent={lemma=X+ent,lex=X+er,stem=X,cat=v,flex=reg,tense={tns=pres},agr={num=plu,per='3'}}.[{lemma=X+er,stem=X,lex=X+er,vform=infin}].

Si le radical du lemma + "-ent" et du lex +"-er" correspondent au stem du verbe, alors ce verbe est à la 3ème personne du pluriel. La partie de droite de la règle correspond à la définition de la forme de base du verbe, c'est-à-dire le verbe à l'infinitif.

Page 39: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

36

Le trait flex=reg permet de ne pas tenir compte des verbes ayant une construction irrégulière comme "prendre". Dans ce cas-là, il faut entrer toutes leurs formes accompagnées de leur nombre et de leur personne.

prendre={role=gov,cat=v,lex=prendre,vpre=no,frame={arg1={role=agent,cat=n},arg2={role=goal,cat=n}}}&({lemma=prends,agr={num=sing,per=1}};{lemma=prends,agr={num=sing,per=2}};{lemma=prend,agr={num=sing,per=3}};{lemma=prenons,agr={num=plu,per=1}};{lemma=prenez,agr={num=plu,per=2}};{lemma=prennent,agr={num=plu,per=3}}).[].

Cependant, la conjugaison des verbes est très variée en français. Les trois groupes de conjugaisons présentent chacun de nombreuses particularités. Nous avons donc tenté de trouver des règles de généralisation de la flexion des verbes. Les verbes n'entrant pas dans le cadre de ces règles ont donc été considérés comme irréguliers. Au cours des essais effectués sur la grammaire française, nous nous sommes rendus compte que le programme avait du mal à traduire le pronom personnel sujet à la 1ère personne du singulier. En effet, "I" était traduit en français par "je" et "j", quel que soit le verbe suivant. Dans le lexique "je" et "j" ne possédaient pas de vpost, il a donc fallu les inclure. Comme pour l'adjectif, il a fallu ajouter une règle dans le module syntaxique pour déclarer que la valeur du vpost d'un groupe nominal devait avoir la même valeur que le vpre du groupe verbal pour s'unifier et ainsi choisir le bon pronom.

voyelleS={cat=s}.[{cat=np,type=pron,vpost=V},{cat=v}>>{vpre=V}].

De plus les traits vpost et vpre ont été ajoutés dans la règle de construction syntaxique de la phrase de type GN + GV.

@level(csfr/syntactic/french).@rule(f).np_vp_agr={cat=s,tense=T}.[*,{cat=np,vpost=V,agr=A,gen=G},{}>>{vpre=V,agr=A,gen=G,tense=T},*].

6.4 Conclusion En créant des règles de construction pour le pluriel des substantifs et des adjectifs et pour la conjugaison des verbes, la grammaire est désormais plus efficace dans l'analyse et la génération morphologiques. Cependant, d'autres problèmes doivent encore être résolus. C'est le cas, par exemple, des adjectifs possessifs. En français, ceux-ci s'accordent avec le genre et le nombre de "l'objet possédé" et avec la personne du "possesseur", alors qu'en anglais l'accord ne se fait qu'avec le genre et le nombre du "possesseur". Exemples : "Le fils regarde sa mère"�"The son looks at his mother". Pour résoudre ce problème ainsi que d'autres, ma collaboration avec l'IAI a été prolongée. J'ai pu ainsi continuer mon expérience dans la traduction automatique et acquérir plus de connaissances dans le développement de grammaires.

Page 40: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

37

Conclusion Vers la fin de notre stage, nous avons commencé à travailler sur d'autres projets (évaluation de systèmes d'indexation, localisation en français d'un logiciel et promotion d'un programme développé à l'IAI). Pour pouvoir continuer à travailler sur ces projets et sur CAT2, je me suis vu proposer un contrat de 3 mois à l'IAI. L'objectif de l'évaluation des systèmes d'indexation était de comparer l'efficacité des deux systèmes d'indexation automatique développés à l'IAI, Multidesc et Indexierung, par rapport à un indexeur humain pour l'Institut de recherche sur l'économie internationale de Hambourg (HWWA). L'indexation automatique permet d'extraire les mots-clés d'un texte. Cette évaluation portait sur 100 textes. La localisation portait sur un logiciel de valorisation des véhicules en fin de vie développé par un institut allemand. Suite à une directive de l'UE, chaque constructeur automobile devra à l'avenir recycler ses véhicules. La localisation est un travail qui consiste non seulement en la traduction des menus et des boutons mais aussi en une adaptation linguistique, technique et légale. Pour effectuer cette localisation, nous nous sommes référés à des sites Internet spécialisés dans l'automobile et aux lexiques disponibles à l'IAI. Dans un souci de cohérence terminologique, Déjà Vu a été utilisé. On nous a également confié la promotion du logiciel LiLa ("Linguistisch intelligente Lehrwerksanalyse"), développé à l'IAI, auprès d'éditeurs français de manuels pédagogiques. Ce logiciel permet d'aider à la conception de manuel d'apprentissage des langues ainsi que le suivi de l'élève ou de l'étudiant. Cette expérience à l'IAI est un premier pas dans le monde des industries de la langue qui m'a permis d'appliquer ce qui a été appris durant la formation théorique à Metz. Mais cela m'a surtout permis d'acquérir de nouvelles connaissances dans le traitement automatique de la langue par l'utilisation, l'évaluation ou le développement d'outils linguistiques. J'ai pu ainsi découvrir "de l'intérieur" des domaines connus du TALN tels que la traduction automatique, ou d'autres moins connus mais tout aussi important tels que l'extraction de termes. Alors que la compréhension et la manipulation du langage se font de manière naturelle par l'être humain, celles-ci demeurent un véritable défi pour l'ordinateur. Le TALN représente une des plus complexes applications de traitement des données. Le problème repose dans la nature du langage lui-même et dans la manière dont il interagit avec le monde autour de nous. Grâce à ce stage, j'ai pu découvrir non seulement le fonctionnement des outils développés à l'IAI, mais aussi en apprendre un peu plus sur le mécanisme du langage. Les recherches et les travaux effectués par l'IAI montrent que le traitement automatique du langage est possible, mais compte tenu du mécanisme complexe et l'évolution constante des langues, la tâche des industries de la langue est loin d'être achevée.

Page 41: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

38

Références Pour les différents travaux effectués à l'IAI et pour la redaction de ce rapport, j'ai eu recours à de nombreuses ressources. La plupart de ces ressources étaient directement disponibles à l'Institut, ou consultables sur Internet. Références bibliographiques Oliver Streiter. 1996. Linguistic Modeling For Multilingual Machine Translation. Informatik. Shaker Verlag, Aachen. Oliver Streiter. 1998. A Semantic Description Language for Multilingual NLP. The Tuscan Word Centre-Institut für Deutsche Sprache Workshop on Multilingual Lexical Semantics, 19-21 June 1998. Munpyo Hong & Oliver Streiter. 1999. Overcoming the Language Barriers in the Web: The UNL-Approach. GLDV. Randall Sharp. 1994. CAT2 Reference Manual Version 3.6. IAI Working Paper N°.27. Nadia Mesli. 1991. Analyse et Traduction Automatique de Constructions à Verbe Support dans le Formalisme CAT2. IAI Working Paper N°.19b. Michael Carl, Catherine Pease & Oliver Streiter. 1999. Linking Example-Based and Rule-Based Machine Translation. Oliver Streiter, Michael Carl & Johann Haller. 2000. Hybrid Approaches to Machine Translation. IAI Working Paper N°.36. John Hutchins. 1998. Twenty Years of Translating and the Computer. Proceedings, London: Aslib, 1998. Paul W. Abrahams & Bruce R. Larson. 1995. Unix for the impatient - Second Edition. Addison Wesley. Sites Web (au 19/09/00) Le site de l'IAI www.iai.uni-sb.de Page web sur le projet UNL sur le site GETA-CLIPS de Grenoble http://clips.imag.fr/projets/unl/ Site de l'Université des Nations Unies dédié au projet UNL http://www.unl.ias.unu.edu/

Page 42: Traitement Automatique du u Langage Naturel à l'IAI I · 2010. 1. 7. · Le traitement automatique de la langue à Sarrebruck Le traitement automatique du langage naturel est un

Patrick Da Costa DESS IdL 2000

39

Centre d'expertise et de veille inforoutes et langues (CEVEIL) http://www.ceveil.qc.ca/ Dictionnaire électronique publié par l'AUPELF-UREF et Hachette http://www.francophonie.hachette-livre.fr/ Eurodicautom : base de données terminologiques multilingue de l'Union Européenne http://eurodic.ip.lu/ Glossaire abrégé de la terminologie (ISO 1087, ISO 5127) http://www.c-l.com/emu/te/glos-iso/h_iso_fr.htm Introduction à la linguistique française de la Queen's University à Kingston http://qsilver.queensu.ca/french/Cours/215/