Como preparar dados de treinamento

O AutoML Translation treina modelos personalizados usando pares de frases correspondentes nos idiomas de origem e de destino. Ele considera cada par de frases um item de treinamento independente, sem pressupor uma correlação entre os pares.

Os pares de frases usados para treinar o modelo personalizado precisam estar no formato de valores separados por tabulação (.tsv) ou Translation Memory eXchange (.tmx) (em inglês). É possível agrupar vários arquivos .tsv e .tmx em um arquivo de valores separados por vírgula (.csv). É possível importar arquivos .tsv ou .tmx individuais usando o Console do Google Cloud. Se você usar a API AutoML, poderá usar apenas arquivos .csv.

O AutoML Translation usa os pares de frases inseridos para treinar, validar e testar o modelo personalizado.

  • TRAIN: use o sentence pairs para treinar o modelo.
  • VALIDATION: use o sentence pairs para validar os resultados que o modelo retorna durante o treinamento.
  • TEST: use o sentence pairs para verificar os resultados do modelo após ele ter sido treinado.

É possível controlar quais pares de frases o AutoML Translation usa para cada finalidade fazendo upload de arquivos de treinamento, validação e teste separados. Se você não especificar de maneira clara quais arquivos serão usados para essas três finalidades, o AutoML Translation dividirá automaticamente os pares de frases em três conjuntos. O AutoML Translation usa aproximadamente 80% dos seus dados para treinamento, 10% para validação e 10% para teste (até 10.000 pares para validação e teste).

Se você não especificar explicitamente conjuntos de treinamento, validação e teste, o número mínimo de pares de frases para treinar um modelo será 1.000. Se você exceder 100.000 pares de frases, o AutoML Translation só escolhe 10.000 deles para conjuntos de validação e teste, respectivamente. Outros pares de frases são enviados para o conjunto de treinamento. Nesse caso, é possível ter uma divisão de dados desequilibrada que pode afetar seu modelo. O AutoML Translation envia uma mensagem de aviso, mas ainda permite que o treinamento continue. Se você quiser especificar conjuntos de teste, validação e treinamento manualmente, os de validação e teste não poderão exceder 10.000. Caso contrário, o AutoML Translation rejeitará a importação e retornará um erro.

Os pares de frases sempre são desduplicados em todos os pares importados. Um par de frases é uma cópia de outra quando a frase de origem corresponde a outra frase de origem. Além disso, o AutoML Translation não permite importar dois arquivos com o mesmo conteúdo duas vezes.

Forneça pelo menos três pares de frases para os dados rotulados com TRAIN. O tamanho máximo aceito de um conjunto de dados é 15 milhões. O número mínimo de pares de frases usados para VALIDATION ou TEST é 100 cada. O número máximo de pares usados para VALIDATION ou TEST é 10.000.

Recomendamos que você use pelo menos 5.000 pares de frases para TRAIN, 500 pares de frases para VALIDATION e 500 pares de frases para TEST. Se possível, use mais dados. Ter mais dados para TRAIN ajuda o modelo a aprender padrões, enquanto ter mais dados para VALIDATION e TEST ajuda a generalizar o modelo para uma variedade maior de cenários no seu domínio.

Também recomendamos que você mantenha frases com aproximadamente 200 palavras ou menos. O AutoML Translation pode descartar pares de frases maiores que isso. Para mais informações, consulte Problemas de importação.

Entre diversas importações de dados do mesmo conjunto, é possível especificar conjuntos de treinamento/validação/teste para uma importação e usar a divisão automática para outra. Os dados são sempre re-equilibrados em relação à divisão manual após cada exclusão de importação e de arquivo.

Valores separados por tabulação (.tsv)

O AutoML Translation aceita arquivos separados por tabulação, em que cada linha tem este formato:

  • Source sentence tabulação Translated sentence

Por exemplo:

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

Todo o texto em um arquivo .tsv precisa ser simples. Se o texto incluir tags HTML ou outra marcação, o AutoML Translation considerará a marcação como texto simples.

Os dados de origem separados por tabulação não incluem códigos de idioma para identificar os idiomas de origem e de chegada. Você identifica os códigos de idioma de origem e de chegada ao descrever o modelo que será treinado. O AutoML Translation interpreta o primeiro segmento como o idioma de origem, o segundo segmento como o de destino. No exemplo acima, o idioma de origem seria o inglês e o de destino, o alemão.

Translation Memory eXchange (.tmx)

Translation Memory eXchange (TMX) é um formato XML padrão que inclui frases de tradução de origem e de chegada. O AutoML Translation é compatível com arquivos de entrada em um formato baseado no TMX versão 1.4. Veja neste exemplo a estrutura necessária:

<?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>

O elemento <header> de um arquivo .tmx bem estruturado precisa identificar o idioma de origem por meio do atributo srclang. Além disso, cada elemento <tuv> precisa identificar o idioma do texto contido por meio do atributo xml:lang.

Todos os elementos <tu> precisam incluir um par de elementos <tuv> com os mesmos idiomas de origem e de chegada. Se um elemento <tu> contiver mais de dois elementos <tuv>, o AutoML Translation processará apenas o primeiro <tuv> correspondente ao idioma de origem e o primeiro correspondente ao idioma de destino, ignorando o restante. Se um elemento <tu> não tiver um par correspondente de elementos <tuv>, o AutoML Translation desconsiderará o elemento <tu> inválido.

O AutoML Translation remove as tags de marcação ao redor do elemento <seg> antes de processá-lo. Se um elemento <tuv> incluir mais de um <seg>, o AutoML Translation concatenará o texto deles em um único elemento com espaço entre eles.

Se o arquivo incluir tags XML diferentes das que foram mostradas acima, o AutoML Translation as ignorará.

Se o arquivo não estiver em conformidade com o formato XML e TMX adequado (por exemplo, se uma tag de fechamento ou um elemento <tmx> estiver ausente), o AutoML Translation cancelará o processamento dele. O AutoML Translation também cancelará o processamento se ele ignorar mais de 1.024 elementos <tu> inválidos.

Valores separados por vírgula (.csv)

Para fazer upload de pares de frases por meio da API do AutoML, crie um arquivo de valores separados por vírgula (.csv) que identifique os arquivos .tsv e .tmx que serão usados. Ele também pode indicar os pares que serão usados para treinamento, validação e teste. O arquivo .csv pode ter qualquer nome, mas precisa ser codificado em UTF-8 e terminar com a extensão .csv. O arquivo tem uma linha para cada arquivo .tsv ou .tmx do qual você está fazendo upload, com duas colunas em cada linha:

  • O conjunto ao qual atribuir os pares de frases neste arquivo. Este campo é opcional e pode ter um destes valores:

    • TRAIN
    • VALIDATION
    • TEST
    • UNASSIGNED

      Se um conjunto de dados for especificado como UNASSIGNED, o AutoML Translation o dividirá automaticamente para garantir que haja conteúdo suficiente de treinamento, validação e teste.

  • O caminho completo para um documento .tsv ou .tmx com os pares de frases.

Por exemplo, é possível ter o seguinte conteúdo no arquivo .csv:

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