[Article en anglais] Specialized AI-Based Translation Technology 101

Traduction automatique de société de conseil

Les esprits derrière SYSTRAN s'assoient pour un entretien sur les complexités et les capacités des moteurs spécialisés de traduction automatique neuronale.

Participants : Peter Zoldan, Ingénieur principal en données - Ingénieur logiciel Programme linguistiqueSvetlana Zyrianova, Programme linguistique, Petra Bayrami, Ingénieur logiciel Jr - Programme linguistique, Natalia Segal, Ingénieur R&D.

Combien de données faut-il pour créer un moteur spécialisé ?

Plus il y a de données bilingues, meilleure est la qualité. Pour de vastes domaines comme les nouvelles, des millions de peines bilingues seront nécessaires. Cependant, si le domaine est étroit, comme les documents de support technique pour certains produits, alors même un petit ensemble de phrases de 50 000, améliore sensiblement la qualité. 

La quantité de données requises dépendra de l'étendue ou de l'étroitesse du domaine dans lequel vous spécialisez le moteur.

Lorsque vous sélectionnez des données pour un moteur spécialisé, quel type de données est le mieux adapté ?

Il est important que les données sélectionnées couvrent l'étendue réelle des données qui seront utilisées pour la traduction. Il faut s'assurer de tenir compte de facteurs comme le domaine et le style. Par exemple, si vous voulez traduire des courriels de clients au sujet de votre produit, mais que vous n'avez pas cela, les données de marketing du produit vous aideront à obtenir le domaine et le type de vocabulaire nécessaires à la traduction, mais pas le style. Donc, vous voudriez utiliser des e-mails, même s'il ne s'agit pas spécifiquement du produit, afin d'apprendre le style.

Il est également important d'examiner votre flux de travail pour voir s'il inclut des balises HTML ? à quoi ressemblent vos données et à quoi ressembleront les données lorsque vous les traduirez. Ainsi, lorsque vous passez par le workflow, nous plaçons vos données de formation dans le même workflow.

Décrivez l'une des spécialisations les plus difficiles sur lesquelles vous avez travaillé.

Les spécialisations les plus difficiles pour moi se produisent lorsque le style et le domaine sont très différents de ce sur quoi je me suis formée. Donc, par exemple, j'ai dû travailler sur une spécialisation qui impliquait beaucoup de fragments de phrases avec des mots très descriptifs. Les données de formation sont généralement des nouvelles ou comportent des phrases complètes. Donc, c'était un peu délicat de travailler avec les fragments que nous recevions.

Pour cette raison, nous avons dû y aller artificiellement et créer beaucoup de données qui avaient ces fragments de phrase pour les rendre plus familiers.

J'ai aussi travaillé sur un projet qui impliquait beaucoup de code, donc pas un langage naturel. Il s'agissait du programme informatique indiquant la couleur, le style de police, etc. C'était différent du flux du langage naturel auquel nous étions habitués. C'était certainement encore un défi que je devais surmonter.

Y a-t-il des langues plus difficiles à spécialiser que d'autres ?  Pouvez-vous donner des exemples ?

Avec les réseaux neuronaux, beaucoup de qualité est basée sur les données. Si vous avez des langues à faibles ressources comme le latin ou le tagalog, ce sera plus difficile que l'espagnol, par exemple, où il y a déjà beaucoup de données qui ont été traduites de l'anglais vers l'espagnol.

Certaines langues peuvent avoir beaucoup de données, mais elles sont toutes dans le même domaine. Par exemple, nous pourrions simplement avoir des sous-titres ouverts. Il devient difficile de faire sa spécialisation parce qu'il ne sait faire qu'un seul domaine. Il n’a pas une base de travail très large.

En outre, les paires de langues peuvent parfois être très différentes, comme l'anglais et le japonais, qui ont une origine très différente. Les styles de mots sont très différents.Ainsi, il est plus difficile d'apprendre par rapport à l'espagnol ou au français, qui ont une origine latine ou européenne.

En ce qui concerne les langues individuelles, chaque langue a ses propres bizarreries. Par exemple, avec le chinois, nous devons gérer l'espacement, qui peut être difficile. Avec le russe, ils ont beaucoup de cas différents et la morphologie est très avancée. Le turc est agglutinant, ce qui peut être délicat aussi. L'allemand comporte des noms composés et le fractionnement des verbes. Chaque langue a ses propres complexités qui peuvent rendre la spécialisation plus difficile.

Quels sont les conseils à suivre pour s'assurer que vos modèles spécialisés ne sont pas biaisés (par exemple, en fonction du sexe, de l'idée) ?

Le biais social est un problème pour toutes les applications d'intelligence artificielle. Le biais vient des données elles-mêmes. Notre société dans son ensemble est encore un peu biaisée, de sorte que les données produites par la société peuvent également être biaisées. Chez SYSTRAN, nous travaillons sur divers algorithmes de prétraitement et de nettoyage des données afin de réduire ce biais dans les données d'entraînement et, par conséquent, de réduire le biais dans les modèles.

En quoi la spécialisation d'un moteur basé sur l'IA diffère-t-elle de l'ancienne technologie de moteur statistique ? Comment la technologie basée sur l'IA améliore-t-elle la qualité des moteurs spécialisés par rapport à la technologie plus ancienne ?

Les moteurs statistiques ont pu combiner la traduction la plus probable pour une séquence de mots avec la sortie la plus probable pour cette langue. Cependant, pour obtenir ce document, il doit avoir vu la traduction. Les détails sont basés sur ce qui est disponible.

Le réseau neuronal va plus loin. Il peut créer des séquences qui n'ont jamais été vues auparavant. Il peut apprendre les attributs des langues. Dans le réseau neuronal sont intégrés des attributs tels que le genre, l'action, des parties de la parole, etc. Les méthodes statistiques n'ont pas cette capacité.

Le réseau neuronal peut aussi garder une trace de choses comme les dépendances à longue distance, il peut coordonner le genre, et il peut créer de l'intelligence et la traduire.

Pouvez-vous nous décrire un exemple de réussite en travaillant avec un client sur un moteur spécialisé ?

Nous avions un client qui voulait plusieurs moteurs spécialisés différents pour différents domaines. Nous avions un bon modèle général solide avec lequel nous pouvions travailler, mais nous avons également pu utiliser les données de chacun de leurs domaines pour les généraliser pour leur entreprise et les spécialiser davantage pour chacun de ces domaines individuels.

Ils avaient aussi des modèles très spécifiques qui devaient être protégés par un codage, exclusif au programme qui interromprait le processus du langage naturel. Nous avons pu isoler ces codes spéciaux afin que les réseaux neuronaux puissent se concentrer sur le flux naturel du langage tout en étant capables de préserver les codes qui étaient intégrés dans le langage naturel. C'était une preuve de concept et aujourd'hui nous n'avons fait qu'une paire de langues. Ils ont aimé et maintenant nous sommes chargés de faire plusieurs autres paires de langues.

Les clients peuvent désormais utiliser les outils de SYSTRAN pour créer leurs propres moteurs spécialisés.  Quelles sont les compétences requises pour ce faire ?

Chez SYSTRAN, nous travaillons très dur pour rendre les outils de formation et de spécialisation des modèles de traduction automatique neuronale aussi conviviaux que possible. Notre nouvelle solution de marché vise à mettre la traduction automatique neuronale à la portée de tous.

En ce qui concerne les compétences, je dirais qu'il faut une certaine connaissance de base de l'informatique, une certaine curiosité et un intérêt général pour le traitement de la langue. Il y a une légère courbe d'apprentissage pour s'habituer aux outils. Enfin, vous auriez besoin de bonnes données appropriées pour votre modèle afin de commencer votre spécialisation.

Pour nos clients commerciaux, sans les nommer, quels sont les exemples de moteurs spécialisés sur lesquels nous avons travaillé?

Nous avons beaucoup travaillé avec le gouvernement - juridique, électrique, support technique, jeux, marketing, technologie de l'information, affaires mécaniques, banque. Nous nous sommes également spécialisés en fonction des régions. Donc, nous avons fait brésilien-portugais, européen-portugais, espagnol différent, français différent. Bref, nous avons fait pas mal de spécialisations.

Comment savoir quand un moteur est prêt à être déployé ?  Utilise-t-on une mesure?

Oui, nous examinons divers indicateurs, mais le plus courant, c'est le Score UEBL. Donc, ce que nous avons c'est un ensemble de test qui a la source et la cible déjà traduites par l'humain et ensuite nous traduisons la source dans la cible. Il compare automatiquement la traduction que nous avons mise avec la traduction humaine et recherche les chevauchements de mots et obtient un score BLEU global.

C'est pour traiter des choses comme des synonymes ou différentes façons de formuler les choses. Donc, on ne peut pas penser que c'est une mesure parfaite, mais pour un score automatique, c'est assez bon. Habituellement, nous suivons le score BLEU tout au long de l'entraînement et regardons à mesure qu'il augmente. Une fois qu'il converge, une fois qu'il cesse de s'améliorer, c'est généralement à ce moment que nous voulons déployer le modèle.

Cependant, pour vraiment avoir une bonne idée du modèle, il faut un examen humain. Il faut vraiment y aller et regarder pour voir ce qui se passe. Parfois, des choses peuvent arriver qui ne sont pas reflétées dans le score BLUE. Un test à l'aveugle est le meilleur examen, où l'examinateur compare la qualité de la sortie de deux modèles sans savoir lequel provient de quel modèle. Cela garantit que l'évaluateur choisit le meilleur modèle sans parti pris.

Quels types de moteurs de spécialisation le gouvernement a-t-il déjà mis au point?

Nous avons élaboré des modèles fondés sur les médias sociaux, la science et la technologie. Nous avons également publié Arabizi avec l'arabe, ainsi que d'autres modèles génériques. Au cours de l'époque statistique, nous avons également pris des mesures pour la cybersécurité, les radars et la technologie nucléaire.

Comment maintenir un moteur spécialisé pour qu'il reste pertinent, surtout pour des domaines où la terminologie change rapidement ?

Le réseau neuronal apprend grâce aux données avec lesquelles vous l'entraînez. Plus les données sont pertinentes pour le cas de l'utilisateur, et évidemment, plus vous avez de données, meilleurs seront les résultats. Maintenant, pour mettre à jour un moteur spécialisé, vous devez rester à jour avec certaines terminologies comme les noms des gens ou les découvertes scientifiques. Pour maintenir la qualité, vous devrez ajouter des données supplémentaires.

C'est là que l'approche de formation infinie de SYSTRAN est utile. Ici, vous pouvez entraîner un modèle existant en ajoutant de nouvelles données au début de chaque époque. Cela permet de gagner automatiquement du temps, car il n'est pas nécessaire de se recycler.

Peut-on créer une spécialisation pour les médias sociaux, où l'on utilise des raccourcis et où certaines langues sont romanisées ?

Les moteurs peuvent être spécialisés dans n'importe quel domaine ayant des caractéristiques distinctives telles que l'utilisation du lexique ou de la grammaire. Les médias sociaux en sont un exemple, mais ils présentent des défis uniques. Le contenu est abondant, mais il est presque impossible d'obtenir une ligne de données bilingues qui est nécessaire pour former un modèle spécialisé.

Les données générées par des utilisateurs d'origines et de compétences linguistiques différentes ne sont pas modérées. En d'autres termes, il n'est ni vérifié ni corrigé. Donc, il aura une grammaire incorrecte, des fautes d'orthographe et un usage incorrect du mot.

Les médias sociaux sont aussi générés spontanément et fréquemment avec un sentiment d'urgence. Ainsi, l'utilisation de raccourcis et de néologismes est assez commune. Le lexique personnel peut également changer en fonction des tendances, ce qui peut se produire très rapidement.

Les médias sociaux non anglais, par exemple, l'arabe ou le russe peuvent être et sont fréquemment générés en utilisant l'écriture latine. Bien qu'il y ait quelques conventions de romanisation, il y a quelques variations dans la transcription réelle utilisée.

Le moteur spécialisé des médias sociaux doit être robuste pour gérer toutes les variations et tous les changements, ainsi que l'utilisation des raccourcis, les innovations lexicales et les erreurs possibles.

Chez SYSTRAN, nous avons formé un modèle de médias sociaux spécialisé en arabe, qui peut gérer les textes en arabe standard, en arabe dialectal, ainsi qu'en arabe romanisé, l'arabizi. Ainsi, le modèle traduira du texte en arabe et en latin.

En utilisant le meilleur modèle de base, diverses techniques que nous utilisons pour entraîner le modèle robuste à gérer la variation arabe, comme l'arabe dialectal ou l'arabe romanisé ou l'arabizi. Ces techniques comprennent la conversion des données du domaine en Arabizi en utilisant les conventions de transcription générées par les linguistes SYSTRAN, la traduction inverse et la modification des données. Pour maintenir le moteur à jour, il faut déployer des efforts continus pour se tenir au courant de tous les changements.

Lorsque vous travaillez avec les données d'un client pour créer un moteur spécialisé en tant que service professionnel, comment vous assurez-vous que les données restent sécurisées ?

La sécurité des données est très importante pour nous. Les données du client sont stockées dans une zone séparée des autres données générales de formation. En outre, chaque fichier individuel est marqué comme restreint et n'est accessible qu'aux personnes impliquées dans le traitement des données et la formation. Une fois la formation terminée, selon les préférences du client, les données sont purgées de notre système.

 

Auteur
Alexandre, spécialiste des technologies de traduction
Temps
Lecture : 9 min.
S'inscrire à la newsletter
Retrouvez toute l'actu et les dernières technos. Un magazine conçu par SYSTRAN