A métrica de qualidade de tradução BLEU

O BLEU (Bilingual Evaluation Understudy) é uma métrica para avaliar textos traduzidos por máquina. A pontuação BLEU é um número entre zero e um que mede a similaridade do texto traduzido por máquina com um conjunto de traduções de referência de alta qualidade:

  • Uma pontuação de 0 significa que a saída traduzida por máquina não tem sobreposição com a tradução de referência, o que indica uma baixa qualidade de tradução.
  • Uma pontuação de 1 significa que há sobreposição perfeita com as traduções de referência, o que indica uma alta qualidade de tradução.

Limitações do BLEU

  • A BLEU é uma métrica baseada em corpus. A métrica BLEU não apresenta bons resultados quando usada para avaliar frases individuais. Frases únicas podem receber pontuações BLEU muito baixas, mesmo quando capturam a maior parte do significado. Como as estatísticas de n-gramas das frases individuais apresentam menor significado, por concepção, a pontuação BLEU é uma métrica com base no corpus, em que 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 em frases individuais.

  • A BLEU não faz distinção entre palavras de conteúdo e função. A métrica BLEU não distingue palavras de conteúdo e função. Uma palavra de função solta, como um, recebe a mesma penalidade de um nome NASA que é incorretamente substituído por ESA.

  • O BLEU não é bom para capturar o significado e a gramática das frases. A remoção de uma única palavra, como não, pode mudar a polaridade da 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.

  • O BLEU depende da normalização e da tokenização. Antes de calcular a pontuação BLEU, as traduções de referência e candidatas são normalizadas e tokenizadas. A escolha das etapas nesses processos afeta significativamente a pontuação BLEU final.

Como interpretar as pontuações BLEU

Confira a seguir uma orientação geral sobre como interpretar pontuações BLEU expressas como porcentagens, não decimais:

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:

Interpretabilidade geral da escala

Detalhes matemáticos

Em termos matemáticos, a pontuação BLEU é definida como:

$$ \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}} $$

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 à 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.

  • Penalidade de brevidade. A penalidade de brevidade 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.

  • Sobreposição de n-gramas. A "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\)).

Exemplo: cálculo de \(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. 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.

Exemplo: 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. 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 "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\) (unigrama) 8/11 9/11
\(precision_2\) (bigramas) 4/10 5/10
\(precision_3\) (trigramas) 2/9 2/9
\(precision_4\) (quadrigrama) 0/8 1/8
Brevity-Penalty 0,83 0,83
Pontuação BLEU 0 0,27