31 March 2025

7 mins de lecture

Revitaliser l'alignement de mots : transposer une ancienne tâche de TAL aux applications du monde réel

Une tâche oubliée dans le TAL moderne

L'alignement de mots désigne le fait d'identifier des correspondances de mots entre un texte source et sa traduction. Le concept peut être étranger à la nouvelle génération d'utilisateurs de TAL, mais les plus expérimentés y reconnaîtront un composant important des anciens systèmes de traduction automatique. Même si les standards actuels en matière de modèles de traduction automatique ont quasi totalement abandonné l'alignement de mots explicite, cette tâche demeure pertinente dans de nombreuses applications modernes telles que l'évaluation des modèles de traduction et la propagation d'étiquettes.

-Studio LaForge- Revitalizing Word Alignment: Making an old NLP task practical for real world applications - 1

Exploiter l'alignement de mots pour enrichir un système d'appariement syntaxique par IA générative

Chez Ubisoft La Forge, nous utilisions l'alignement de mots dans un outil d'appariement syntaxique, une technique narrative dans laquelle des modèles syntaxiques (« livrer le <TRUC> au <LIEU> ») sont associés à des catégories conceptuelles (TRUC = kit de soins, LIEU = hôpital) pour créer de façon procédurale des textes en fonction du jeu.  L'un des défis de ce système dans les jeux AAA est qu'il est difficile à localiser dans d'autres langues ; nous avons donc conçu une méthode simple mais efficace pour traduire des modèles, qui consiste à propager d'une langue à une autre des étiquettes correspondant aux emplacements de modèles. 

Comme la capacité à déduire automatiquement les alignements de mots facilite la propagation d'étiquettes, l'élaboration de cet outil narratif représente une avancée technologique face à ce problème de TAL connu de longue date.  Dans cet article, nous revenons sur nos recherches en matière d'alignement de mots à travers des extraits de notre récent document « BinaryAlign: Word Alignment as Binary Sequence Labeling » publié durant l'ACL 2024.

Défis dans le déploiement des techniques d'alignement de mots avancées

En tentant de déployer des méthodes actuelles d'alignements de mots, nous avons été confrontés à deux défis.

Tout d'abord, du point de vue de la complexité, le processus de déploiement était loin d'être simple. Les standards actuels d'alignement de mots conseillent une classe de modèles différente selon la disponibilité des données « gold standard » d'entraînement à l'alignement pour une combinaison de langues donnée. Comme notre application devait prendre en charge des langues à volumes de ressources d'entraînement faibles aussi bien qu'élevés, cette variation dans les méthodes de prédilection ajoutait une couche de complexité supplémentaire à notre pipeline de déploiement.

D'autre part, du point de vue des performances, nous avons estimé que les standards actuels d'alignement de mots n'étaient pas optimaux. Ces approches ont du mal à gérer les alignements complexes, par exemple les alignements non contigus ou les termes non traduits, parce qu'elles considèrent l'alignement de mots comme un problème de classification à une seule étiquette. Cette limitation pose particulièrement problème pour les applications multilingues, car elle peut entraîner des dégradations de performances imprévues pour certaines combinaisons linguistiques, notamment lorsque de nombreux cas d'alignements complexes sont présents.

Ces défis nous ont conduits à chercher une solution plus unifiée et efficace capable de s'exécuter de façon homogène pour un vaste panel de langues et de cas d'alignements.

Reformuler l'alignement de mots en tant qu'ensemble de tâches de séquençage binaire

Nous avons posé comme hypothèse qu'il était plus intéressant de considérer l'alignement de mots comme une série de classifications binaires appliquée à chaque paire de mots possible, plutôt qu'une classification sous une seule étiquette comme le faisaient les standards existants.

En partant de cette idée, nous présentons BinaryAlign, une approche inédite de l'alignement de mots qui utilise un modèle de séquençage binaire. BinaryAlign reformule l'alignement de mots en tant qu'ensemble de tâches de classification binaires.

À titre d'illustration, le graphique ci-dessous démontre l'alignement de mots qu'utilise notre approche pour le mot de référence « sofa », avec la phrase source « He has a sofa » et la phrase cible « Il a un canapé ».

-Studio LaForge- Revitalizing Word Alignment: Making an old NLP task practical for real world applications - 2

BinaryAlign est constitué de deux composants clés :

  • __Un modèle linguistique multilingue pré-entraîné (de type BERT) __: il accepte comme entrée la concaténation des phrases source et cible, et renvoie les vecteurs-tokens contextualisés pour chaque token d'entrée.

  • __Un classificateur de tokens __: il accepte comme entrée les vecteurs-mots contextualisés renvoyés par le modèle linguistique multilingue pré-entraîné. Pour chaque token de la phrase cible, le classificateur calcule la probabilité qu'il s'aligne avec le mot de référence donné (ici, « canapé »).

Dans cet exemple, nous désignons le mot « sofa » comme terme de référence en l'entourant de tokens entraînables spéciaux (« [*] » dans le graphique) dans l'entrée du modèle linguistique pré-entraîné.

Ce processus décrit plus haut se répète pour chaque mot de la phrase source afin de générer l'alignement de mots de toute la phrase. Pour plus de détails sur notre méthode, consultez la section 3 de notre document.

BinaryAlign réalise une avancée technologique

Nous comparons BinaryAlign aux standards existants à différents degrés de supervision et pour cinq langues différentes.

-Studio LaForge- Revitalizing Word Alignment: Making an old NLP task practical for real world applications - 3

Comme indiqué dans le tableau ci-dessus, BinaryAlign atteint des performances de pointe dans toutes les combinaisons linguistiques testées, quel que soit le degré de supervision. Ce succès signifie que nous avons réduit la complexité de déploiement pour les modèles d'alignement de mots dans notre application d'appariement syntaxique, en créant une approche unifiée qui offre des performances optimales pour toutes les combinaisons linguistiques.

Plus de souplesse dans la gestion des alignements de mots complexes

Pour vérifier que BinaryAlign gère les alignements de mots complexes mieux que les méthodes précédentes, nous le comparons aux standards existants dans trois cas de figure complexes : 1) termes non traduits ; (2) termes alignés avec plusieurs mots ; (3) termes alignés avec plusieurs mots non contigus.

-Studio LaForge- Revitalizing Word Alignment: Making an old NLP task practical for real world applications - 4

Nos résultats indiquent que notre méthode gère ces cas de figure mieux que les standards existants. Ce point est particulièrement intéressant, car il signifie que la fréquence de ces cas de figure dans chaque combinaison linguistique modulera le gain de performances de notre méthode par rapport aux autres.

Conclusion

En reformulant l'alignement de mots en tant que série de tâches de séquençage binaire, BinaryAlign constitue une solution unifiée et efficace qui offre des performances supérieures aux standards existants, dans un vaste panel de langues et de cas d'alignement. Plus important encore, nos recherches rendent la tâche d'alignement de mots utilisable dans des situations réelles en utilisant un seul modèle, quel que soit le volume de ressources d'entraînement de chaque langue.

Une limitation de notre approche reste toutefois son coût d'inférence élevé, car elle nécessite une propagation avant pour chaque mot dans les phrases source comme cible. Il peut en résulter une surcharge de calcul importante, surtout pour les phrases longues à grande échelle. Pour y remédier, nous avons effectué des recherches supplémentaires visant à développer une méthode plus efficace qui conserve les performances améliorées de BinaryAlign tout en ne nécessitant qu'une seule propagation avant pour générer les alignements de mots. Cette nouvelle approche exploite la distillation des connaissances avec les modèles de BinaryAlign en tant que professeurs, et incorpore une architecture plus efficace qui utilise directement les vecteurs contextualisés des modèles linguistiques multilingues pré-entraînés.