Évaluer des modèles

Après avoir entraîné un modèle, AutoML Translation utilise votre ensemble TEST pour évaluer la qualité et la précision du nouveau modèle. AutoML Translation exprime la qualité du modèle grâce à son score BLEU (Bilingual Evaluation Understudy), qui indique la similitude entre la traduction automatique et le texte de référence. Plus la valeur de score BLEU est proche de 1, plus la traduction est proche du texte de référence.

Évaluez l'état de préparation de votre modèle à l'aide de ces données. Pour améliorer la qualité de votre modèle, envisagez d'ajouter des paires de segments d'entraînement supplémentaires (et plus diversifiées). Après avoir ajusté votre ensemble de données, entraînez un nouveau modèle à l'aide de l'ensemble de données amélioré.

Obtenir l'évaluation du modèle

  1. Accédez à la console AutoML Translation.

    Accéder à la page "Traduction"

  2. Dans le menu de navigation, cliquez sur Modèles pour afficher la liste de vos modèles.

  3. Cliquez sur le modèle à évaluer.

  4. Cliquez sur l'onglet Entraînement pour afficher les métriques d'évaluation du modèle, telles que son score BLEU.

Tester les prédictions d'un modèle

En utilisant la console Google Cloud, vous comparez les résultats de traduction de votre modèle personnalisé avec ceux du modèle NMT par défaut.

  1. Accédez à la console AutoML Translation.

    Accéder à la page "Traduction"

  2. Dans le menu de navigation, cliquez sur Modèles pour afficher la liste de vos modèles.

  3. Cliquez sur le modèle à tester.

  4. Cliquez sur l'onglet Prédiction.

  5. Ajoutez du texte dans la zone de texte de la langue source.

  6. Cliquez sur Traduire.

    AutoML Translation affiche les résultats de traduction du modèle personnalisé et du modèle NMT.

Évaluer et comparer des modèles à l'aide d'un nouvel ensemble de test

Depuis la console Google Cloud, vous pouvez réévaluer les modèles existants en utilisant un nouvel ensemble de données de test. Dans une même évaluation, vous pouvez inclure jusqu'à cinq modèles différents, puis comparer leurs résultats.

Importez vos données de test dans Cloud Storage en tant que fichier TSV (valeurs séparées par des tabulations) ou en tant que fichier TMX (Translation Memory eXchange).

AutoML Translation évalue vos modèles par rapport à l'ensemble de test, puis génère des scores. Vous pouvez éventuellement enregistrer les résultats pour chaque modèle en tant que fichier TSV dans un bucket Cloud Storage, chaque ligne ayant le format suivant :

Source segment tab Model candidate translation tab Reference translation
  1. Accédez à la console AutoML Translation.

    Accéder à la page "Traduction"

  2. Dans le menu de navigation, cliquez sur Modèles pour afficher la liste de vos modèles.

  3. Cliquez sur le modèle à évaluer.

  4. Cliquez sur l'onglet Évaluation.

  5. Dans l'onglet Évaluation, cliquez sur Nouvelle évaluation.

  6. Sélectionnez les modèles que vous souhaitez évaluer et comparer, puis cliquez sur Suivant.

    Le modèle actuel doit être sélectionné. Google NMT est sélectionné par défaut et vous pouvez retirer cette sélection.

  7. Indiquez le Nom de l'ensemble de test afin de le distinguer des autres évaluations, puis sélectionnez votre nouvel ensemble de test à partir de Cloud Storage.

  8. Cliquez sur Suivant.

  9. Pour exporter des prédictions, spécifiez un dossier de destination Cloud Storage.

  10. Cliquez sur Démarrer l'évaluation.

    AutoML Translation présente les scores d'évaluation sous forme de table dans la console une fois l'évaluation terminée. Vous ne pouvez exécuter qu'une seule évaluation à la fois. Si vous avez spécifié un dossier pour stocker les résultats de prédiction, AutoML Translation écrit sur cet emplacement les fichiers TSV (dont le nom est constitué de l'ID du modèle associé, suivi du nom de l'ensemble de test).

Comprendre le score BLEU

La métrique BLEU (BiLingual Evaluation Understudy) permet d'évaluer une traduction automatique. Le score BLEU est représenté par un nombre entre zéro et un, qui mesure la similitude entre un texte traduit automatiquement et un ensemble de traductions de référence de haute qualité. Une valeur égale à 0 indique que la traduction automatique ne correspond en rien à la traduction de référence (qualité inférieure), tandis qu'une valeur égale à 1 signale une correspondance parfaite avec les traductions de référence (qualité supérieure).

Il a été démontré que les scores BLEU coïncident fortement avec ce qu'un humain peut penser de la qualité d'une traduction. Notez que même les traducteurs humains n'atteignent pas un score parfait de 1,0.

Plutôt que d'utiliser un nombre décimal compris entre 0 et 1, AutoML Translation exprime les scores BLEU sous forme de pourcentage.

Interprétation

Nous vous déconseillons fortement d'essayer de comparer des scores BLEU entre plusieurs corpus et plusieurs langues. Même si vous comparez des scores BLEU pour un même corpus, mais avec un nombre de traductions de référence différent, le résultat peut se révéler extrêmement trompeur.

Toutefois, l'interprétation suivante des scores BLEU (exprimés en pourcentages et non en décimales) peut s'avérer utile à titre indicatif :

Score BLEU Interprétation
< 10 Traductions presque inutiles
10 à 19 L'idée générale est difficilement compréhensible
20 à 29 L'idée générale apparaît clairement, mais le texte comporte de nombreuses erreurs grammaticales
30 à 40 Résultats compréhensibles à traductions correctes
40 à 50 Traductions de haute qualité
50 à 60 Traductions de très haute qualité, adéquates et fluides
> 60 Qualité souvent meilleure que celle d'une traduction humaine

Le dégradé de couleur suivant peut vous servir à interpréter le score BLEU de manière générale :

Interprétabilité générale

Explication mathématique

Mathématiquement, le score BLEU est défini de la manière suivante :

$$ \text{BLEU} = \underbrace{\vphantom{\prod_i^4}\min\Big(1, \exp\big(1-\frac{\text{reference-length}} {\text{output-length}}\big)\Big)}_{\text{brevity penalty}} \underbrace{\Big(\prod_{i=1}^{4} precision_i\Big)^{1/4}}_{\text{n-gram overlap}} $$

avec

\[ precision_i = \dfrac{\sum_{\text{snt}\in\text{Cand-Corpus}}\sum_{i\in\text{snt}}\min(m^i_{cand}, m^i_{ref})} {w_t^i = \sum_{\text{snt'}\in\text{Cand-Corpus}}\sum_{i'\in\text{snt'}} m^{i'}_{cand}} \]

Où :

  • \(m_{cand}^i\hphantom{xi}\) est le nombre d'i-grammes dans la traduction automatique qui correspondent à la traduction de référence.
  • \(m_{ref}^i\hphantom{xxx}\) est le nombre d'i-grammes dans la traduction de référence.
  • \(w_t^i\hphantom{m_{max}}\) correspond au nombre total d'i-grammes dans la traduction automatique

La formule se compose de deux parties : la pénalité de concision et la correspondance de n-grammes.

  • Pénalité de concision
    La pénalité de concision pénalise les traductions générées qui sont trop courtes par rapport à la longueur de référence la plus proche, avec une décroissance exponentielle. Cette pénalité compense le fait que le score BLEU ne dispose pas de terme de rappel.

  • Correspondance de n-grammes
    La correspondance de n-grammes compte le nombre d'unigrammes, de bigrammes, de trigrammes et de quadrigrammes (i = 1,…,4) qui correspondent à leur équivalent de n-grammes au sein des traductions de référence. Ce terme agit comme une métrique de précision. Les unigrammes rendent compte de l'adéquation, tandis que les n-grammes plus longs rendent compte de la fluidité de la traduction. Pour éviter tout surdénombrement, le nombre de n-grammes est réduit au nombre maximal de n-grammes présents dans la référence (\(m_{ref}^n\)).

Exemples

Calcul \(precision_1\)

Prenons cette phrase de référence ainsi que cette traduction automatique :

Référence : the cat is on the mat
Traduction automatique : the the the cat mat

La première étape consiste à compter le nombre d'occurrences de chaque unigramme dans la référence et dans la traduction automatique. Notez que la métrique BLEU est sensible à la casse.

Unigram \(m_{cand}^i\hphantom{xi}\) \(m_{ref}^i\hphantom{xxx}\) \(\min(m^i_{cand}, m^i_{ref})\)
the 3 2 2
cat 1 1 1
is 0 1 0
on 0 1 0
mat 1 1 1

Le nombre total d'unigrammes dans la traduction automatique (\(w_t^1\)) est de 5, soit \(precision_1\) = (2 + 1 + 1)/5 = 0,8.

Calculer le score BLEU

Référence :     The NASA Opportunity rover is battling a massive dust storm on Mars .
Traduction automatique 1 : The Opportunity rover is combating a big sandstorm on Mars .
Traduction automatique 2 : A NASA rover is fighting a massive storm on Mars .

L'exemple ci-dessus comprend un texte de référence et deux traductions automatiques. Avant que le score BLEU soit calculé tel que décrit ci-dessus, les phrases sont tokenisées. Par exemple, le point final est comptabilisé comme un jeton distinct.

Afin de calculer le score BLEU de chaque traduction, nous calculons les statistiques suivantes :

  • Précision des n-grammes
    Le tableau suivant indique la précision des n-grammes pour les deux traductions automatiques.
  • Pénalité de concision
    La pénalité de concision est la même pour les traductions automatiques 1 et 2, car les deux phrases se composent de 11 jetons.
  • Score BLEU
    Notez que pour obtenir un score supérieur à 0, les textes doivent posséder au moins un quadrigramme correspondant. Comme aucun quadrigramme ne correspond dans la traduction automatique 1, son score BLEU est de 0.
Métrique Traduction automatique 1 Traduction automatique 2
\(precision_1\) (1gram) 8/11 9/11
\(precision_2\) (2gram) 4/10 5/10
\(precision_3\) (3gram) 2/9 2/9
\(precision_4\) (4gram) 0/8 1/8
Pénalité de concision 0,83 0,83
Score BLEU 0,0 0,27

Propriétés

  • La métrique BLEU est basée sur un corpus
    La métrique BLEU ne permet pas d'évaluer efficacement des phrases individuelles. Ainsi, bien qu'ils restituent en grande partie le sens d'origine, les deux exemples de phrases présentent des scores BLEU très bas. Comme les statistiques relatives aux n-grammes s'avèrent moins pertinentes pour les phrases individuelles, la métrique BLEU est, par nature, une métrique basée sur un corpus. En d'autres termes, les statistiques sont obtenues à partir d'un corpus entier lors du calcul du score. Notez que la métrique BLEU définie ci-dessus ne peut pas être factorisée pour des phrases individuelles.

  • Aucune distinction n'est faite entre le contenu et les mots-outils
    La métrique BLEU ne fait pas la distinction entre le contenu et les mots-outils. Par exemple, la pénalité liée à l'omission d'un mot-outil tel que "un" est identique à la pénalité appliquée en cas de remplacement du terme "NASA" par "ESA".

  • La métrique BLEU restitue mal le sens et la grammaticalité d'une phrase
    L'omission d'un seul terme tel que "non" peut inverser le sens d'une phrase. De même, en ne prenant en compte que les n-grammes où n ≤ 4, la métrique BLEU ignore les longues dépendances. Elle n'impose donc souvent qu'une faible pénalité aux phrases non grammaticales.

  • Normalisation et tokenisation
    Avant le calcul du score BLEU, les traductions de référence et les traductions automatiques sont normalisées et tokenisées. Le choix des étapes de normalisation et de tokenisation affecte considérablement le score BLEU final.