Traduction du texte et de la parole
Traduction de texte en NLP
1. Définition et mise en perspective
La traduction de texte en traitement du langage naturel (TALN) est une discipline majeure qui vise à automatiser le processus de conversion d’un texte d’une langue à une autre. Cette tâche complexe est cruciale dans un monde de plus en plus connecté, où la communication transcende les frontières linguistiques. La traduction automatique en NLP repose sur des algorithmes et des modèles linguistiques avancés pour capturer la signification du texte source et produire une traduction cohérente et précise dans la langue cible.
2. Processus théorique de la traduction de texte
L’idée est ici de traduire un texte écrit dans une langue L1 vers une langue L2.
1. Comme souvent en NLP, outre l’étape de nettoyage des données d’entrée, on commence par une tokenisation.
2. On vectorise ensuite les données d’entrée, par exemple à l’aide de Word2Vec.
3. On procède à la traduction automatique, selon l’une de ces deux approches :
-
l’approche statistique, qui utilise des corpus bilingues ;
-
l’approche neuronale, utilisant des réseaux de neurones récurrents (RNN) ou des transformers, qui donne en général de meilleurs résultats que l’approche statistique.
Nous allons donc nous...
Exemple pratique : traduction de l’anglais vers le français
1. Introduction
On choisit un extrait d’un texte datant de 1874 à propos du scientifique Thomas Young (1773-1929). Dans le domaine public, ce texte est disponible à cette adresse web : https://en.wikisource.org/wiki/Popular_Science_Monthly/Volume_5/July_1874/Sketch_of_Dr._Thomas_Young
« The subject of this eulogy was one of the most remarkable men in the annals of British science and literature—according to Prof. Tyndall, the greatest man of science that had appeared since Newton; and, as his biography has never been republished in this country, a brief sketch of his life will be fresh and instructive to many. Thomas Young was born in 1773, and died in 1829. He was the eldest son of ten children. His parents were both members of the Society of Friends, and strict observers of the principles of their sect, in which their children were carefully educated. Dr. Dalton, the eminent English chemist, was also of Quaker parentage and education; but, while he continued through life to retain his membership of the denomination and to conform to its principles, Dr. Young held the tenets and conformed to the observances of the Society only during his youth. He was a very precocious child. At two years of age he could read with fluency, and had read the Bible twice through before he was four years old. At six years of age he could repeat Goldsmith’s "Deserted Village," and had previously begun his Latin grammar. At seven years of age he was sent to a miserable boarding-school, but the next year at the house of a friend he came across a "Dictionary of Arts and Sciences," which he perused with intense interest, and also got instruction in the use of some mathematical and philosophical instruments. When nine years old he was sent to another school, where he remained four years, and made great proficiency in classics, mathematics, and natural philosophy. He also learned the principles of drawing, the art of book-binding, the construction of microscopes, telescopes, and electrical machines, and the use of the lathe. »
2. Le choix technologique
La grande variété des acteurs (Google Cloud AI, Microsoft Azure, AWS, etc.) à même de proposer des modèles neuronaux de traduction pré-entrainés de grande qualité, en particulier pour la traduction de l’anglais...
Traduction du français vers l’allemand et réciproquement
On procède de façon équivalente à l’exemple précédent, en utilisant Hugging Face/MarianT. On va donc avoir une traduction du français à l’allemand, puis une traduction du texte traduit, de l’allemand au français.
Le choix se porte ici sur un extrait de la Psychologie des foules par Gustave Le Bon, texte publié en 1895 (https://fr.wikisource.org/wiki/Psychologie_des_foules/Livre_I).
On choisit le modèle pré-entrainé Helsinki-NLP qui a de bonnes aptitudes en traduction français vers allemand et réciproquement (https://huggingface.co/Helsinki-NLP).
Voici l’extrait choisi :
Au sens ordinaire le mot foule représente une réunion d'individus
quelconques, quels que soient leur nationalité, leur profession ou
leur sexe, et quels que soient aussi les hasards qui
les rassemblent.
Au point de vue psychologique, l'expression foule prend une
signification tout autre. Dans certaines circonstances données, et
seulement dans ces circonstances, une agglomération d'hommes
possède des caractères nouveaux fort différents de ceux des
individus composant cette agglomération. La personnalité
consciente s'évanouit, les sentiments et les idées de toutes les
unités sont orientés dans une même direction. Il se forme une âme
collective, transitoire sans doute, mais présentant des caractères
très nets. La collectivité est alors devenue ce que, faute d'une
expression meilleure, j'appellerai une foule organisée, ou, si
l'on préfère, une foule psychologique. Elle forme un seul être et
se trouve soumise à la loi de l'unité mentale des foules.
Il est visible que ce n'est pas par le fait seul que beaucoup
d'individus se trouvent accidentellement côte à côte, qu'ils
acquièrent les caractères d'une foule organisée. Mille individus
accidentellement réunis sur une place publique sans aucun but
déterminé, ne constituent nullement une foule au point de vue
psychologique. Pour en acquérir les caractères spéciaux, il faut
l'influence de certains excitants...
Reconnaissance de la langue utilisée
1. Introduction
La reconnaissance de la langue utilisée dans un texte est également connue sous le nom de détection automatique de la langue (DAL). C’est une composante cruciale du traitement automatique du langage naturel (TALN). Son objectif est de déterminer la langue d’un texte donné sans information préalable sur celle-ci. Ce processus trouve des applications dans divers domaines tels que la recherche d’informations, la classification de documents multilingues et l’amélioration de l’expérience utilisateur, en particulier dans le domaine des moteurs de recherche sur Internet.
2. Stratégie en NLP
Plusieurs stratégies permettent de « reconnaître » la langue d’un texte, au moins d’un point de vue théorique :
-
Analyse des fréquences des caractères dans le texte : chaque langue a des caractéristiques spécifiques, telles que des lettres ou des combinaisons de lettres fréquentes. En comptant ces occurrences, un modèle peut être entraîné pour prédire la langue.
-
N-grammes et modèles de langue : en analysant les séquences de caractères (n-grammes) ou les mots, les modèles de langue peuvent être utilisés pour estimer la probabilité d’une séquence donnée dans une langue particulière. Plus la probabilité est élevée, plus la langue est probable. Les classificateurs de texte peuvent être formés à partir de jeux de données étiquetés pour identifier la langue d’un texte. Les caractéristiques du texte, telles que les n-grammes, servent de vecteurs d’entraînement.
-
Réseaux de neurones : les réseaux de neurones peuvent être utilisés pour apprendre des représentations de textes multilingues. Des architectures comme les réseaux récurrents (RNN) ou les transformers sont adaptées pour capturer des motifs complexes et des dépendances dans le langage.
3. Exemple simple à l’aide de NLTK
Soit les quatre phrases suivantes, respectivement en anglais, français, espagnol et allemand :
texte_en = "Hello, how are you today?" # Anglais ...