Difference between revisions of "Hectoralos/GSOC 2020 rapport final"

From Apertium
Jump to navigation Jump to search
 
(51 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Introduction==
==Introduction==
Ce document décrit le travail réalisé par [[User:hectoralos|Hèctor Alòs]] dans le cadre du [https://summerofcode.withgoogle.com Google Summer of Code 2020]. Le projet a été supervisé par [[User:xavivars|Xavi Ivars]] et [[User:grfro3d|Gianfranco Fronteddu]]
Ce document décrit le travail réalisé par [[User:hectoralos|Hèctor Alòs]] entre le 1<sup>er</sup> juin et le 31 août 2020 dans le cadre du [https://summerofcode.withgoogle.com Google Summer of Code 2020]. Le projet a été supervisé par [[User:xavivars|Xavi Ivars]] et [[User:grfro3d|Gianfranco Fronteddu]]


==Commits==
==Commits==
Line 7: Line 7:
==Buts et plan de travail==
==Buts et plan de travail==


Les buts du projet et le plan de travail sont décrits dans [[User:Hectoralos/GSOC_2020_proposal:_French-Arpitan|la proposition que j'ai fait]] début février. Il s'agissait de construire un traducteur bidirectionnel français-arpitan. L'arpitan n'était pas encore introduit dans Apertium, donc j'ai dû créer le référentiel [[https://github.com/apertium/apertium-frp apertium-frp]]. Entre les différentes normes orthographiques utilisées pour l'arpitan, le projet a choisi la norme ORB, qui est supra-dialectale. Un grand avantage de cette norme est qu'on a déjà fait un très grand travail de choix entre les très nombreuses formes des mots et des morphèmes pour tout le territoire où la langue est parlée, tandis que les autres orthographes n'ont pour objet qu'un dialecte particulier. Il faut aussi noter que la plupart de la [[https://frp.wikipedia.org ''Vouiquipèdia'' arpitane]] utilise cette orthographe et qu'il existe [http://arpitan.eu/ un site extrêmement utile]] avec des dictionnaires en ligne.
Les buts du projet et le plan de travail sont décrits dans [[User:Hectoralos/GSOC_2020_proposal:_French-Arpitan|la proposition que j'ai faite]] début février. Il s'agissait de construire un traducteur bidirectionnel français-arpitan. L'arpitan n'était pas encore introduit dans Apertium, donc j'ai dû créer le référentiel [https://github.com/apertium/apertium-frp apertium-frp]. Entre les différentes normes orthographiques utilisées pour l'arpitan, le projet a choisi la norme ORB, qui est supra-dialectale. Un grand avantage de cette norme est qu'on a déjà fait un très grand travail de choix entre les très nombreuses formes des mots et des morphèmes pour tout le territoire où la langue est parlée, tandis que les autres orthographes n'ont pour objet qu'un dialecte particulier. Il faut aussi noter que la plupart de la [https://frp.wikipedia.org ''Vouiquipèdia'' arpitane] utilise cette orthographe et qu'il existe [http://arpitan.eu/ un site extrêmement utile] avec des dictionnaires en ligne.


==Développement du projet==
==Développement du projet==


Le projet a compté des le début avec le support incommensurable de Dominique Stich, créateur de l’ORB, et Alain Favre, co-auteur avec Stich d’un dictionnaire français-savoyard et éditeur du dictionnaire français-francoprovençal de Stich. Les deux ont permis l’utilisation de ce dictionnaire. Stich en a donné une version électronique actualisée, qui est la base des dictionnaires apertium-frp et apertium-fra-frp. Stich et Favre le long de tout le projet ont aidé à les compléter avec plusieurs milliers de mots chacun. Le résultat est que le dico arpitan d'Apertium a plus de 6 500 entrées qui ne sont pas dans le dictionnaire de Stich. Le contact avec lui au sujet de questions lexiques et grammaticales a été permanent. Les nombreuses remarques de Favre sur des traductions faites a l’aide de [https://beta.apertium.org beta.apertium.org] ont été extrêmement utiles. C’est pour cela que les résultats du projet sont nettement meilleurs que prévu en février. Je suis énormement reconnaissant à tous les deux pour leur dévouement. Évidemment, cela ne veut pas dire que le traducteur n’ai pas d’erreurs (ce serait impossible qu’il n’en ait pas), ni qu’on puisse leur imputer ces erreurs de quelque manière que ce soit.
Le projet a compté des le début avec le support incommensurable de Dominique Stich, créateur de l’ORB, et Alain Favre, co-auteur avec Stich d’un dictionnaire français-savoyard et éditeur du dictionnaire français-francoprovençal de Stich. Les deux ont permis l’utilisation de ce dictionnaire. Stich en a donné une version électronique actualisée, qui est la base des dictionnaires [https://github.com/apertium/apertium-frp/blob/master/apertium-frp.frp.metadix apertium-frp] et [https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.dix apertium-fra-frp]. Stich et Favre le long de tout le projet ont aidé à les compléter avec plusieurs milliers de mots chacun. Le résultat est que le dico arpitan d'Apertium a plus de 6 500 entrées (sans compter les noms propres) qui ne sont pas dans le dictionnaire de Stich. Le contact avec lui au sujet de questions lexiques et grammaticales a été permanent. Les nombreuses remarques de Favre sur des traductions faites a l’aide de [https://beta.apertium.org beta.apertium.org] ont été extrêmement utiles. C’est pour cela que les résultats du projet sont nettement meilleurs que prévu en février. Je suis énormement reconnaissant à tous les deux pour leur dévouement. Évidemment, cela ne veut pas dire que le traducteur n’ai pas d’erreurs (ce serait impossible qu’il n’en ait pas), ni qu’on puisse leur imputer ces erreurs de quelque manière que ce soit.


Ci-dessous j'explique plutôt les résultats du système, avec son architecture et ses différents éléments. Pour voire une chronologie du développement, on peut consulter le [https://wiki.apertium.org/wiki/Hectoralos/GSOC_2020_work_plan_control journal du projet].
Ci-dessous j'explique plutôt les résultats du système, avec son architecture et ses différents éléments. Pour voire une chronologie du développement, on peut consulter le [https://wiki.apertium.org/wiki/Hectoralos/GSOC_2020_work_plan_control journal du projet].
Line 19: Line 19:
====Le dictionnaire arpitan====
====Le dictionnaire arpitan====


J’ai investi beaucoup de temps sur le dictionnaire arpitan. Malgré la standardisation de l’ORB les textes écrits avec cette norme ont encore une grande variété. La norme différencie entre « graphie large » et « graphie serrée ». La première est l’essai de trouver une espèce de juste milieu entre les très nombreuses formes locales, mais au prix de l'utiliser une orthographe plus étymologique et plus éloignée des réalisations phonétiques concrètes de chaque lieu. La deuxième permet de se rapprocher aux formes locales, au prix de la multiplication des mots et des formes fléchies. J’ai concentré les efforts dans la production de textes en graphie large, ce qui implique que la traduction de textes arpitans au français est nettement pire.
J’ai investi beaucoup de temps sur le dictionnaire arpitan. Malgré la standardisation de l’ORB, les textes écrits avec cette norme ont encore une grande variété. La norme différencie entre « graphie large » et « graphie serrée ». La première est l’essai de trouver une espèce de juste milieu entre les très nombreuses formes locales, mais au prix d'utiliser une orthographe plus étymologique et plus éloignée des réalisations phonétiques concrètes de chaque lieu. La deuxième permet de se rapprocher aux formes locales, au prix de la multiplication des mots et des formes fléchies. J’ai concentré les efforts dans la production de textes en graphie large, ce qui implique que la traduction de textes arpitans au français est nettement pire.


Mais il y a encore de nombreux détails qui restent sujet de discussion dans l’ORB, en général, et la « graphie large » en particulier. L’effacement, voire la disparition, des terminaisons dans la plupart des variétés arpitanes complique les choses. Quant au lexique et la morphologie, les questions où j’ai trouvé de nombreuses contradictions dans les textes sont :
Mais il y a encore de nombreux détails qui restent sujet de discussion dans l’ORB, en général, et la « graphie large » en particulier. L’effacement, voire la disparition, des terminaisons dans la plupart des variétés arpitanes complique les choses. Quant au lexique et la morphologie, les questions où j’ai trouvé de nombreuses contradictions dans les textes sont :
Line 27: Line 27:
* Dans les gentilés qui terminent en '''-ois''' en français, en suivant Stich, j’utilise presque toujours '''-ouès''', mais parfois, à la demande de Favre, '''-ês''' est choisi.
* Dans les gentilés qui terminent en '''-ois''' en français, en suivant Stich, j’utilise presque toujours '''-ouès''', mais parfois, à la demande de Favre, '''-ês''' est choisi.
* La terminaison '''-ologo''' est préférée aux dépens d’'''-ologue''' et '''-ologisto'''.
* La terminaison '''-ologo''' est préférée aux dépens d’'''-ologue''' et '''-ologisto'''.
* Il y a de très nombreuses inconsistances dans les toponymes de la ''Vouiquipèdia'', avec, par exemple, quatre formes différentes pour New York, des terminaisons '''-ia''' et '''-ie''', '''-landa''' et '''-lande''', etc. Stich a bien voulu fournir une liste de tous les états avec ses gentilés, ainsi que de nombreux autres toponymes. Quand même, la ''Vouiquipèdia'' est restée une source majeure. Il faudrait encore travailler davantage sur certains toponymes parce que le choix d’'''a''' ou '''â''', '''o''' ou '''ô''' en fin de mot ne semble pas consistant.
* Il y a de très nombreuses inconsistances dans les toponymes de la ''Vouiquipèdia'', avec, par exemple, trois formes différentes pour '''New York''' (une quatrième est trouvée ailleurs), des terminaisons '''-ia''' et '''-ie''', '''-landa''' et '''-lande''', etc. Stich a bien voulu fournir une liste de tous les états avec ses gentilés, ainsi que de nombreux autres toponymes. Quand même, la ''Vouiquipèdia'' est restée une source majeure. Il faudrait encore travailler davantage sur certains toponymes parce que le choix d’'''a''' ou '''â''', '''o''' ou '''ô''' en fin de mot ne semble pas consistant.
* Les pronoms démonstratifs, qui sont remarquablement différents selon la région (comme dans d'autres langues romanes) sont matière de discussion. J'ai choisi les formes recommandées par Stich.
* Les pronoms démonstratifs, qui sont remarquablement différents selon la région (comme dans d'autres langues romanes), sont matière de discussion. J'ai choisi les formes recommandées par Stich.
* On rencontre de nombreuses conjugaisons possibles des verbes. On trouve le même verbe conjugué comme inchoatif ou non inchoatif, il peut subir une mutation vocalique ('''a > â''', '''o > ô''', '''e > è''', etc.) ou non, etc. J'ai choisi les formes recommandées par Stich.
* On rencontre de nombreuses conjugaisons possibles des verbes. On trouve le même verbe conjugué comme inchoatif ou non inchoatif, il peut subir une mutation vocalique ('''a > â''', '''o > ô''', '''e > è''', etc.) ou non, etc. J'ai choisi les formes recommandées par Stich.
* Il y a de nombreuses hésitations dans l'utilisation d' '''â''' ou '''a''', d' '''è''' ou '''e''', voire '''é''' et même '''ê''', d' '''e''' ou '''i''', de '''cll''' ou '''cl''', '''fll''' ou '''fl''', etc. Cela cause de nombreux problèmes pour reconnaître les mots dans les traductions de l'arpitan.
* Il y a de nombreuses hésitations dans l'utilisation d' '''â''' ou '''a''', d' '''è''' ou '''e''', voire '''é''' et même '''ê''', d' '''e''' ou '''i''', de '''cll''' ou '''cl''', '''fll''' ou '''fl''', etc. Cela cause beaucoup de problèmes pour reconnaître les mots dans les traductions de l'arpitan.
* Il y a des hésitations dans les participes des verbes du premier groupe si la forme du féminin doit se différencier de celle du masculin ou non. J'ai choisi de faire la distinction pour les verbes terminés en '''ar''' (je génère '''-âye(s)''') et de ne pas le faire pour ceux terminés en '''(i)ér''' (je génère '''-ê(s)''').
* Il y a des hésitations dans les participes des verbes du premier groupe si la forme du féminin doit se différencier de celle du masculin ou non. J'ai choisi de faire la distinction pour les verbes terminés en '''ar''' (je génère '''-âye(s)''') et de ne pas le faire pour ceux terminés en '''(i)ér''' (je génère '''-ê(s)''').


Puisque le but principal du traducteur du français à l’arpitan est de traduire des articles pour la ''Vouiquipèdia'', nous avons travaillé pas mal sur la toponymie, l’onomastique et la terminologie scientifique, dans des domaines comme les mathématiques, la physique, la biochimie, la zoologie et la botanique. Évidemment, le temps est très limité, donc il reste encore beaucoup de travail. Nous avons aussi travaillé sur la terminologie sociopolitique en testant le traducteur sur des nouvelles d’actualité. [http://arpitan.eu Lo Trèsor Arpitan] a été très souvent consulté, mais il faudrait à l’avenir d’en extraire tout le vocabulaire (et, éventuellement, de lui en fournir).
Puisque le but principal du traducteur du français à l’arpitan est de traduire des articles pour la ''Vouiquipèdia'', nous avons travaillé pas mal sur la toponymie, l’onomastique et la terminologie scientifique, dans des domaines comme les mathématiques, la physique, la biochimie, la zoologie et la botanique. Évidemment, le temps est très limité, donc il reste encore beaucoup de travail, par exemple en ce qui concerne le sport. Nous avons aussi travaillé sur la terminologie sociopolitique en testant le traducteur sur des nouvelles d’actualité. [http://arpitan.eu Lo Trèsor Arpitan] a été très souvent consulté, mais il faudrait à l’avenir d’en extraire tout le vocabulaire (et, éventuellement, de lui en fournir).


En ce qui concerne la flexion des mots, les verbes (comme dans toutes les langues romanes) ont été particulièrement difficiles. J’ai dû consulter Stich maintes fois à ce sujet, bien que de nombreuses informations sur la conjugaison des verbes sont déjà dans son dictionnaire. Le résultat peut être vu dans [https://hectoralos.github.io/ un très simple site web] pour les verbes arpitans que j’ai créé surtout pour m'orienter moi-même.
En ce qui concerne la flexion des mots, les verbes (comme dans toutes les langues romanes) ont été particulièrement difficiles. J’ai dû consulter Stich maintes fois à ce sujet, bien que de nombreuses informations sur la conjugaison des verbes sont déjà dans son dictionnaire. Le résultat peut être vu dans [https://hectoralos.github.io/ un très simple site web] pour les verbes arpitans que j’ai créé surtout pour m'orienter moi-même.
Line 41: Line 41:
Il faudrait encore dire que le dictionnaire n’utilise pas, en principe, de point intérieur ('''ch·''', '''g·''', '''j·''') puisque les utilisateurs de l’ORB ont décidé de ne plus l’utiliser. Cependant, on continue à le trouver sur la ''Vouiquipèdia'' et d’autres textes, c’est pourquoi j’ai dû l’ajouter pour nombre de mots.
Il faudrait encore dire que le dictionnaire n’utilise pas, en principe, de point intérieur ('''ch·''', '''g·''', '''j·''') puisque les utilisateurs de l’ORB ont décidé de ne plus l’utiliser. Cependant, on continue à le trouver sur la ''Vouiquipèdia'' et d’autres textes, c’est pourquoi j’ai dû l’ajouter pour nombre de mots.


À cause de l'utilisation dans les textes de beaucoup de formes « non normatives », le dictionnaire utilise différents paradigmes qui permettent leur reconnaissance sans créer des milliers d'entrées difficiles à gérer (et qu'il faudrait ajouter dans le dico bilingue, ce que nous évitons). Ainsi, par exemple, tous les noms terminés en '''-ie''' ont dans sa définition morphologique une forme secondaire avec la terminaison '''-ia''' et tous les adjectifs terminés en '''-al''' en ont avec '''-âl''', '''-âla''', '''-âls''', '''-âles''' et même '''-ox'''. De cette façon on traduit sans problèmes, par exemple, *'''filosofia''' et *'''horizontâl''', mais sur les dicos on n'a que les entrées '''filosofie''' et '''horizontal''' ; ni *'''filosofia''' ni *'''horizontâl''' ne seront considérés corrects par le correcteur orthographique).
Le choix a été fait de générer une seule forme d'arpitan ''large'', pour toutes les régions. Par exemple, les démonstratifs du type '''ce-''' sont choisis et non ceux du type '''(i)que''' ; les jours de la semaine avec '''di-''' au lieu de '''-di''' ; la terminaison '''-ens''' pour la première personne du pluriel au lieu d' '''-ons''' ; la conjugaison de verbe '''étre''' avec l'auxiliaire '''avêr''' au lieu d'utiliser le verbe '''étre''' lui-même, etc. Un choix unique dans tous les cas est la solution la plus simple et, avec les sources dont je dispose, je n'ai guère d'information sur la région où un certain mot, flexion ou tournure sont utilisés. Cependant il est très possible que l'arpitan produit par le traducteur soit ressenti comme trop « large ». Les utilisateurs, s'ils veulent, devront « localiser » les textes produits, en les adaptant à leur variété.

Le choix a été fait de générer une seule forme d'arpitan ''large'', pour toutes les régions. Par exemple, les démonstratifs arpitans du type '''ce-''' sont choisis et non ceux du type '''(i)que-''' ; l'article '''lo''' au lieu de '''le''' et '''una''' au lieu de '''na''' ; les jours de la semaine commençant par '''de''' et non ceux finissant par '''di''' (p. ex. '''delon''' et pas '''londi''', '''lon''' ou '''delion''') ; la terminaison '''-ens''' pour la première personne du pluriel au lieu d'<b>-ons</b> ; la conjugaison du verbe '''étre''' avec l'auxiliaire '''avêr''' au lieu d'utiliser le verbe '''étre''' lui-même, etc. Un choix unique dans tous les cas est la solution la plus simple et, avec les sources dont je dispose, je n'ai guère d'information sur la région où un certain mot, flexion ou tournure sont utilisés. Cependant il est très possible que l'arpitan produit par le traducteur soit ressenti comme trop « large ». Les utilisateurs, s'ils le veulent, devront « localiser » les textes produits, en les adaptant à leur variété.

Le dico arpitan d'Apertium a 51 071 entrées, desquelles 28 404 sont des noms propres et 22 667 ne le sont pas. En particulier, on a 12 149 noms communs, 4193 adjectifs, 4250 verbes et 926 adverbes. La plupart des noms propres sont des noms de famille (20 588) et des prénoms (5819). Il faut signaler que nous avons travaillé sur l'adaptation des noms propres russes, ukrainiens, biélorusses et, de façon moins systématique, grecs aux normes de l'ORB. On a donc '''Tchaykovski''', '''Tchèkhov''', '''Tolstoy''', '''Lènine''' et '''Alèksièvitch''', ainsi qu'<b>Antigona</b>, '''Sofoclo''', '''Pitagoro''', '''Dèmostèno''' et '''Eclido/Uclido''' (avec deux formes possibles).


====Les règles d’élision et contraction====
====Les règles d’élision et contraction====


Les règles d’élision et contraction sont pratiquement celles du français. Le traducteur arpitan-français accepte bien l’élision des pronoms personnels sujet de la deuxième et troisième personnes du singulier, de l’article indéfini féminin, des adjectifs possessifs de la première et deuxième personne du pluriel et d’autres, mais ne fait pas ces élisions dans la traduction de français à l’arpitan.
Les règles d’élision et contraction sont pratiquement celles du français. Le traducteur arpitan-français accepte bien l’élision des pronoms personnels sujet de la deuxième et troisième personnes du singulier, de l’article indéfini féminin, des adjectifs possessifs de la première et deuxième personne du pluriel et d’autres, mais ne fait pas ces élisions dans la traduction du français à l’arpitan.


====La désambiguïsation morphologique (traitement de l'homonymie)====
====La désambiguïsation morphologique (traitement de l'homonymie)====


Le traducteur utilise le tagueur français (fra.prob, renommé frp.prob). J’ai réécrit une bonne partie des règles du désambiguïsateur CG du français en utilisant l’opérateur d’unification && (qui n’est pas utilisé pour le français). Cela rend ces règles plus compactes, lisibles et maintenables. Cette solution était en principe provisoire. J’avais prévu d’étiqueter un corpus pour entraîner un tagueur statistique, mais la solution provisoire c’est avérée satisfaisante et je n’ai pas investi du temps pour cela. Peut-être quand par la suite on travaille plus intensivement dans la traduction de textes arpitans trouvera-t-on que cet étiquetage vaut la peine.
Le traducteur utilise le tagueur français (<code>fra.prob</code>, renommé <code>frp.prob</code>). J’ai réécrit une bonne partie des règles du [https://wiki.apertium.org/wiki/Apertium_et_les_contraintes_grammaticales_(vislcg3) désambiguïsateur CG] du français en utilisant l’opérateur d’unification <code>&&</code> (qui n’est pas utilisé pour le français). Cela rend ces règles plus compactes, lisibles et maintenables. Cette solution était en principe provisoire. J’avais prévu d’étiqueter un corpus pour entraîner un tagueur statistique, mais la solution provisoire c’est avérée satisfaisante et je n’ai pas investi du temps pour cela. Peut-être quand par la suite on travaille plus intensivement dans la traduction de textes arpitans trouvera-t-on que cet étiquetage vaut la peine.


===Le référentiel apertium-fra===
===Le référentiel apertium-fra===
Line 55: Line 59:
Les différentes parties du [https://github.com/apertium/apertium-fra référentiel français d'Apertium] étaient tout à fait fonctionnelles déjà. J'ai donc dû y investir très peu de temps. J'ai ajouté des mots au dico et plus de règles désambiguïsation morphologique. Deux nouvelles catégories ont été ajoutées au dico et à ces règles :
Les différentes parties du [https://github.com/apertium/apertium-fra référentiel français d'Apertium] étaient tout à fait fonctionnelles déjà. J'ai donc dû y investir très peu de temps. J'ai ajouté des mots au dico et plus de règles désambiguïsation morphologique. Deux nouvelles catégories ont été ajoutées au dico et à ces règles :


* Les préfixes (''pref''), pour traiter les préfixes écrits avec un trait d'union
* Les préfixes (<code>pref</code>), pour traiter les préfixes écrits avec un trait d'union
* Les adverbes post-fixés (''postadv''), pour traiter les particules '''-ci''' et '''-là'''
* Les adverbes post-fixés (<code>postadv</code>), pour traiter les particules '''-ci''' et '''-là'''


Puisqu'il s'agit d'ajouts ils n'interfèrent pas avec les autres paires de langues qui les analysent d'autres façons.
Puisqu'il s'agit d'ajouts, ils n'interfèrent pas avec les autres paires de langues qui les analysent d'autres façons.


===Le référentiel apertium-fra-frp===
===Le référentiel apertium-fra-frp===
Line 64: Line 68:
Le référentiel bilingue consiste en un dictionnaire bilingue, des règles de sélection lexique, des règles de transfert et, pour le traducteur du français à l’arpitan, des règles de synthèse et décomposition de locutions.
Le référentiel bilingue consiste en un dictionnaire bilingue, des règles de sélection lexique, des règles de transfert et, pour le traducteur du français à l’arpitan, des règles de synthèse et décomposition de locutions.


L’architecture est assez différente pour les deux côtés de la traduction. Du côté français-arpitan on a :
L’architecture est un peu différente pour les deux côtés de la traduction. Du côté français-arpitan on a :


<pre>
<pre>
Line 70: Line 74:


> (1) analyseur morphologique
> (1) analyseur morphologique
> (2) tagueur d’Apertium
> (2) tagueur CG
> (3) tagueur CG
> (3) tagueur statistique
> (4) synthèse de locutions françaises
> (4) synthèse de locutions françaises
> (5) sélection lexicale
> (5) sélection lexicale
Line 88: Line 92:


> (1) analyseur morphologique
> (1) analyseur morphologique
> (2) tagueur d’Apertium
> (2) tagueur CG
> (3) tagueur CG
> (3) tagueur statistique
> (4) synthèse de locutions arpitanes
> (4) sélection lexicale
> (5-9) transfert en 5 étapes
> (5) sélection lexicale
> (10) générateur français
> (6-10) transfert en 5 étapes
> (11) décomposition de locutions françaises
> (11) élisions et contractions
> (12) générateur français
> (13) élisions et contractions


> texte en français
> texte en français
</pre>
</pre>


(Je n'affiche ici que les modules dans lesquels il y a des données dans les trois référentiels apertium-frp, apertium-fra et appertium-fra-frp. Il y a quelques étapes ''automatiques'' en plus dans le pipeline d'Apertium. Pour plus de détail, voire : [[Apertium system architecture]].)
(Je n'affiche ici que les modules dans lesquels il y a des données dans les trois référentiels <code>apertium-frp</code>, <code>apertium-fra</code> et <code>appertium-fra-frp</code>. Il y a quelques étapes ''automatiques'' en plus dans le pipeline d'Apertium. Pour plus de détail, voire : [[Apertium system architecture]].)


====Le dictionnaire bilingue====
====Le dictionnaire bilingue====


Le dictionnaire bilingue a comme base le dictionnaire français-arpitan de Dominique Stich. L'auteur a bien voulu m'indiquer le choix préférable en cas de synonymie de traductions à l'arpitan, mais cette information m'a manqué dans le sens inverse, c'est pourquoi pas tous les mots arpitans présents de le dico de Stich ont une traduction au français dans le nôtre.
Le dictionnaire bilingue a comme base le dictionnaire français-arpitan de Dominique Stich. L'auteur a bien voulu m'indiquer le choix préférable (géographiquement plus large) en cas de synonymie de traductions à l'arpitan, mais cette information m'a manqué dans le sens inverse, c'est pourquoi pas tous les mots arpitans présents de le dico de Stich n'ont une traduction au français dans le nôtre.


En général, les préférences entre synonymes sont faites dans le dictionnaire même (à l'aide de r="LR", r="RL" et i="yes"), tandis que le choix entre traductions avec des sens différents est fait moyennant des règles de sélection lexicale. Il y a près de 1300 traductions inhibées dans les deux sens (i="yes") qui, pourtant, restent dans le dico pour conserver l'équivalence et faciliter son possible activation par la suite. Ces traductions ne sont pas comptées dans les chiffres statistiques du dico (voire ci-dessous).
En général, les préférences entre synonymes sont faites dans le dictionnaire même (à l'aide de <code>r="LR"</code>, <code>r="RL"</code> et <code>i="yes"</code>), tandis que le choix entre traductions avec des sens différents est fait moyennant des règles de sélection lexicale. Il y a près de 1300 traductions inhibées dans les deux sens (<code>i="yes"</code>) qui, pourtant, restent dans le dico pour conserver l'équivalence et faciliter leur possible activation par la suite.

Sans compter ces traductions inhibées, le dico bilingue a 53 256 entrées, desquelles 28 481 sont des noms propres et 24 775 ne le sont pas.


====La sélection lexicale====
====La sélection lexicale====


La sélection lexicale est beaucoup plus développé du côté français-arpitan que de l'inverse, sur lequel j'ai beaucoup moins travaillé :
Dans Apertium on nomme sélection lexicale la sélection d'une traduction entre différentes possibilités lors de sens différents d'un mot. Elle beaucoup plus développée du côté français-arpitan que de l'inverse, sur lequel j'ai beaucoup moins travaillé :
[https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.metalrx apertium-fra-frp.fra-frp.metalrx ] a 538 règles et 105 appels à macros (total : 4959 lignes de code), tandis que
[https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.metalrx apertium-fra-frp.fra-frp.metalrx ] a 538 règles et 105 appels à macros (total : 4959 lignes de code), tandis que
[https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.frp-fra.metalrx apertium-fra-frp.frp-fra.metalrx ] a 209 règles et 80 appels à macros (total : 2290 lignes de code).
[https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.frp-fra.metalrx apertium-fra-frp.frp-fra.metalrx ] a 209 règles et 80 appels à macros (total : 2290 lignes de code).


Bien que parfois j’aie pu réutiliser des règles de sélection lexicales des traducteurs français-catalan et français-occitan, il est à remarquer que la sélection lexicale est un peu particulière dans le cas de l’arpitan. En effet, pas mal d’adjectifs du français se traduisent par des tournures du type '''préposition + nom''' (par exemple '''résineux''', qui devient, '''a bejon''', '''de rèsena''' ou '''a rèsena''') ou '''pronom relatif + phrase subordonnée''' (par exemple '''payant''', qui devient '''que fôt payér''' ou '''que paye(nt)'''). Cette différence dans la construction cause des problèmes puisqu’il n’est pas toujours évident s’il faut traduire, par exemple, '''satellitaire''' par '''d’un satèlito''', '''du satèlito''', '''de satèlito''' o '''de satèlitos'''. En plus il faut faire des changements quand l’adjectif français précède le nom ou est précédé par un adverbe (ce qui n’est pas toujours fait dans cette première version du traducteur). En plus, il y a pas mal de cas où la forme habituelle ne marche pas dans des contextes techniques (une affaire complexe est '''complicâ(ye)''', mais un nombre complexe est '''complèxo''' ; une personne sceptique est '''mèfianta''', mais un philosophe est '''scèptico''') ; dans un contexte non marqué '''ulcère''' et '''urine''' sont traduits respectivement par '''chancro''' et '''pisse''', mais si on repère un langage plus soutenu '''ulcèro''' et '''urena''' sont choisis. Il faut donc plus de sélections lexicales que l’on pourrait prévoir pour des langues très proches.
Bien que parfois j’aie pu réutiliser des règles de sélection lexicales des traducteurs français-catalan et français-occitan, il est à remarquer que la sélection lexicale est un peu particulière dans le cas de l’arpitan. En effet, pas mal d’adjectifs du français sont traduits par des tournures du type '''préposition + nom''' (par exemple '''résineux''', qui devient '''a bejon''', '''de rèsena''' ou '''a rèsena''') ou '''pronom relatif + phrase subordonnée''' (par exemple '''payant''', qui devient '''que fôt payér''' ou '''que paye(nt)'''). Cette différence dans la construction cause des problèmes puisqu’il n’est pas toujours évident s’il faut traduire, par exemple, '''satellitaire''' par '''d’un satèlito''', '''du satèlito''', '''de satèlito''' o '''de satèlitos'''. En plus il faut faire des changements quand l’adjectif français précède le nom ou est précédé par un adverbe (ce qui n’est pas toujours fait dans cette première version du traducteur). En plus, il y a pas mal de cas où la forme habituelle ne marche pas dans des contextes techniques (une affaire complexe est '''complicâ(ye)''', mais un nombre complexe est '''complèxo''' ; une personne sceptique est '''mèfianta''', mais un philosophe est '''scèptico''') ; dans un contexte non marqué '''ulcère''' et '''urine''' sont traduits respectivement par '''chancro''' et '''pisse''', mais si on repère un langage plus soutenu '''ulcèro''' et '''urena''' sont choisis. Il faut donc plus de sélections lexicales que l’on pourrait prévoir pour des langues très proches.

Dans traduction de l'arpitan au français, la traduction du pronom relatif '''que''' est particulièrement problématique puisqu'il peut se traduire comme '''que''', '''qui''', '''lequel''', '''laquelle''', '''lesquels''', '''lesquelles''' ou '''dont'''.


====La synthèse et la décomposition de locutions====
====La synthèse et la décomposition de locutions====


Nombre de verbes sont traduits par des locutions ou de locutions par des verbes simples. Le problème est que ces locutions souvent ont des adverbes à l’intérieur, par exemple pour la négation. De même, dans les formes verbales composées il y a souvent des adverbes entre l’auxiliaire et le participe. Cela cause des problèmes tant pour reconnaître des locutions comme pour les produire d’une façon phraséologique. Par exemple, on a dans le dico :
Nombre de verbes sont traduits par des locutions, ou de locutions par des verbes simples. Le problème est que ces locutions souvent ont des adverbes à l’intérieur, par exemple pour la négation. De même, dans les formes verbales composées il y a souvent des adverbes entre l’auxiliaire et le participe. Cela cause des problèmes tant pour reconnaître des locutions comme pour les produire d’une façon phraséologique. Par exemple, on a dans le dico :


<pre>
<pre>
Line 122: Line 132:
</pre>
</pre>


Cela permet sans problème de traduire '''j’ai besoin''' par '''j’é fôta''' et vice-versa. Le problème est que si on a '''j’ai toujours besoin''', '''je n’ai pas besoin''' ou '''je n’ai pas toujours besoin''' ou, tout pareillement, '''j'é tojorn fôta''', '''j'é pas fôta''', '''j'é pas tojorn fôta''' la locution n’est pas reconnue et la traduction se fait mot à mot. C’est ce qui arrive, manque de temps, du côté arpitan-français du traducteur. Du côté français arpitan on a un double procès qui utilise le module [[apertium separable]]. D’un côté [https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.l1x il y a une synthèse] qui convertit la phrase d’entrée d' '''avoir + adverbe(s) + besoin''' à '''avoir_besoin + adverbe(s)''' et puis [https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.l2x un procès de décomposition] qui convertit la phrase de sortie d' '''avêr_fôta + adverbe(s)''' à '''avêr + adverbe(s) + fôta'''.
Cela permet sans problème de traduire '''j’ai besoin''' par '''j’é fôta''' et vice-versa. Le problème est que si on a '''j’ai toujours besoin''', '''je n’ai pas besoin''' ou '''je n’ai pas toujours besoin''' ou, tout pareillement, '''j’é tojorn fôta''', '''j’é pas fôta''', '''j’é pas tojorn fôta''' la locution n’est pas reconnue et la traduction se fait mot à mot (*'''j’é tojorn besouen''', etc.). Pour cela on a un double procès qui utilise le module [[apertium separable]]. Par exemple, pour la traduction du français à l'arpitan, d’un côté il y a [https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.l1x une synthèse] qui convertit la phrase d’entrée d'<b>avoir + adverbe(s) + besoin</b> à '''avoir_besoin + adverbe(s)''' et puis [https://github.com/apertium/apertium-fra-frp/blob/master/apertium-fra-frp.fra-frp.l2x un procès de décomposition] qui convertit la phrase de sortie d'<b>avêr_fôta + adverbe(s)</b> à '''avêr + adverbe(s) + fôta'''.

Dans la direction du français à l'arpitan on a 45 locutions traitées en synthèse et 90 en décomposition, tandis que dans sens inverse il y en a 32 en synthèse et 14 en décomposition. Ces chiffres pourraient montrer une tendance plus grande à traduire des verbes simples français par des locutions verbales en arpitan que de locutions verbales françaises par des verbes simples arpitans. Ce n’est peut-être pas comme cela en réalité parce que je n’ai pas introduit dans le dico d’Apertium des dizaines de cas du deuxième type qui sont dans le dictionnaire de Stich.

====Le transfert structurel====

Dans Apertium le transfert structurel est une collection de transformations que les textes doivent subir pour traduire d’une langue à une autre, outre ce qui est la traduction « mot à mot » pure et simple, c’est-à-dire notamment : l’ajout, la suppression et le changement d’ordre de mots.

Pour les règles de transfert j’ai utilisé comme base celles du traducteur français-occitan parce que, en ce qui concerne les questions liées au transfert structurel d’Apertium, on trouve des problèmes très semblables pour la traduction du français à l’occitan et à l’arpitan et vice-versa. Cependant, on fait face aussi à certains problèmes assez différents, ce qui porte à une architecture différente pour les deux sens de la traduction pour ces deux paires de langues.

Il faut ajouter que nous calquons le français en ce qui concerne les majuscules (par exemple, on a le nom '''Arpetan''' et l’adjectif '''arpetan''') et les espaces (par exemple devant le point d’exclamation et les deux-points ou entre guillemets), donc j’ai enlevé les règles concernant leur changement qu’il y avait pour l’occitan.

=====Le transfert du français à l’arpitan=====

La traduction du français à l’arpitan a une structure déjà classique chez Apertium de transfert en trois étapes.
* Dans la première étape les transformations plus remarquables sont :
** La suppression de l’adverbe '''ne''' dans les négations (mais pas dans la structure ''ne... que'')
** L'ajout de l’adverbe '''pas''' dans les négations des types ''ne... plus'', ''ne... guère'', ''ne... rien'' (cf. '''je ne parle plus''' > '''je pârlo pas més''', '''je n'ai rien dit''' > '''j'é pas dét ren''')
** La traduction du passé simple par le passé composé et de l’imparfait du subjonctif par le présent du subjonctif
** L'ajout ou suppression de pronoms quand un verbe réflexif se traduit par un verbe non-réflexif ou vice-versa
* La deuxième étape s’occupe de transformations liées à des relations plus lointaines, comme l’accord entre sujet et attribut (cf. '''le balai est très grand''' > '''l'ècova est franc granta''').
* La troisième étape est ''pro forma''.

Les suivantes décisions ont été prises :
* Dates avec la préposition de : '''1<sup>ér</sup> de mê''', '''2 de mê''' (bien que, par ex. la ''Vouiquipèdia'' calque presque toujours la structure française)
* Élimination de l’article dans les comparatifs superlatifs : '''la personne la plus haute''' > '''la pèrsona més hôta'''
* Maintien de la structure du partitif français : '''je veux de l'eau''' > '''je vôlo de l'égoua'''
* Maintien du pronom personnel sujet comme en français, a l’exception d’expressions impersonnelles '''il faut''', '''il pleut''', '''il neige''', '''il fait beau''' (mais il est maintenu dans '''il y a(t)''').
* Comme dit ci-dessus, le verbe '''étre''' est conjugué avec l’auxiliaire '''avêr'''

On a 85 règles pour la première étape, 11 pour la deuxième et 1 pour la troisième.

=====Le transfert de l’arpitan au français=====

La traduction de l’arpitan au français présente des difficultés supplémentaires. D’un côté, il faut ajouter plus de mots que dans la traduction inverse, par exemple le '''ne''' de la négation, le pronom personnel sujet quand il est élidé, l’article défini quand il manque dans l’article partitif. Ces ajouts sont souvent difficiles, même parfois très difficiles, tandis que l’élimination de mots est plutôt triviale. D’un autre côté, on fait face à la multiplicité de l’arpitan : il faut attendre '''2 mê''' et '''2 de mê''', '''je vôlo de l'égoua''' et '''je vôlo d'égoua''', '''j'é étâ''' et '''je su étâ''', '''il y at''' et '''y at''', '''il fôt''' et '''fôt''', etc., etc. Ces difficultés, le manque d’un corpus arpitan large et représentatif et la priorité de développer un traducteur du français a l’arpitan pour aider à la production de textes ont fait que j’ai travaillé beaucoup moins de ce côté, au sujet des règles de transfert comme ailleurs.

Comme déjà dit, le transfert est divisé en cinq étapes. Ce sont, en fait, les trois étapes classiques du transfert d’Apertium avec une sous-division de l’étape intermédiaire en trois (cf. [[Transfert en N étapes]]).

Dans la première étape les transformations plus remarquables sont :

* Le changement de la structure des dates, si on utilise la préposition '''de'''
* Le changement de l’auxiliaire '''étre''' par '''avoir''' pour le verbe '''être''', si c'est la forme trouvée en arpitan
* L'ajout ou suppression de pronoms quand un verbe réflexif se traduit par un verbe non-réflexif ou vice-versa

La deuxième étape s’occupe de :

* L’accord entre le sujet et l'attribut, mais, dans la version actuelle, les règles pour cet accord ne sont déclenchées que s'il y a un changement de genre dans le sujet (cf. '''l'ècova est franc granta''' > '''le balai est très grand''', mais : '''les paroles sont ècrit per Jacques Plante et pués la musica est fêt en 1944 per Franz Winkler''' > '''les paroles sont *écrit par Jacques Plante et puis la musique est *fait en 1944 par Franz Winkler ''')
* L’ajout du pronom personnel sujet dans des constructions très concrètes ('''fôt una ècova''' > '''il faut un balai''', '''y at una ècova''' > '''il y a un balai''', mais : '''« Què dêvo fâre a cél poplo ? »''' > '''« Que *dois faire à ce peuple ?»''')

La troisième étape s’occupe de l’inclusion de l’adverbe '''ne''' dans les négations.

La quatrième étape devrait s’occuper de l’inclusion de l’article défini dans le partitif, s’il manque ('''je vôlo d’égoua''' > '''je veux de l’eau'''), mais elle n'est pas encore développée. Il faudrait voire, sur la base de l'étude de corpus, si cette complication vaut la peine, et, s'il le faut, copier la solution existante du traducteur de l'occitan au français.

La cinquième étape s’occupe de certaines transformations de majuscules à minuscules qui doivent parfois se faire à cause de l’inclusion de mots en début phrase.

On a 56 règles pour la première étape, 26 pour la deuxième, 20 pour la troisième, 1 pour la quatrième et 5 pour la cinquième.

Il faut signaler comme manque dans cette version qu'on n'élimine pas les pronoms sujet redondants (cf. '''[https://frp.wikipedia.org/wiki/David_Woodard David Woodard], nèssu lo 6 d'avril 1964 a Santa Barbara, California, <u>'l</u> est un écrivain et musicien amèriquen''' > '''David Woodard, né le 6 avril 1964 à Santa Barbara, Californie, *<u>il</u> est un écrivain et musicien américain''' ; '''La chançon <u>'l</u> est franc cognua en Savouè''' > '''La chanson *<u>il</u> est très connue en Savoie''' -- avec aussi une erreur dans l'interprétation de <b>'l</b>).

==Évaluation finale==

Comme d’habitude, l’évaluation finale a été faite en mesurant deux paramètres : la couverture « naïve » et la qualité de la traduction. La premier chiffre est le pourcentage de mots qui sont reconnus par le traducteur, bien que peut-être ils ne soient pas bien analysés (par exemple, parce qu’on reconnaît le nom de famille '''Gros''' comme un adjectif, mais pas comme un nom propre). La qualité est mesurée en traduisant automatiquement un texte, donnant le résultat à un correcteur humain et comptant le pourcentage des mots qu’il a corrigé (cette mesure est appelée Word Error Rate, WER).

Les couvertures sont plus basses dans la Wikipédia que dans des textes journalistiques, à cause de l'abondance de noms propres, termes scientifiques et mots d'autres langues dans la Wikipédia, c’est pourquoi nous faisons une différence entre la couverture calculée sur un corpus de la Wikipédia et ailleurs. Ces différences ont aussi une implication dans le WER. Puisque la fonction principale prévue pour le traducteur est celle de traduire des textes de la Wikipédia, le WER est calculé sur plusieurs textes choisis aléatoirement, parmi lesquels 2/3 sont extraits de la Wikipédia.

Pour le détail des textes de test et leur choix aléatoire, voire les notes [https://wiki.apertium.org/wiki/Hectoralos/GSOC_2020_work_plan_control#cite_note-7 7] et [https://wiki.apertium.org/wiki/Hectoralos/GSOC_2020_work_plan_control#cite_note-8 8] du journal du projet.

Les résultats obtenus sont les suivants :

{|class="wikitable"
! style="width: 50%"|
! style="width: 25%"|Français-Arpitan
! style="width: 25%"|Arpitan-Français
|-
! style="text-align:left"|Couverture non-Wikipédia
| style="text-align:right"|95,8 %
| style="text-align:right"|96,0 %
|-
! style="text-align:left"|Couverture Wikipédia
| style="text-align:right"|92,8 %
| style="text-align:right"|81,5 %
|-
! style="text-align:left"|WER
| style="text-align:right"|5,7 %
| style="text-align:right"|15,5 %
|-
|}


Pour comparer, [https://wiki.apertium.org/wiki/Hectoralos/GSOC_2019_final_report#Algunes_xifres l'évaluation de mon projet de l'année dernière] visant à l'amélioration des paires catalan-italien et catalan-portugais a donné des WER de 14-15 %. Les résultats pour la traduction du français à l'arpitan sont donc très satisfaisants. Du côté inverse, il y a encore beaucoup à faire, mais le traducteur peut déjà être considéré fonctionnel.
On a 45 locutions traitées en synthèse et 90 en décomposition. La grosse différence entre les deux montrerait une tendance plus grande de traduire des verbes par des locutions que de locutions par verbes simples dans la traduction du français à l’arpitan, mais ce n’est peut-être pas comme cela en réalité parce que je n’ai pas introduit dans le dico d’Apertium des dizaines de cas du deuxième type qui sont dans le dictionnaire de Stich.


==Remerciements==
====Le transfert====


Ce projet n'aurait pas arrivé à outrepasser largement ses objectifs sans l'immense collaboration de Dominique Stich et Alain Favre, que je remercie encore une fois. Je dois aussi remercier mes superviseurs Xavi Ivars et Gianfranco Fronteddu pour la confiance qu'ils ont eu en moi. Xavi Ivars, Tino Didriksen et Marc Riera m'ont aidé dans des petits problèmes techniques le long du projet et Daniel Swanson, auteur d'[[apertium-separable]], a amélioré [[apertium-lex-tools]] pour y inclure mes demandes. La présentation de Xavi Ivars en juillet dans un séminaire d'Apertium a été aussi très inspiratrice. C'est un plaisir de travailler avec un collectif comme celui d'Apertium et de s'occuper de produire des ressources linguistiques pour des langues qui vraiment en ont très besoin, ce qui est l'objectif primaire d'Apertium.


[[Category:Google Summer of Code 2020]]
[[Category:Google Summer of Code 2020]]

Latest revision as of 14:45, 13 September 2021

Introduction[edit]

Ce document décrit le travail réalisé par Hèctor Alòs entre le 1er juin et le 31 août 2020 dans le cadre du Google Summer of Code 2020. Le projet a été supervisé par Xavi Ivars et Gianfranco Fronteddu

Commits[edit]

On peut voir tous les commits du projet sur cette page.

Buts et plan de travail[edit]

Les buts du projet et le plan de travail sont décrits dans la proposition que j'ai faite début février. Il s'agissait de construire un traducteur bidirectionnel français-arpitan. L'arpitan n'était pas encore introduit dans Apertium, donc j'ai dû créer le référentiel apertium-frp. Entre les différentes normes orthographiques utilisées pour l'arpitan, le projet a choisi la norme ORB, qui est supra-dialectale. Un grand avantage de cette norme est qu'on a déjà fait un très grand travail de choix entre les très nombreuses formes des mots et des morphèmes pour tout le territoire où la langue est parlée, tandis que les autres orthographes n'ont pour objet qu'un dialecte particulier. Il faut aussi noter que la plupart de la Vouiquipèdia arpitane utilise cette orthographe et qu'il existe un site extrêmement utile avec des dictionnaires en ligne.

Développement du projet[edit]

Le projet a compté des le début avec le support incommensurable de Dominique Stich, créateur de l’ORB, et Alain Favre, co-auteur avec Stich d’un dictionnaire français-savoyard et éditeur du dictionnaire français-francoprovençal de Stich. Les deux ont permis l’utilisation de ce dictionnaire. Stich en a donné une version électronique actualisée, qui est la base des dictionnaires apertium-frp et apertium-fra-frp. Stich et Favre le long de tout le projet ont aidé à les compléter avec plusieurs milliers de mots chacun. Le résultat est que le dico arpitan d'Apertium a plus de 6 500 entrées (sans compter les noms propres) qui ne sont pas dans le dictionnaire de Stich. Le contact avec lui au sujet de questions lexiques et grammaticales a été permanent. Les nombreuses remarques de Favre sur des traductions faites a l’aide de beta.apertium.org ont été extrêmement utiles. C’est pour cela que les résultats du projet sont nettement meilleurs que prévu en février. Je suis énormement reconnaissant à tous les deux pour leur dévouement. Évidemment, cela ne veut pas dire que le traducteur n’ai pas d’erreurs (ce serait impossible qu’il n’en ait pas), ni qu’on puisse leur imputer ces erreurs de quelque manière que ce soit.

Ci-dessous j'explique plutôt les résultats du système, avec son architecture et ses différents éléments. Pour voire une chronologie du développement, on peut consulter le journal du projet.

Le référentiel apertium-frp[edit]

Le dictionnaire arpitan[edit]

J’ai investi beaucoup de temps sur le dictionnaire arpitan. Malgré la standardisation de l’ORB, les textes écrits avec cette norme ont encore une grande variété. La norme différencie entre « graphie large » et « graphie serrée ». La première est l’essai de trouver une espèce de juste milieu entre les très nombreuses formes locales, mais au prix d'utiliser une orthographe plus étymologique et plus éloignée des réalisations phonétiques concrètes de chaque lieu. La deuxième permet de se rapprocher aux formes locales, au prix de la multiplication des mots et des formes fléchies. J’ai concentré les efforts dans la production de textes en graphie large, ce qui implique que la traduction de textes arpitans au français est nettement pire.

Mais il y a encore de nombreux détails qui restent sujet de discussion dans l’ORB, en général, et la « graphie large » en particulier. L’effacement, voire la disparition, des terminaisons dans la plupart des variétés arpitanes complique les choses. Quant au lexique et la morphologie, les questions où j’ai trouvé de nombreuses contradictions dans les textes sont :

  • La terminaison -ie ou -ia (et parfois -e ou -a dans les noms féminins). D’accord avec Stich, le traducteur choisit la terminaison -ie, avec quelques exceptions.
  • La terminaison -âl ou -al, voire -èl. Je suis la norme de Stich, qui restreint -âl à des formes anciennes et utilise èl pour les néologismes.
  • Dans les gentilés qui terminent en -ois en français, en suivant Stich, j’utilise presque toujours -ouès, mais parfois, à la demande de Favre, -ês est choisi.
  • La terminaison -ologo est préférée aux dépens d’-ologue et -ologisto.
  • Il y a de très nombreuses inconsistances dans les toponymes de la Vouiquipèdia, avec, par exemple, trois formes différentes pour New York (une quatrième est trouvée ailleurs), des terminaisons -ia et -ie, -landa et -lande, etc. Stich a bien voulu fournir une liste de tous les états avec ses gentilés, ainsi que de nombreux autres toponymes. Quand même, la Vouiquipèdia est restée une source majeure. Il faudrait encore travailler davantage sur certains toponymes parce que le choix d’a ou â, o ou ô en fin de mot ne semble pas consistant.
  • Les pronoms démonstratifs, qui sont remarquablement différents selon la région (comme dans d'autres langues romanes), sont matière de discussion. J'ai choisi les formes recommandées par Stich.
  • On rencontre de nombreuses conjugaisons possibles des verbes. On trouve le même verbe conjugué comme inchoatif ou non inchoatif, il peut subir une mutation vocalique (a > â, o > ô, e > è, etc.) ou non, etc. J'ai choisi les formes recommandées par Stich.
  • Il y a de nombreuses hésitations dans l'utilisation d' â ou a, d' è ou e, voire é et même ê, d' e ou i, de cll ou cl, fll ou fl, etc. Cela cause beaucoup de problèmes pour reconnaître les mots dans les traductions de l'arpitan.
  • Il y a des hésitations dans les participes des verbes du premier groupe si la forme du féminin doit se différencier de celle du masculin ou non. J'ai choisi de faire la distinction pour les verbes terminés en ar (je génère -âye(s)) et de ne pas le faire pour ceux terminés en (i)ér (je génère -ê(s)).

Puisque le but principal du traducteur du français à l’arpitan est de traduire des articles pour la Vouiquipèdia, nous avons travaillé pas mal sur la toponymie, l’onomastique et la terminologie scientifique, dans des domaines comme les mathématiques, la physique, la biochimie, la zoologie et la botanique. Évidemment, le temps est très limité, donc il reste encore beaucoup de travail, par exemple en ce qui concerne le sport. Nous avons aussi travaillé sur la terminologie sociopolitique en testant le traducteur sur des nouvelles d’actualité. Lo Trèsor Arpitan a été très souvent consulté, mais il faudrait à l’avenir d’en extraire tout le vocabulaire (et, éventuellement, de lui en fournir).

En ce qui concerne la flexion des mots, les verbes (comme dans toutes les langues romanes) ont été particulièrement difficiles. J’ai dû consulter Stich maintes fois à ce sujet, bien que de nombreuses informations sur la conjugaison des verbes sont déjà dans son dictionnaire. Le résultat peut être vu dans un très simple site web pour les verbes arpitans que j’ai créé surtout pour m'orienter moi-même.

À cause des nombreux mots et formes fléchies non normatives ou, du moins, discutables qu’on trouve dans les textes arpitans, j’ai dû incorporer près de 750 mots qui sont marqués non-standards dans le dictionnaire (en utilisant c="use_sub", sur la recommandation de Fran Tyers). Une des causes de cette balise est d’éviter qu’ils entrent dans le correcteur orthographique qui devrait être généré à la suite de ce projet.

Il faudrait encore dire que le dictionnaire n’utilise pas, en principe, de point intérieur (ch·, , ) puisque les utilisateurs de l’ORB ont décidé de ne plus l’utiliser. Cependant, on continue à le trouver sur la Vouiquipèdia et d’autres textes, c’est pourquoi j’ai dû l’ajouter pour nombre de mots.

À cause de l'utilisation dans les textes de beaucoup de formes « non normatives », le dictionnaire utilise différents paradigmes qui permettent leur reconnaissance sans créer des milliers d'entrées difficiles à gérer (et qu'il faudrait ajouter dans le dico bilingue, ce que nous évitons). Ainsi, par exemple, tous les noms terminés en -ie ont dans sa définition morphologique une forme secondaire avec la terminaison -ia et tous les adjectifs terminés en -al en ont avec -âl, -âla, -âls, -âles et même -ox. De cette façon on traduit sans problèmes, par exemple, *filosofia et *horizontâl, mais sur les dicos on n'a que les entrées filosofie et horizontal ; ni *filosofia ni *horizontâl ne seront considérés corrects par le correcteur orthographique).

Le choix a été fait de générer une seule forme d'arpitan large, pour toutes les régions. Par exemple, les démonstratifs arpitans du type ce- sont choisis et non ceux du type (i)que- ; l'article lo au lieu de le et una au lieu de na ; les jours de la semaine commençant par de et non ceux finissant par di (p. ex. delon et pas londi, lon ou delion) ; la terminaison -ens pour la première personne du pluriel au lieu d'-ons ; la conjugaison du verbe étre avec l'auxiliaire avêr au lieu d'utiliser le verbe étre lui-même, etc. Un choix unique dans tous les cas est la solution la plus simple et, avec les sources dont je dispose, je n'ai guère d'information sur la région où un certain mot, flexion ou tournure sont utilisés. Cependant il est très possible que l'arpitan produit par le traducteur soit ressenti comme trop « large ». Les utilisateurs, s'ils le veulent, devront « localiser » les textes produits, en les adaptant à leur variété.

Le dico arpitan d'Apertium a 51 071 entrées, desquelles 28 404 sont des noms propres et 22 667 ne le sont pas. En particulier, on a 12 149 noms communs, 4193 adjectifs, 4250 verbes et 926 adverbes. La plupart des noms propres sont des noms de famille (20 588) et des prénoms (5819). Il faut signaler que nous avons travaillé sur l'adaptation des noms propres russes, ukrainiens, biélorusses et, de façon moins systématique, grecs aux normes de l'ORB. On a donc Tchaykovski, Tchèkhov, Tolstoy, Lènine et Alèksièvitch, ainsi qu'Antigona, Sofoclo, Pitagoro, Dèmostèno et Eclido/Uclido (avec deux formes possibles).

Les règles d’élision et contraction[edit]

Les règles d’élision et contraction sont pratiquement celles du français. Le traducteur arpitan-français accepte bien l’élision des pronoms personnels sujet de la deuxième et troisième personnes du singulier, de l’article indéfini féminin, des adjectifs possessifs de la première et deuxième personne du pluriel et d’autres, mais ne fait pas ces élisions dans la traduction du français à l’arpitan.

La désambiguïsation morphologique (traitement de l'homonymie)[edit]

Le traducteur utilise le tagueur français (fra.prob, renommé frp.prob). J’ai réécrit une bonne partie des règles du désambiguïsateur CG du français en utilisant l’opérateur d’unification && (qui n’est pas utilisé pour le français). Cela rend ces règles plus compactes, lisibles et maintenables. Cette solution était en principe provisoire. J’avais prévu d’étiqueter un corpus pour entraîner un tagueur statistique, mais la solution provisoire c’est avérée satisfaisante et je n’ai pas investi du temps pour cela. Peut-être quand par la suite on travaille plus intensivement dans la traduction de textes arpitans trouvera-t-on que cet étiquetage vaut la peine.

Le référentiel apertium-fra[edit]

Les différentes parties du référentiel français d'Apertium étaient tout à fait fonctionnelles déjà. J'ai donc dû y investir très peu de temps. J'ai ajouté des mots au dico et plus de règles désambiguïsation morphologique. Deux nouvelles catégories ont été ajoutées au dico et à ces règles :

  • Les préfixes (pref), pour traiter les préfixes écrits avec un trait d'union
  • Les adverbes post-fixés (postadv), pour traiter les particules -ci et -là

Puisqu'il s'agit d'ajouts, ils n'interfèrent pas avec les autres paires de langues qui les analysent d'autres façons.

Le référentiel apertium-fra-frp[edit]

Le référentiel bilingue consiste en un dictionnaire bilingue, des règles de sélection lexique, des règles de transfert et, pour le traducteur du français à l’arpitan, des règles de synthèse et décomposition de locutions.

L’architecture est un peu différente pour les deux côtés de la traduction. Du côté français-arpitan on a :

texte en français

> (1) analyseur morphologique
> (2) tagueur CG
> (3) tagueur statistique
> (4) synthèse de locutions françaises
> (5) sélection lexicale
> (6-8) transfert en 3 étapes
> (9) décomposition de locutions arpitanes
> (10) générateur arpitan
> (11) élisions et contractions

> texte en arpitan

Par contre du côté arpitan-français on a :

texte en arpitan

> (1) analyseur morphologique
> (2) tagueur CG
> (3) tagueur statistique
> (4) synthèse de locutions arpitanes
> (5) sélection lexicale
> (6-10) transfert en 5 étapes
> (11) décomposition de locutions françaises
> (12) générateur français
> (13) élisions et contractions

> texte en français

(Je n'affiche ici que les modules dans lesquels il y a des données dans les trois référentiels apertium-frp, apertium-fra et appertium-fra-frp. Il y a quelques étapes automatiques en plus dans le pipeline d'Apertium. Pour plus de détail, voire : Apertium system architecture.)

Le dictionnaire bilingue[edit]

Le dictionnaire bilingue a comme base le dictionnaire français-arpitan de Dominique Stich. L'auteur a bien voulu m'indiquer le choix préférable (géographiquement plus large) en cas de synonymie de traductions à l'arpitan, mais cette information m'a manqué dans le sens inverse, c'est pourquoi pas tous les mots arpitans présents de le dico de Stich n'ont une traduction au français dans le nôtre.

En général, les préférences entre synonymes sont faites dans le dictionnaire même (à l'aide de r="LR", r="RL" et i="yes"), tandis que le choix entre traductions avec des sens différents est fait moyennant des règles de sélection lexicale. Il y a près de 1300 traductions inhibées dans les deux sens (i="yes") qui, pourtant, restent dans le dico pour conserver l'équivalence et faciliter leur possible activation par la suite.

Sans compter ces traductions inhibées, le dico bilingue a 53 256 entrées, desquelles 28 481 sont des noms propres et 24 775 ne le sont pas.

La sélection lexicale[edit]

Dans Apertium on nomme sélection lexicale la sélection d'une traduction entre différentes possibilités lors de sens différents d'un mot. Elle beaucoup plus développée du côté français-arpitan que de l'inverse, sur lequel j'ai beaucoup moins travaillé : apertium-fra-frp.fra-frp.metalrx a 538 règles et 105 appels à macros (total : 4959 lignes de code), tandis que apertium-fra-frp.frp-fra.metalrx a 209 règles et 80 appels à macros (total : 2290 lignes de code).

Bien que parfois j’aie pu réutiliser des règles de sélection lexicales des traducteurs français-catalan et français-occitan, il est à remarquer que la sélection lexicale est un peu particulière dans le cas de l’arpitan. En effet, pas mal d’adjectifs du français sont traduits par des tournures du type préposition + nom (par exemple résineux, qui devient a bejon, de rèsena ou a rèsena) ou pronom relatif + phrase subordonnée (par exemple payant, qui devient que fôt payér ou que paye(nt)). Cette différence dans la construction cause des problèmes puisqu’il n’est pas toujours évident s’il faut traduire, par exemple, satellitaire par d’un satèlito, du satèlito, de satèlito o de satèlitos. En plus il faut faire des changements quand l’adjectif français précède le nom ou est précédé par un adverbe (ce qui n’est pas toujours fait dans cette première version du traducteur). En plus, il y a pas mal de cas où la forme habituelle ne marche pas dans des contextes techniques (une affaire complexe est complicâ(ye), mais un nombre complexe est complèxo ; une personne sceptique est mèfianta, mais un philosophe est scèptico) ; dans un contexte non marqué ulcère et urine sont traduits respectivement par chancro et pisse, mais si on repère un langage plus soutenu ulcèro et urena sont choisis. Il faut donc plus de sélections lexicales que l’on pourrait prévoir pour des langues très proches.

Dans traduction de l'arpitan au français, la traduction du pronom relatif que est particulièrement problématique puisqu'il peut se traduire comme que, qui, lequel, laquelle, lesquels, lesquelles ou dont.

La synthèse et la décomposition de locutions[edit]

Nombre de verbes sont traduits par des locutions, ou de locutions par des verbes simples. Le problème est que ces locutions souvent ont des adverbes à l’intérieur, par exemple pour la négation. De même, dans les formes verbales composées il y a souvent des adverbes entre l’auxiliaire et le participe. Cela cause des problèmes tant pour reconnaître des locutions comme pour les produire d’une façon phraséologique. Par exemple, on a dans le dico :

<e><p><l>avoir<g><b/>besoin</g><s n="vblex"/></l><r>avêr<g><b/>fôta</g><s n="vblex"/></r></p></e>

Cela permet sans problème de traduire j’ai besoin par j’é fôta et vice-versa. Le problème est que si on a j’ai toujours besoin, je n’ai pas besoin ou je n’ai pas toujours besoin ou, tout pareillement, j’é tojorn fôta, j’é pas fôta, j’é pas tojorn fôta la locution n’est pas reconnue et la traduction se fait mot à mot (*j’é tojorn besouen, etc.). Pour cela on a un double procès qui utilise le module apertium separable. Par exemple, pour la traduction du français à l'arpitan, d’un côté il y a une synthèse qui convertit la phrase d’entrée d'avoir + adverbe(s) + besoin à avoir_besoin + adverbe(s) et puis un procès de décomposition qui convertit la phrase de sortie d'avêr_fôta + adverbe(s) à avêr + adverbe(s) + fôta.

Dans la direction du français à l'arpitan on a 45 locutions traitées en synthèse et 90 en décomposition, tandis que dans sens inverse il y en a 32 en synthèse et 14 en décomposition. Ces chiffres pourraient montrer une tendance plus grande à traduire des verbes simples français par des locutions verbales en arpitan que de locutions verbales françaises par des verbes simples arpitans. Ce n’est peut-être pas comme cela en réalité parce que je n’ai pas introduit dans le dico d’Apertium des dizaines de cas du deuxième type qui sont dans le dictionnaire de Stich.

Le transfert structurel[edit]

Dans Apertium le transfert structurel est une collection de transformations que les textes doivent subir pour traduire d’une langue à une autre, outre ce qui est la traduction « mot à mot » pure et simple, c’est-à-dire notamment : l’ajout, la suppression et le changement d’ordre de mots.

Pour les règles de transfert j’ai utilisé comme base celles du traducteur français-occitan parce que, en ce qui concerne les questions liées au transfert structurel d’Apertium, on trouve des problèmes très semblables pour la traduction du français à l’occitan et à l’arpitan et vice-versa. Cependant, on fait face aussi à certains problèmes assez différents, ce qui porte à une architecture différente pour les deux sens de la traduction pour ces deux paires de langues.

Il faut ajouter que nous calquons le français en ce qui concerne les majuscules (par exemple, on a le nom Arpetan et l’adjectif arpetan) et les espaces (par exemple devant le point d’exclamation et les deux-points ou entre guillemets), donc j’ai enlevé les règles concernant leur changement qu’il y avait pour l’occitan.

Le transfert du français à l’arpitan[edit]

La traduction du français à l’arpitan a une structure déjà classique chez Apertium de transfert en trois étapes.

  • Dans la première étape les transformations plus remarquables sont :
    • La suppression de l’adverbe ne dans les négations (mais pas dans la structure ne... que)
    • L'ajout de l’adverbe pas dans les négations des types ne... plus, ne... guère, ne... rien (cf. je ne parle plus > je pârlo pas més, je n'ai rien dit > j'é pas dét ren)
    • La traduction du passé simple par le passé composé et de l’imparfait du subjonctif par le présent du subjonctif
    • L'ajout ou suppression de pronoms quand un verbe réflexif se traduit par un verbe non-réflexif ou vice-versa
  • La deuxième étape s’occupe de transformations liées à des relations plus lointaines, comme l’accord entre sujet et attribut (cf. le balai est très grand > l'ècova est franc granta).
  • La troisième étape est pro forma.

Les suivantes décisions ont été prises :

  • Dates avec la préposition de : 1ér de mê, 2 de mê (bien que, par ex. la Vouiquipèdia calque presque toujours la structure française)
  • Élimination de l’article dans les comparatifs superlatifs : la personne la plus haute > la pèrsona més hôta
  • Maintien de la structure du partitif français : je veux de l'eau > je vôlo de l'égoua
  • Maintien du pronom personnel sujet comme en français, a l’exception d’expressions impersonnelles il faut, il pleut, il neige, il fait beau (mais il est maintenu dans il y a(t)).
  • Comme dit ci-dessus, le verbe étre est conjugué avec l’auxiliaire avêr

On a 85 règles pour la première étape, 11 pour la deuxième et 1 pour la troisième.

Le transfert de l’arpitan au français[edit]

La traduction de l’arpitan au français présente des difficultés supplémentaires. D’un côté, il faut ajouter plus de mots que dans la traduction inverse, par exemple le ne de la négation, le pronom personnel sujet quand il est élidé, l’article défini quand il manque dans l’article partitif. Ces ajouts sont souvent difficiles, même parfois très difficiles, tandis que l’élimination de mots est plutôt triviale. D’un autre côté, on fait face à la multiplicité de l’arpitan : il faut attendre 2 mê et 2 de mê, je vôlo de l'égoua et je vôlo d'égoua, j'é étâ et je su étâ, il y at et y at, il fôt et fôt, etc., etc. Ces difficultés, le manque d’un corpus arpitan large et représentatif et la priorité de développer un traducteur du français a l’arpitan pour aider à la production de textes ont fait que j’ai travaillé beaucoup moins de ce côté, au sujet des règles de transfert comme ailleurs.

Comme déjà dit, le transfert est divisé en cinq étapes. Ce sont, en fait, les trois étapes classiques du transfert d’Apertium avec une sous-division de l’étape intermédiaire en trois (cf. Transfert en N étapes).

Dans la première étape les transformations plus remarquables sont :

  • Le changement de la structure des dates, si on utilise la préposition de
  • Le changement de l’auxiliaire étre par avoir pour le verbe être, si c'est la forme trouvée en arpitan
  • L'ajout ou suppression de pronoms quand un verbe réflexif se traduit par un verbe non-réflexif ou vice-versa

La deuxième étape s’occupe de :

  • L’accord entre le sujet et l'attribut, mais, dans la version actuelle, les règles pour cet accord ne sont déclenchées que s'il y a un changement de genre dans le sujet (cf. l'ècova est franc granta > le balai est très grand, mais : les paroles sont ècrit per Jacques Plante et pués la musica est fêt en 1944 per Franz Winkler > les paroles sont *écrit par Jacques Plante et puis la musique est *fait en 1944 par Franz Winkler )
  • L’ajout du pronom personnel sujet dans des constructions très concrètes (fôt una ècova > il faut un balai, y at una ècova > il y a un balai, mais : « Què dêvo fâre a cél poplo ? » > « Que *dois faire à ce peuple ?»)

La troisième étape s’occupe de l’inclusion de l’adverbe ne dans les négations.

La quatrième étape devrait s’occuper de l’inclusion de l’article défini dans le partitif, s’il manque (je vôlo d’égoua > je veux de l’eau), mais elle n'est pas encore développée. Il faudrait voire, sur la base de l'étude de corpus, si cette complication vaut la peine, et, s'il le faut, copier la solution existante du traducteur de l'occitan au français.

La cinquième étape s’occupe de certaines transformations de majuscules à minuscules qui doivent parfois se faire à cause de l’inclusion de mots en début phrase.

On a 56 règles pour la première étape, 26 pour la deuxième, 20 pour la troisième, 1 pour la quatrième et 5 pour la cinquième.

Il faut signaler comme manque dans cette version qu'on n'élimine pas les pronoms sujet redondants (cf. David Woodard, nèssu lo 6 d'avril 1964 a Santa Barbara, California, 'l est un écrivain et musicien amèriquen > David Woodard, né le 6 avril 1964 à Santa Barbara, Californie, *il est un écrivain et musicien américain ; La chançon 'l est franc cognua en Savouè > La chanson *il est très connue en Savoie -- avec aussi une erreur dans l'interprétation de 'l).

Évaluation finale[edit]

Comme d’habitude, l’évaluation finale a été faite en mesurant deux paramètres : la couverture « naïve » et la qualité de la traduction. La premier chiffre est le pourcentage de mots qui sont reconnus par le traducteur, bien que peut-être ils ne soient pas bien analysés (par exemple, parce qu’on reconnaît le nom de famille Gros comme un adjectif, mais pas comme un nom propre). La qualité est mesurée en traduisant automatiquement un texte, donnant le résultat à un correcteur humain et comptant le pourcentage des mots qu’il a corrigé (cette mesure est appelée Word Error Rate, WER).

Les couvertures sont plus basses dans la Wikipédia que dans des textes journalistiques, à cause de l'abondance de noms propres, termes scientifiques et mots d'autres langues dans la Wikipédia, c’est pourquoi nous faisons une différence entre la couverture calculée sur un corpus de la Wikipédia et ailleurs. Ces différences ont aussi une implication dans le WER. Puisque la fonction principale prévue pour le traducteur est celle de traduire des textes de la Wikipédia, le WER est calculé sur plusieurs textes choisis aléatoirement, parmi lesquels 2/3 sont extraits de la Wikipédia.

Pour le détail des textes de test et leur choix aléatoire, voire les notes 7 et 8 du journal du projet.

Les résultats obtenus sont les suivants :

Français-Arpitan Arpitan-Français
Couverture non-Wikipédia 95,8 % 96,0 %
Couverture Wikipédia 92,8 % 81,5 %
WER 5,7 % 15,5 %

Pour comparer, l'évaluation de mon projet de l'année dernière visant à l'amélioration des paires catalan-italien et catalan-portugais a donné des WER de 14-15 %. Les résultats pour la traduction du français à l'arpitan sont donc très satisfaisants. Du côté inverse, il y a encore beaucoup à faire, mais le traducteur peut déjà être considéré fonctionnel.

Remerciements[edit]

Ce projet n'aurait pas arrivé à outrepasser largement ses objectifs sans l'immense collaboration de Dominique Stich et Alain Favre, que je remercie encore une fois. Je dois aussi remercier mes superviseurs Xavi Ivars et Gianfranco Fronteddu pour la confiance qu'ils ont eu en moi. Xavi Ivars, Tino Didriksen et Marc Riera m'ont aidé dans des petits problèmes techniques le long du projet et Daniel Swanson, auteur d'apertium-separable, a amélioré apertium-lex-tools pour y inclure mes demandes. La présentation de Xavi Ivars en juillet dans un séminaire d'Apertium a été aussi très inspiratrice. C'est un plaisir de travailler avec un collectif comme celui d'Apertium et de s'occuper de produire des ressources linguistiques pour des langues qui vraiment en ont très besoin, ce qui est l'objectif primaire d'Apertium.