Actualités et analyses de l'IAActualités et analyses de l'IA
Actualités et analyses de l'IA6 min de lecture

Aucune langue laissée pour compte

Traduire 200 langues avec un seul modèle de Meta AI. Ces deux modèles servent uniquement à créer les jeux de données des 200 paires de langues nécessaires pour entraîner le modèle final.

Mis à jour le 06 juill. 2022
Aucune langue laissée pour compte
Sommaire

Regardez la vidéo

GPT-3 et les autres modèles de langage sont vraiment cool. Ils peuvent servir à comprendre des textes, à les résumer, à transcrire des vidéos, à créer des applications de synthèse vocale et bien plus encore. Ils partagent toutefois un gros problème : ils fonctionnent bien seulement en anglais. Cette barrière linguistique nuit à des milliards de personnes qui souhaitent partager et échanger avec les autres sans pouvoir le faire.

Encore une fois, l’IA peut aussi résoudre ce problème. Le plus récent modèle de Meta AI, appelé « No Language Left Behind », fait exactement ça : il traduit entre 200 langues différentes avec une qualité à la fine pointe. Vous pouvez le voir comme une version plus vaste et plus puissante de Google Traduction.

En effet, un seul modèle peut traiter 200 langues. N’est-ce pas incroyable ?
Nous avons de la difficulté à obtenir d’excellents résultats uniquement en anglais, tandis que Meta s’attaque à 200 langues différentes avec le même modèle, y compris certaines des plus complexes et des moins représentées avec lesquelles même Google Traduction éprouve des difficultés. Il s’agit évidemment d’une avancée importante pour Facebook, Instagram et toutes leurs applications, mais aussi pour la communauté de recherche, puisque Meta a publié le code source, les modèles, les jeux de données et la procédure d’entraînement. Une initiative vraiment cool d’une grande entreprise pour faire avancer la recherche multilingue.

Exemple visuel de l’article « Aucune langue laissée pour compte »

Habituellement, l’utilisation d’un modèle d’IA pour traduire du texte exige une immense quantité de données textuelles appariées, par exemple des traductions français-anglais, afin que le modèle comprenne les liens entre les deux langues et sache passer de l’une à l’autre dans les deux directions. Le modèle doit donc voir pratiquement toutes les phrases et tous les textes possibles pour obtenir de bons résultats et bien généraliser dans le monde réel. C’est presque impossible pour la plupart des langues moins répandues, et extrêmement coûteux et complexe pour la majorité des langues. Nous entraînons généralement ce genre de modèle à traduire d’une langue à une autre dans une seule direction, et non entre 200 langues à la fois, ce qui exige un nouveau modèle chaque fois que nous voulons ajouter une langue.

Alors, comment Meta a-t-elle réussi à faire fonctionner un seul modèle avec des centaines de langues ?

Exemple visuel de l’article « Aucune langue laissée pour compte »

Image tirée de l’article scientifique.

Les chercheurs ont d’abord créé un jeu de données approprié. Meta a conçu un premier modèle capable de détecter automatiquement les langues, qu’elle appelle son système d’identification de la langue. Il utilise ensuite un autre modèle de langage fondé sur les Transformers pour trouver des paires de phrases dans toutes les données extraites. Ces deux modèles servent uniquement à créer les jeux de données des 200 paires de langues nécessaires pour entraîner le modèle de traduction final : NLLB200.

Exemple visuel de l’article « Aucune langue laissée pour compte »

Image tirée de l’article scientifique.

Passons maintenant à la partie intéressante : le modèle de traduction multilingue. Il s’agit évidemment d’une architecture encodeur-décodeur fondée sur les Transformers. Le nouveau modèle de Meta ressemble donc beaucoup à GPT-3. Il reçoit une phrase, l’encode pour pouvoir la décoder et produit une nouvelle phrase, idéalement une traduction de celle que nous lui avons envoyée.

Exemple visuel de l’article « Aucune langue laissée pour compte »

Image tirée de l’article scientifique.

La nouveauté vient des modifications apportées au modèle pour le faire fonctionner avec autant de langues plutôt que de le limiter à une seule. La première consiste à ajouter une variable qui identifie la langue source de l’input, obtenue avec le détecteur de langue dont nous venons de parler. Elle aide l’encodeur à mieux traiter la langue de cet input. Ils font ensuite la même chose avec le décodeur en lui indiquant la langue cible. Soulignons que ce mécanisme d’encodage conditionné ressemble beaucoup à CLIP, qui encode les images et le texte de manière semblable. Ici, dans des conditions idéales, le modèle encode une phrase d’une façon similaire, peu importe la langue.

Exemple visuel de l’article « Aucune langue laissée pour compte »

Ils utilisent des modèles de mélange d’experts à activation parcimonieuse pour mieux équilibrer le transfert entre les langues et les interférences, puis améliorer les performances des langues qui ont peu de ressources. Les mélanges d’experts à activation parcimonieuse sont essentiellement des modèles ordinaires qui activent seulement un sous-ensemble de leurs paramètres pour chaque input au lieu de solliciter la majorité, sinon la totalité, des paramètres à chaque fois. On comprend facilement pourquoi ce type de modèle convient parfaitement à cette application. Le mélange d’experts est simplement une étape supplémentaire ajoutée à l’architecture Transformer, tant dans l’encodeur que dans le décodeur. Il remplace la sous-couche du réseau à propagation avant par N réseaux à propagation avant, chacun doté de projections d’input et d’output. Pendant l’entraînement, le Transformer apprend automatiquement quel sous-réseau utiliser pour chaque langue.

Exemple visuel de l’article « Aucune langue laissée pour compte »

Image tirée de l’article scientifique.

Les chercheurs apportent aussi plusieurs petits ajustements à l’architecture elle-même. L’utilisation de modèles de mélange d’experts et l’encodage de la langue source sont toutefois certainement les changements les plus importants qui distinguent ce nouveau modèle des modèles unilingues comme GPT-3. Si tous les détails internes de l’architecture vous intéressent, je vous recommande fortement leur excellent article scientifique très détaillé.

J’espère que vous avez aimé cet article. Dites-moi dans les commentaires si vous implémentez vous-même ce modèle ou contribuez à la recherche multilingue. J’en profite aussi pour vous inviter à partager vos créations ou tout ce que vous faites en IA dans notre communauté Discord.

Merci d’avoir lu cet article. On se revoit la prochaine fois avec un autre article scientifique incroyable !

Références

►Vidéo de Meta : https://www.youtube.com/watch?v=uCxSPPiwrNE
►Article scientifique : https://research.facebook.com/publications/no-language-left-behind
►Code : https://github.com/facebookresearch/fairseq/tree/nllb
►Mon infolettre (une nouvelle application de l’IA expliquée chaque semaine dans vos emails !) : /fr/newsletter/

Discussion

Commentaires

Chargement

Aucun compte requis. Votre nom et votre commentaire seront publics, alors n'incluez pas de renseignements privés. Consultez la page de confidentialité pour les détails.

Continuez à apprendre

Vous voulez le côté pratique de l'IA, sans le brouillard marketing ?

Je partage ce qui est utile sur YouTube, Substack et dans mes guides d'ingénierie IA.

FAQ

Qu’est-ce que No Language Left Behind ?

NLLB-200 est le modèle de traduction multilingue de Meta conçu pour traduire directement entre environ 200 langues.

Pourquoi les langues qui ont peu de ressources sont-elles difficiles pour les modèles de traduction ?

Elles disposent de moins de phrases parallèles de grande qualité, de sources numériques et de jeux de données d’évaluation normalisés.

Comment a-t-on comblé les paires de langues manquantes ?

Des modèles auxiliaires ont extrait et filtré des paires de phrases traduites afin de créer le jeu de données utilisé pour NLLB-200.

Comment le modèle de traduction traite-t-il une phrase ?

Il encode les tokens de la langue source sous forme de représentation, puis décode cette représentation dans la langue cible.

Pourquoi un seul modèle multilingue est-il utile ?

Les langues apparentées peuvent partager les représentations apprises, ce qui améliore la couverture sans devoir entraîner un système distinct pour chaque paire.