OPUS-CAT MT : à la découverte d’un logiciel de traduction automatique neuronale installé en local

Pour le grand public, comme pour le professionnel qui veut intégrer la traduction automatique (TA) dans son travail, la plupart des solutions sont disponibles en ligne directement ou par l’intermédiaire de logiciels de traduction assistée par ordinateur (TAO). Parmi toutes ces solutions distantes, une exception existe : il s’agit de la suite OPUS-CAT MT1 de l’Université de Helsinki, qui repose sur l’entrepôt de ressources linguistiques OPUS2, utilisables pour entraîner des algorithmes de traduction automatique.

Élaboré sous la direction de Jörg Tiedemann3, professeur en technologies linguistiques dans cette université, le projet OPUS-MT4 a permis de constituer un vaste ensemble de modèles de langues préentraînés pour fonctionner avec le logiciel de TA Marian-NMT en environnement Windows. Opus-CAT-MT (OCM) est une agrégation de fonctions logicielles autour de Marian NMT et pouvant intégrer ces modèles, qui a été développée par Tommi Nieminen5, à la fois traducteur et chercheur.

OCM est une solution de traduction automatique neuronale de technologie Python, installable en local. Elle opère à partir des modules de préentraînement (les modèles de langues précités), par couples de langues et directions de traduction (ex. EN->FR). OCM est disponible sous une licence MIT6. Il est animé par le noyau de Marian NMT, lui-même disponible sous licence MIT7. Il offre la possibilité d’être exécuté directement sur un ordinateur de bureau.

Caractéristiques d’Opus CAT-MT

Une fois lancé, le logiciel affiche une interface très sobre et limitée à peu d’écrans accessibles par des onglets. Avant d’entrer dans le détail de certaines opérations de base, présentons quelques caractéristiques essentielles de fonctionnement. Avant de se servir du logiciel de traduction automatique, l’utilisateur sélectionne le modèle qu’il veut employer parmi ceux dont il dispose au moyen d’une case à cocher. Les illustrations qui suivent présentent l’environnement avec divers modèles de traduction déjà présents et qui sont prêts à l’emploi pour obtenir immédiatement des traductions automatiques. La phase initiale indispensable étant de sélectionner un modèle générique pour une direction de traduction, tel que décrit plus bas.

Illustration 1 : Affichage d’OCM à l’ouverture

Illustration 2 : Fenêtre de traduction

Associer un modèle générique pour la direction de traduction souhaitée

Avant de commencer à traduire, la définition d’un contexte linguistique de traduction est bien entendu essentielle. Pour cela, il est nécessaire de décharger un modèle pour la direction de traduction envisagée. Le menu « Models » dans le programme OCM offre la possibilité de sélectionner le modèle de son choix en allant le décharger grâce à un bouton dédié. Le modèle souhaité (ex. EN-FR) est un préentraînement issu d’OPUS-MT grâce auquel l’utilisateur s’affranchit d’une phase initiale qui pourrait prendre un temps incalculable pour lui. Dans l’illustration ci-dessus, le bouton « Install OPUS model from Web » permet d’aller chercher un modèle. Comme on peut le voir, deux modèles ont été installés : de l’allemand vers le français et de l’anglais vers le français (opus 2021-02-22). La philosophie de l’application prévoit que l’utilisateur peut ensuite affiner les capacités de ce préentraînement standard à partir d’autres corpus spécialisés, qu’il choisit en fonction de ses centres d’intérêt. Il s’agit d’un « ajustage » – ou fine-tuning – à un objectif de traduction particulier.

Entraîner OCM à partir d’un corpus personnalisé

Cet ajustage nécessite une phase de préparation. Il revient à l’utilisateur de constituer un corpus de textes parallèles, typiquement une sélection de fichiers de textes originaux et de leurs traductions dans un domaine spécialisé.

Pour cet ajustage, l’utilisateur doit disposer d’alignements de documents en versions originale et traduite, matérialisés dans des fichiers de « mémoire de traduction ». Ceux-ci se présentent communément dans le format standard et ouvert *.TMX, une variante dédiée de XML, et qu’accepte OCM. Un fichier de ce type contiendra des séquences appariées par bloc contenant les segments en langue de départ d’un texte, lesquels sont associés à ceux de la langue d’arrivée dans sa traduction8.

Soit on emploie des fichiers de ce type à partir de réservoirs, soit on en construit pour l’occasion à partir de fichiers de son choix à l’aide d’applications ou de fonctions dédiées. Il est possible d’utiliser un programme qui appariera les segments automatiquement dans un fichier TMX de sortie avec un degré élevé de confiance. Le logiciel LF Aligner est un exemple qui permet de procéder rapidement à cette opération lorsqu’on a l’assurance d’un parallélisme quasi parfait dans la succession des blocs de texte entre les deux versions de fichiers traitées. Comme d’autres, cet outil permet après une phase d’analyse de vérifier à vue les paires de segments calculées, de les rectifier par fractionnement, fusion ou décalage ligne par ligne. Une fois satisfait de la justesse des alignements, on enregistre le résultat dans un fichier TMX.

À titre d’illustration, nous nous sommes fait la main pour notre premier ajustage avec des données issues de travaux internes comme de textes publiés en version bilingue. Ce fut le cas, les premiers jours de notre utilisation, en produisant des fichiers TMX à partir respectivement de contrats de licence et d’extraits de rapports ou de synthèses en anglais et en français du GIEC.

Il est toutefois intéressant de remarquer que le format TMX peut être plus habituel dans la communauté des traducteurs. Afin d’offrir une solution à des utilisateurs qui ne souhaitent pas passer par une telle constitution préalable, OCM offre aussi la possibilité d’utiliser des fichiers texte source et cible sans production de fichiers d’alignement.

Ajuster le modèle de traduction initial

Les fichiers TMX obtenus vont être employés comme corpus d’entraînement complémentaire qui va enrichir le modèle de base. Pour cela, il faut sélectionner le modèle général de couple de langues dans lequel on va souhaiter faire travailler OCM. On va ensuite rechercher sur son ordinateur les fichiers d’entraînement : les fichiers *.TMX collectés ou préparés. Cela s’effectue à l’aide du bouton « Fine-tune selected model ». Pour que ce corpus soit reconnu dans OCM, le logiciel oblige de lui attribuer un label pour le distinguer du modèle linguistique initial qui se trouve par le fait enrichi. Cela fait, on lance l’entraînement qui peut durer jusqu’à un maximum de deux heures par défaut, sans autre intervention de l’utilisateur. Les données proviennent du PC de l’utilisateur et y restent, pour ainsi dire « chez soi ». Le concepteur indique qu’un bon modèle ne doit pas dépasser 10 000 phrases pour demeurer efficace dans le contexte technique d’un PC9.

Pendant le processus d’ajustage, il est possible d’afficher un graphe de progression qui se matérialise sous la forme de deux courbes « in-domain » et « out-of-domain ». Celles-ci fournissent des indications à propos de la performance de l’ajustage, réputé correct quand la première courbe se rapproche de la seconde.

Une fois cette étape accomplie, il suffit de cocher le modèle obtenu avant de passer à la phase de traduction automatique, dont la sortie a été adaptée au domaine particulier choisi par l’utilisateur.

Traduire automatiquement

En direct

Une fois l’ajustage terminé, on peut alors ouvrir une boîte de dialogue de traduction. À cet endroit, on va pouvoir copier-coller des passages du texte à traduire. La version en langue d’arrivée sera produite en activant un bouton « Translate » et s’affichera dans une fenêtre en dessous de la saisie du texte original. L’interaction s’arrête-là, une surbrillance au survol du pointeur du curseur pourra signaliser peu ou prou dans l’une ou l’autre des deux fenêtres les équivalences entre passages. La traduction d’un texte de 250 mots peut prendre plusieurs secondes. La solution immédiate pour réutiliser le résultat est de le copier-coller dans une application extérieure (un logiciel de traitement de texte, par exemple).

Dans un logiciel de traduction assistée par ordinateur (TAO)

Pour aller plus loin que cette manipulation assez fastidieuse pour un traducteur, le concepteur a prévu un couplage avec différents outils de TAO, notamment ceux parmi les plus répandus dans la profession10. Si l’on ne veut pas être captifs de ces solutions, on peut intégrer OCM dans l’environnement d’OmegaT encore aisément disponible sans passer par un distributeur commercial. Un plugiciel est proposé et peut être recopié dans le répertoire plugin du répertoire d’installation sous Windows d’OmegaT dans ProgramFiles. Cette solution a été retenue ici.

Cela fait, il reste à activer le moteur en cochant « Opus MT » dans le menu de sélection Traduction automatique, répertorié dans la liste de choix affichée sous Options/Préférences – Traduction automatique d’OmegaT11. Tant qu’OCM sera actif simultanément sur le PC, ses résultats s’afficheront dans l’espace de travail, dans la fenêtre « Traduction automatique » de ce logiciel de TAO. L’utilisateur pourra reprendre les solutions proposées dans cette fenêtre telles quelles ou en les modifiant.

Illustration 3 : Extrait du retour d’OCM dans l’espace de travail d’OmegaT

Les résultats segment par segment viendront éventuellement compléter les éléments de glossaires et de correspondances avec les mémoires de traduction que l’utilisateur aurait chargés dans son environnement (non affichés dans l’illustration faute de place).

Règles de pré- et de post-édition

Le logiciel offre la possibilité de créer des règles afin d’ajuster le texte entrant et/ou le texte sortant du processus de traduction automatique. Ces règles permettent ainsi de procéder à des corrections en entrée, comme dans le cas de certains phénomènes orthotypographiques indésirables pouvant nuire au traitement et à la restitution du texte traduit par le logiciel (césures de fin de ligne, coquilles, etc.). Cela peut aussi permettre de maintenir certaines chaînes du texte source dans la cible pour préserver la précision d’une description technique. L’utilisateur intéressé pourra aussi recourir aux expressions régulières, ou regex. Avec de l’habitude, il pourra aussi combiner des règles dans des collections raisonnées, tout comme associer des règles de pré- et de post-édition.

Voici un exemple de règle de pré-édition rudimentaire et parcellaire avec regex à partir d’un cas purement théorique :

Illustration 4 : Cas d’un écran de test d’une règle de pré-édition dans OPUS-CAT MT

Qui OCM peut-il intéresser ?

Une exploration initiale des caractéristiques essentielles de ce logiciel livre l’expérimentateur à un certain nombre de réflexions pour son utilisation dans un contexte pratique. On peut entrevoir deux pistes d’application pour des acteurs particuliers liés au monde académique.

Les traducteurs

OCM est sous licence libre, et commodément installable. Cet atout peut intéresser au premier chef les professionnels de la traduction soucieux de préserver leur autonomie face à une tendance où la technologie peut être facteur de captivité technique et économique. Elle peut leur permettre de capitaliser librement à partir de leur propre antériorité de traductions. Il s’agit d’un avantage appréciable chez les praticiens en particulier expérimentés dans certaines spécialités et qui ont à leur actif  un important patrimoine de travaux dans leurs archives électroniques. Cela peut d’autant plus revêtir de l’intérêt en lien avec des donneurs d’ordre scientifiques, dont les contenus relèvent d’un niveau élevé de spécialité avec une terminologie et des traits phraséologiques spécifiques. Intégrer des travaux qui ont été attestés par des usagers spécialistes d’un domaine dans un ajustage peut constituer un recours intéressant. Cela peut trouver son sens  pour stabiliser une certaine pratique de l’écrit traduit en cohérence avec le domaine, en associant de la sorte TA et post-édition humaine.

De plus, cette solution peut leur offrir l’intégration d’une dimension technologique complémentaire dans la panoplie de compétences et de pratiques déjà diversifiées par nature. Enfin, le développeur d’OCM avance que le traducteur protège ainsi ses données et celles de ses donneurs d’ordre, point important dans la motivation de réaliser cette solution de la part de son concepteur. Argument qui peut intéresser la profession en indépendant comme les personnes intégrées dans des équipes multiprofessionnelles.

Les équipes d’édition

Le dernier cas cité peut concerner une rédaction de revue scientifique intéressée par la visibilité ou la diffusion bilingue de son contenu tout en préservant son indépendance. Il peut être intéressant de faciliter aussi bien que possible la reprise de choix terminologiques spécialisés de texte en texte quand une revue possède une antériorité significative de documents en deux versions linguistiques (articles, résumés). Cela requiert l’effort d’investir du temps dans une solution inhabituelle dans la chaîne éditoriale. Cet effort peut rapporter l’acquisition d’un savoir-faire pratique collectif dans le traitement linguistique, par ailleurs en partie présent quand la revue consent déjà l’effort de métadonniser ses contenus pour une visibilité internationale. Pour le collectif de travail, elle pourrait ouvrir la possibilité de factoriser certains acquis, comme de préserver là encore une relative autonomie à l’égard d’acteurs extérieurs. En outre, cela offre d’alléger certains coûts en internalisant plus sûrement le travail de traduction et de révision linguistique dans un environnement humain où l’on maîtrise les particularités microlinguistiques d’un domaine scientifique.

Expérimenter et se déterminer

Il faut reconnaitre que l’on doit probablement se préparer à un effort de travail et d’essais préalables. Du travail et de la vigilance sont nécessaires pour déterminer si la taille du corpus de traductions et le comportement du logiciel produisent un résultat acceptable dans un collectif suffisamment aguerri sur le plan linguistique considéré. Quoi qu’il en soit, une correction des textes produits par la machine sera, comme dans tous les cas de figure considérés, une nécessité à prévoir. Cela est d’autant plus prévisible, car en communication scientifique on est en présence d’une microlangue disciplinaire qui exige des adaptations propres aux pratiques rédactionnelles d’une communauté dans une aire linguistique ciblée. Il faudra aussi tenir compte de la perméation de l’anglais dans les pratiques langagières de la recherche qui peuvent brouiller l’élucidation dans une langue d’arrivée. Tous ces facteurs peuvent aussi impliquer de se poser au plus près du scientifique des questions d’harmonisation terminologique dans ce contexte consacré à publication.

Il faut donc pouvoir expérimenter pour tirer des leçons que rapporteront les essais accomplis pour pouvoir conclure en faveur ou contre un emploi systématique. Toujours est-il, en l’occurrence, que c’est le moyen le plus plausible de former son jugement en fonction de ses propres attentes, ressources et organisation du travail.

Réflexions diverses : avantages potentiels d’un inconvénient

Comparé à certaines solutions du marché, OCM n’offre pas l’avantage de la rapidité de nombre de webservices12, ni même de la grande fluidité de certains d’entre eux. Pour ces deux qualités d’apparence, on ne peut rivaliser en local avec le gigantisme des corpus dont disposent les solutions en ligne. De même, les temps de réponse sont tributaires du plateau technique d’installation d’OCM : les ordinateurs de bureau ne disposent que de processeurs conventionnels. Ceux-ci sont plus lents que les processeurs graphiques (GPU) que l’on trouve remployés dans les serveurs dédiés à la traduction automatique des opérateurs de services linguistiques sur le web.

Cependant, l’inconvénient peut devenir un avantage si l’on tient compte que l’utilisateur dispose avec OCM d’une certaine capacité d’intervention :

  • Il peut ajuster le modèle linguistique qu’il a adopté en le complétant par des modules supplémentaires d’entraînement qu’il produit. Il peut ainsi spécialiser les sessions de traduction selon ses besoins, dans des domaines et des tâches spécialisées de son choix. C’est un intérêt particulièrement pertinent quand il dispose d’une quantité de textes sources et cibles alignés et alignables ;
  • Il peut aussi intervenir en partie sur les flux en entrée et en sortie de traduction pour compléter de manière ad hoc l’ajustage des entraînements qu’il a réalisés.

Considérations générales provisoires

OPUS-CAT MT est une solution originale dans le monde des moteurs de traduction automatique neuronale. Solution locale ajustable, elle peut conduire à une relative autonomie auquel l’utilisateur peut aspirer selon son cas, p. ex. académique, juridique, économique (notamment le logiciel est sous licence libre), etc.

Dans l’hypothèse, probablement forte, où ces technologies deviennent une option pour certaines formes de communication interlingue, la présente solution pourrait faciliter une acclimatation envers ces processus de traduction automatique. Celle-ci serait précieuse que ce soit en situation d’apprentissage dicté par la nécessité ou dans un parcours de formation à la traduction et ses technologies. C’est en tout cas un terrain d’exploration possible.

Plus généralement, d’autres hypothèses peuvent être inspirées par les incertitudes énergétiques et climatiques qui émergent. Ce type de solution en environnement local semble aller dans le sens de certaines idées naissantes autour de l’IA et du TAL « verts ». À tout le moins, on peut s’interroger sur le profit que l’on pourrait tirer d’une traduction automatique relativement « dégradée » comme solution d’appoint ou de secours dans un contexte numérique encore plus dégradé. Elle pourrait peut-être permettre d’élaborer des solutions localisées plus résilientes en imaginant des configurations collaboratives nouvelles « en circuit court ».



Citer ce billet
Jean-François Nominé (2023, 4 septembre). OPUS-CAT MT : à la découverte d’un logiciel de traduction automatique neuronale installé en local. Traductions et science ouverte. Consulté le 17 juin 2024, à l’adresse https://doi.org/10.58079/vz5x

  1. https://helsinki-nlp.github.io/OPUS-CAT/ []
  2. https://opus.nlpl.eu/ []
  3. https://orcid.org/0000-0003-3065-7989 []
  4. https://opus.nlpl.eu/Opus-MT/ []
  5. https://www.helsinki.fi/en/about-us/people/people-finder/tommi-nieminen-9420508 ou https://www.linkedin.com/in/tommi-nieminen-37950139/?originalSubdomain=fi []
  6. https://fr.wikipedia.org/wiki/Licence_MIT []
  7. Voir https://marian-nmt.github.io/faq []
  8. Les précisions sur la direction de traduction sont incluses de manière normalisée dans ce même fichier, en en-tête comme segment par segment. Les codes langue ISO sont utilisés pour décrire les langues des appariements, avec éventuellement des variantes. EN indiquera l’anglais en général, ainsi que FR le français en général également, avec la possibilité de préciser qu’il s’agit d’anglais canadien, EN-CA, par exemple, et de français de Belgique, FR-BE. []
  9. Pour éviter de solliciter excessivement les capacités du matériel, l’espace alloué à une campagne d’ajustage (epoch) est limité à 2 048 Go d’espace de travail. []
  10. Trados Studio, memoQ, Wordfast, OmegaT, MemSource. []
  11. Version utilisée : OmegaT 4.3.3 sous Windows. []
  12. La rapidité est liée aux caractéristiques du matériel d’installation. Toutefois, il est intéressant de noter que le logiciel est paramétré pour ne pas monopoliser la totalité des ressources du matériel utilisé. []

2 réponses sur “OPUS-CAT MT : à la découverte d’un logiciel de traduction automatique neuronale installé en local”

    1. Pour le moment, nous n’avons pas pu mesurer à ce point les différentes situations qui permettraient de parvenir à estimer des niveaux de qualité en rapport avec des critères de temps. Néanmoins, nous avons pu constater après des séances d’entraînement ciblées une progression dans la pertinence des choix lexicaux. L’intérêt réside dans le choix du corpus. Nous avons perçu qu’un corpus bien choisi pour un entraînement spécifique à un contexte thématique engendre un raccourcissement des séquences de post-édition humaine.
      En parlant de post-édition, comme évoqué dans le billet, le logiciel comporte une fonction appelée ainsi qui permet à l’utilisateur, même en cours de session de travail avec un logiciel de TAO (OmegaT, en l’occurrence) de programmer la correction automatique d’erreurs fréquentes et de les voir disparaître ensuite des propositions produites dans le flux retourné par l’API associée. Cela contribue aussi à faciliter les tâches de post-édition humaine.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Rechercher dans OpenEdition Search

Vous allez être redirigé vers OpenEdition Search