Avaliar modelos
Depois de treinar um modelo, o AutoML Translation usa o conjunto TEST
para avaliar a qualidade e a acurácia do modelo novo. O AutoML Translation
expressa a qualidade do modelo usando a pontuação BLEU (Bilingual Evaluation Understudy), que indica como o texto candidato é similar ao
texto de referência. Um valor de pontuação BLEU mais próximo indica que uma tradução está mais próxima do texto de referência.
Use esses dados para avaliar a prontidão do seu modelo. Para melhorar a qualidade do modelo, adicione mais pares de segmentos de treinamento (e mais diversos). Depois de ajustar o conjunto de dados, treine um novo modelo usando o conjunto de dados aprimorado.
As pontuações BLEU não são recomendadas para comparação entre corpora e idiomas diferentes. Por exemplo, uma pontuação BLEU de 50 do inglês para o alemão não é comparável a uma pontuação BLEU de 50 do japonês para o inglês. Muitos especialistas em tradução mudaram para abordagens de métricas baseadas em modelos, que têm maior correlação com as classificações humanas e são mais detalhadas na identificação de cenários de erro.
O AutoML Translation só oferece suporte a pontuações BLEU. Para avaliar seu modelo de tradução usando métricas baseadas em modelo, consulte o Serviço de avaliação de IA generativa na Vertex AI.
Receber a avaliação do modelo
Acesse o console do AutoML Translation.
No menu de navegação, clique em Modelos para ver uma lista dos seus modelos.
Clique no modelo a ser avaliado.
Clique na guia Treinar para ver as métricas de avaliação do modelo, como a pontuação BLEU.
Testar previsões de modelos
Ao usar o console do Google Cloud, você compara os resultados da tradução do seu modelo personalizado com o modelo NMT padrão.
Acesse o console do AutoML Translation.
No menu de navegação, clique em Modelos para ver uma lista dos seus modelos.
Clique no modelo a ser testado.
Clique na guia Prever.
Adicione texto de entrada na caixa de texto do idioma de origem.
Clique em Traduzir.
O AutoML Translation mostra os resultados de tradução para o modelo personalizado e o modelo NMT.
Avaliar e comparar modelos usando um novo conjunto de testes
No console do Google Cloud, é possível reavaliar modelos existentes usando um novo conjunto de dados de teste. Em uma única avaliação, inclua até cinco modelos diferentes e compare os resultados.
Fazer upload dos dados de teste para o Cloud Storage valores separados por tabulação ou como um arquivo Xchange de memória de tradução (TMX).
O AutoML Translation avalia seus modelos em relação ao conjunto de testes e produz pontuações de avaliação. É possível salvar os resultados para cada modelo como um arquivo em um bucket do Cloud Storage, em que cada linha tem o seguinte formato:
Source segment tab Model candidate translation tab Reference translation
Acesse o console do AutoML Translation.
No menu de navegação, clique em Modelos para ver uma lista dos seus modelos.
Clique no modelo a ser avaliado.
Clique na guia Avaliar.
Na guia Avaliar, clique em Nova avaliação.
Selecione os modelos que você quer avaliar e comparar e clique em Avançar.
O modelo atual precisa ser selecionado, e o Google NMT é selecionado por padrão, que pode ser desmarcado.
Especifique um nome para o nome do conjunto de teste para ajudá-lo a diferenciá-lo de outras avaliações e, em seguida, selecione seu novo conjunto de teste do Cloud Storage.
Clique em Próxima.
Para exportar previsões, especifique uma pasta de destino do Cloud Storage.
Clique em Iniciar avaliação.
O AutoML Translation apresenta pontuações de avaliação em um formato de tabela no console após a conclusão da avaliação. É possível executar apenas uma avaliação por vez. Se você especificou uma pasta para armazenar os resultados da previsão, o AutoML Translation grava arquivos TSV nesse local que são nomeados com o ID do modelo associado, anexado ao nome do conjunto de testes.
Como entender a pontuação BLEU
BLEU (BiLingual Evaluation Understudy) é uma métrica de avaliação automática do texto traduzido por máquina. A pontuação BLEU é um número entre zero e um que compara a similaridade do texto traduzido por máquina com um conjunto de traduções de referência de alta qualidade. Um valor de 0 significa que a saída traduzida por máquina não tem sobreposição com a tradução de referência (que indica uma qualidade menor), enquanto um valor de 1 significa que há sobreposição perfeita com as traduções de referência (que indica uma qualidade mais alta).
O AutoML Translation expressa as pontuações BLEU em porcentagem, e não em decimal entre 0 e 1.
Interpretação
Como orientação geral, a seguinte interpretação das pontuações BLEU (expressas como porcentagens em vez de decimais) pode ser útil.
Pontuação BLEU | Interpretação |
---|---|
< 10 | Praticamente inútil |
10 - 19 | Difícil de compreender o sentido |
20 - 29 | O sentido está claro, mas há erros gramaticais graves |
30 - 40 | Pode ser entendido como boas traduções |
40 - 50 | Traduções de alta qualidade |
50 - 60 | Traduções de qualidade muito alta, adequadas e fluentes |
> 60 | Em geral, qualidade superior à humana |
É possível usar o gradiente de cor a seguir como escala geral para interpretação da pontuação BLEU:
Detalhes matemáticos
Em termos matemáticos, a pontuação BLEU é definida como:
com
\[ 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}} \]
em que
- \(m_{cand}^i\hphantom{xi}\) é a contagem de i-gram no candidato correspondente a tradução de referência
- \(m_{ref}^i\hphantom{xxx}\) é a contagem de i-gram na tradução de referência
- \(w_t^i\hphantom{m_{max}}\) é o número total de i-grams na tradução candidata
A fórmula consiste em duas partes: brevity penalty e n-gram overlap.
Brevity penalty
Penaliza com um decaimento exponencial as traduções geradas que são muito menores do que o tamanho da referência mais próxima. Ela compensa o fato de que a pontuação BLEU não tem um termo de recall.N-gram overlap
Conta quantos unigramas, bigramas, trigramas e quadrigramas (i=1,...,4) correspondem ao equivalente de "n-gram" nas traduções de referência. Esse termo funciona como uma métrica de precisão. Os unigramas consideram a adequação da tradução. Já os "n-grams" mais longos consideram a fluência. Para evitar contagem excessiva, as contagens de n-gram são recortadas para o valor máximo de n-gram que ocorre na referência (\(m_{ref}^n\)).
Exemplos
Calculando \(precision_1\)
Considere esta frase de referência e possível tradução:
Referência: the cat is on the mat
Tradução: the the the cat mat
A primeira etapa é contar as ocorrências de cada unigrama na referência e na possível tradução. Observe que a métrica BLEU faz distinção entre maiúsculas e minúsculas.
Unigrama | \(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 |
O número total de unigramas no candidato (\(w_t^1\)) é 5, portanto, \(precision_1\) = (2 + 1 + 1)/5 = 0,8.
Como calcular a pontuação BLEU
Referência:
The NASA Opportunity rover is battling a massive dust storm on Mars .
Tradução 1:
The Opportunity rover is combating a big sandstorm on Mars .
Tradução 2:
A NASA rover is fighting a massive storm on Mars .
O exemplo acima é formado por uma única referência e duas possíveis traduções. As frases são tokenizadas antes de calcular a pontuação BLEU, conforme representado acima. Por exemplo, o ponto final é contado como um token separado.
Para calcular a pontuação BLEU de cada tradução, calculamos as estatísticas a seguir.
- N-gram precisions
A tabela a seguir contém as n-gram precisions de ambas as possíveis traduções. - Brevity penalty
É a mesma para os candidatos 1 e 2, já que as duas frases são formadas por 11 tokens. - Pontuação BLEU
Pelo menos um quadrigrama correspondente é necessário para atingir uma pontuação BLEU maior que 0. Como a possível tradução 1 não tem um quadrigrama correspondente, a pontuação BLEU dela é 0.
Métrica | Candidato 1 | Candidato 2 |
---|---|---|
\(precision_1\) (1gram) | 11/8 | 9/11 |
\(precision_2\) (2gram) | 4/10 | 5/10 |
\(precision_3\) (3gram) | 2/9 | 2/9 |
\(precision_4\) (4gram) | 0/8 | 1/8 |
Brevity-Penalty | 0,83 | 0,83 |
Pontuação BLEU | 0 | 0,27 |
Propriedades
A BLEU é uma métrica baseada em corpus
A métrica BLEU não apresenta bons resultados quando usada para avaliar frases individuais. No exemplo dado, as duas frases atingem pontuações BLEU muito baixas mesmo capturando grande parte do significado. Como as estatísticas de "n-gram" das frases individuais apresentam menor significado, por concepção, a pontuação BLEU é uma métrica com base no corpus. Ou seja, as estatísticas são acumuladas em um corpus inteiro na hora de calcular a pontuação. Não é possível fatorar a métrica BLEU definida acima em frases individuais.Não há distinção entre palavras de conteúdo e função
A métrica BLEU não distingue as palavras de conteúdo e função, ou seja, uma palavra de função solta, como "um", recebe a mesma penalidade de um nome "NASA" que é incorretamente substituído por "ESA".Baixa qualidade na captura de significado e gramática de uma frase
Uma única palavra solta, como "não", pode mudar a polaridade de uma frase. Além disso, o fato de considerar apenas "n-grams" menores que quadrigramas ignora as dependências de longo alcance. Portanto, a BLEU costuma impor somente uma pequena penalidade para frases gramaticalmente incorretas.Normalização e tokenização
Antes de calcular a pontuação BLEU, as possíveis traduções e as de referência são normalizadas e tokenizadas. A escolha das etapas de normalização e tokenização afeta consideravelmente a pontuação BLEU final.