Préparer des données d'entraînement

AutoML Translation entraîne des modèles personnalisés en utilisant des paires de phrases correspondantes dans les langues source et cible. Le service traite chaque paire de phrases comme un élément d'entraînement indépendant, sans supposer de corrélation entre paires distinctes.

Les paires de phrases utilisées pour entraîner votre modèle personnalisé doivent être au format .tsv (valeurs séparées par des tabulations) ou .tmx (Translation Memory eXchange). Vous pouvez regrouper plusieurs fichiers .tsv et .tmx dans un fichier de valeurs séparées par une virgule (.csv). Vous pouvez importer des fichiers .tsv ou .tmx individuels à l'aide de Google Cloud Console. Si vous utilisez l'API AutoML, vous ne pouvez utiliser que des fichiers .csv.

Les doubles sont toujours éliminés dans toutes les paires de phrases importées. Une paire de phrases est un double d'une autre paire lorsque sa phrase source correspond à une autre phrase source. En outre, AutoML Translation ne vous permet pas d'importer des fichiers ayant le même contenu.

Pour obtenir la liste des paires de langues compatibles, consultez la section Langues acceptées pour les modèles personnalisés.

Répartition des données

AutoML Translation utilise les paires de phrases que vous fournissez pour entraîner, valider et tester votre modèle personnalisé.

  • TRAIN : utilisez les données de type sentence pairs pour entraîner le modèle.
  • VALIDATION : utilisez les données de type sentence pairs pour valider les résultats renvoyés par le modèle pendant l'entraînement.
  • TEST : utilisez les données de type sentence pairs pour vérifier les résultats du modèle après l'entraînement.

Vous pouvez contrôler les paires de phrases qu'utilise AutoML Translation à chaque étape, en important des fichiers distincts pour les ensembles d'entraînement, de validation et de test. Si vous ne spécifiez pas explicitement les fichiers à utiliser à chaque étape, AutoML Translation divise automatiquement vos paires de phrases en trois ensembles. AutoML Translation utilise environ 80 % de vos données pour l'entraînement, 10 % pour la validation et 10 % pour les tests. AutoML Translation répartit vos données dans les trois ensembles de manière aléatoire. Vous pouvez utiliser au maximum 10 000 paires de phrases pour les ensembles de validation et de test. Après 10 000 paires, les paires de phrases sont envoyées vers l'ensemble d'entraînement.

Si vous effectuez plusieurs importations de données dans un même ensemble de données, vous pouvez spécifier manuellement la répartition des données pour une importation et utiliser la répartition automatique pour une autre importation. Les données sont toujours rééquilibrées par rapport à votre répartition manuelle après chaque importation et suppression de fichier.

Exigences en matière de données

Vos données d'entraînement doivent respecter les exigences suivantes :

  • Si vous laissez AutoML Translation répartir automatiquement vos données, vous devez envoyer au moins 1000 paires de phrases pour entraîner un modèle personnalisé.
  • Si vous répartissez manuellement vos données, vous devez fournir au moins trois paires de phrases pour l'ensemble TRAIN, et vous devez disposer d'au moins 100 paires de phrases pour chacun des ensembles VALIDATION et TEST.
  • Vous ne pouvez pas fournir plus de 10 000 paires de phrases pour l'ensemble VALIDATION ou pour l'ensemble TEST.
  • Votre ensemble de données ne peut pas dépasser le maximum de 15 millions de paires de phrases.

Recommandations concernant les données

Les recommandations suivantes peuvent vous aider à améliorer la qualité de votre ensemble de données d'entraînement :

  • Utilisez au moins 5000 paires de phrases pour TRAIN, 500 paires de phrases pour VALIDATION et 500 paires de phrases pour TEST. Cela dit, si possible, utilisez davantage de données. Le fait d'avoir plus de données pour l'ensemble TRAIN permet l'apprentissage de modèles récurrents. Le fait d'avoir plus de données pour les ensembles VALIDATION et TEST permet de vérifier que le modèle peut être généralisé à un ensemble plus large de scénarios dans votre domaine.
  • Utilisez des phrases d'environ 200 mots au maximum. AutoML Translation risque de supprimer les paires de phrases plus grandes. Pour en savoir plus, consultez la section Problèmes d'importation.
  • Corrigez les problèmes de données courants. Pour en savoir plus, consultez la section "Nettoyer les données désordonnées" du guide de préparation des données.

Valeurs séparées par des tabulations (.tsv)

AutoML Translation accepte les fichiers séparés par des tabulations, dans lesquels chaque ligne a ce format :

  • Source sentence tabulation Translated sentence

Exemple :

It's a beautiful day.\tEs ist ein schöner Tag.
Tomorrow it will rain.\tMorgen wird es regnen.

Tout le texte du fichier .tsv doit être du texte brut. Si le texte inclut des balises HTML ou un autre balisage, AutoML Translation considère le balisage comme du texte brut.

Les données sources séparées par des tabulations n'incluent pas de codes de langue permettant d'identifier les langues source et cible. Vous identifiez les codes de langue source et cible lorsque vous décrivez le modèle à entraîner. AutoML Translation interprète le premier segment en tant que langue source, et le second en tant que langue cible. Dans l'exemple ci-dessus, la source serait l'anglais et la cible l'allemand. 

Format Translation Memory eXchange (.tmx)

L'acronyme TMX (Translation Memory eXchange) désigne un format XML standard qui fournit des phrases de traduction source et cible. AutoML Translation accepte les fichiers d'entrée au format TMX, version 1.4. Exemple de structure requise :

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE tmx SYSTEM "tmx14.dtd">
<tmx version="1.4">
  <header segtype="sentence" o-tmf="UTF-8"
  adminlang="en" srclang="en" datatype="PlainText"/>
  <body>
    <tu>
      <tuv xml:lang="en">
        <seg>It's a beautiful day.</seg>
      </tuv>
      <tuv xml:lang="de">
        <seg>Es ist ein schöner Tag.</seg>
      </tuv>
    </tu>
    <tu>
      <tuv xml:lang="en">
        <seg>Tomorrow it will rain.</seg>
      </tuv>
      <tuv xml:lang="de">
        <seg>Morgen wird es regnen.</seg>
      </tuv>
    </tu>
  </body>
</tmx>

L'élément <header> d'un fichier .tmx correctement formé doit identifier la langue source à l'aide de l'attribut srclang, et chaque élément <tuv> doit identifier la langue du texte contenu à l'aide de l'attribut xml:lang.

Tous les éléments <tu> doivent contenir une paire d'éléments <tuv> avec les mêmes langues source et cible. Si un élément <tu> contient plus de deux éléments <tuv>, AutoML Translation ne traite que le premier élément <tuv> correspondant à la langue source et le premier correspondant à la langue cible. Le service ignore le reste. Si un élément <tu> n'a pas de paire d'éléments <tuv> correspondante, AutoML Translation ignore l'élément <tu> non valide.

AutoML Translation élimine les balises autour d'un élément <seg> avant de le traiter. Si un élément <tuv> contient plusieurs éléments <seg>, AutoML Translation concatène leur texte en un seul élément avec un espace entre eux.

Si le fichier contient des balises XML autres que celles présentées ci-dessus, AutoML Translation les ignore.

Si le fichier n'est pas conforme aux formats XML et TMX appropriés, par exemple s'il manque une balise de fin ou un élément <tmx>, AutoML Translation interrompt le traitement. AutoML Translation interrompt également le traitement s'il ignore plus de 1 024 éléments <tu> non valides.

Valeurs séparées par des virgules (.csv)

Pour importer des paires de phrases à l'aide de l'API AutoML, créez un fichier de valeurs, séparées par des virgules (.csv) qui identifie les fichiers .tsv et .tmx à utiliser, et qui peut également indiquer les paires à utiliser pour l'entraînement, la validation et l'évaluation. Le fichier .csv peut porter n'importe quel nom, et doit être encodé en UTF-8 et se terminer par une extension .csv. Le fichier comporte une ligne pour chaque fichier .tsv ou .tmx que vous importez, avec deux colonnes dans chaque ligne :

  • L'ensemble auquel assigner les paires de phrases du fichier. Ce champ est facultatif et peut contenir l'une de ces valeurs :

    • ENTRAÎNEMENT
    • VALIDATION
    • ÉVALUATION
    • NON ATTRIBUÉ

      Si un ensemble de données est spécifié comme NON ATTRIBUÉ, AutoML Translation le divise automatiquement afin de garantir un contenu suffisant pour l'entraînement, la validation et l'évaluation.

  • Le chemin d'accès complet au document .tsv ou .tmx contenant des paires de phrases.

Par exemple, votre fichier .csv peut contenir les éléments suivants :

TRAIN,gs://my-project-vcm/csv/en-fr-train.tsv
VALIDATION,gs://my-project-vcm/csv/en-fr-validation.tsv
TEST,gs://my-project-vcm/csv/en-fr-test.tsv