Metrica di qualità della traduzione BLEU

BLEU (Bilingual Evaluation Understudy) è una metrica per valutare una traduzione automatica. Il punteggio BLEU è un numero compreso tra 0 e 1 che misura la somiglianza tra una traduzione automatica e un set di traduzioni di riferimento di alta qualità:

  • Un punteggio pari a 0 indica che l'output della traduzione automatica non presenta sovrapposizioni con la traduzione di riferimento, il che indica una bassa qualità della traduzione.
  • Un punteggio pari a 1 indica una sovrapposizione perfetta con le traduzioni di riferimento, il che indica un'alta qualità della traduzione.

Limitazioni di BLEU

  • BLEU è una metrica basata su corpus. La metrica BLEU ha un rendimento inadeguato se utilizzata per valutare singole frasi. Le singole frasi possono ottenere punteggi BLEU molto bassi, anche quando trasmettono la maggior parte del significato. Poiché le statistiche sugli n-grammi per le singole frasi sono meno significative, BLEU è, per sua natura, una metrica basata su corpus, ovvero le statistiche vengono accumulate su un intero corpus al momento del calcolo del punteggio. La metrica BLEU non può essere fattorizzata per le singole frasi.

  • BLEU non distingue tra parole di contenuto e funzionali. La metrica BLEU non distingue le parole di contenuto da quelle funzionali. L'omissione di una parola funzionale come un riceve la stessa penalità come se il nome NASA fosse erroneamente sostituito con ESA.

  • BLEU non è in grado di cogliere il significato e la correttezza grammaticale di una frase. L'omissione di una singola parola come non può cambiare la polarità della frase. Inoltre, prendendo in considerazione solo gli n-grammi con n≤4, le dipendenze a lungo raggio vengono ignorate, quindi BLEU spesso impone solo una piccola penalità per le frasi non grammaticali.

  • BLEU si basa sulla normalizzazione e sulla tokenizzazione. Prima di calcolare il punteggio BLEU, le traduzioni di riferimento e candidate vengono normalizzate e tokenizzate. La scelta dei passaggi in questi processi influisce in modo significativo sul punteggio BLEU finale.

Come interpretare i punteggi BLEU

Di seguito è riportata una linea guida approssimativa che suggerisce come interpretare i punteggi BLEU espressi in percentuale, non in cifre decimali:

Punteggio BLEU % Interpretazione
<10 Quasi inutile
10-19 Difficile capire le informazioni essenziali
20-29 Le informazioni essenziali sono chiare, ma la traduzione contiene errori grammaticali significativi
30-40 Traduzioni comprensibili e di buona qualità
40-50 Traduzioni di alta qualità
50-60 Traduzioni di qualità molto alta, adeguate e fluenti
>60 Qualità spesso migliore di quella umana

La mappa a gradiente di colore di seguito può essere utilizzata come scala generale di interpretazione del punteggio BLEU:

Interpretazione generale della scala

Dettagli matematici

Da punto di vista matematico, il punteggio BLEU è definito come:

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

con

\[ 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}} \]

dove

  • \(m_{cand}^i\hphantom{xi}\) è il numero di i-grammi nella traduzione candidata che corrispondono alla traduzione di riferimento.
  • \(m_{ref}^i\hphantom{xxx}\) è il numero di i-grammi nella traduzione di riferimento.
  • \(w_t^i\hphantom{m_{max}}\) è il numero totale di i-grammi nella traduzione candidata.

La formula è composta da due parti: la penalità per brevità e la sovrapposizione di n-grammi.

  • Penalità per brevità. La penalità per brevità penalizza le traduzioni generate troppo brevi rispetto alla lunghezza di riferimento più vicina con un decadimento esponenziale. La penalità per brevità compensa il fatto che il punteggio BLEU non ha un termine di richiamo.

  • Sovrapposizione di n-grammi. La sovrapposizione di n-grammi conta quanti unigrammi, bigrammi, trigrammi e quadrigrammi (i=1,...,4) corrispondono all'n-gramma omologo nelle traduzioni di riferimento. Questo termine funge da metrica di precisione. Gli unigrammi rappresentano l'adeguatezza, mentre gli n-grammi più lunghi rappresentano la fluidità della traduzione. Per evitare conteggi eccessivi, il numero di n-grammi viene troncato al numero massimo di n-grammi che si verifica nel riferimento (\(m_{ref}^n\)).

Esempio: calcolo di \(precision_1\)

Considera questa frase di riferimento e la traduzione candidata:

Riferimento: the cat is on the mat
Candidato: the the the cat mat

Il primo passaggio consiste nel contare le occorrenze di ogni unigramma nel riferimento e nel candidato. Tieni presente che la metrica BLEU è sensibile alle maiuscole.

Unigramma \(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

Il numero totale di unigrammi nel candidato (\(w_t^1\)) è 5, quindi \(precision_1\) = (2 + 1 + 1)/5 = 0,8.

Esempio: calcolo del punteggio BLEU

Riferimento:     The NASA Opportunity rover is battling a massive dust storm on Mars.
Candidato 1: The Opportunity rover is combating a big sandstorm on Mars.
Candidato 2: A NASA rover is fighting a massive storm on Mars.

L'esempio precedente è costituito da un unico riferimento e due traduzioni candidate. Le frasi vengono suddivise in token prima del calcolo del punteggio BLEU. Ad esempio, il punto finale viene conteggiato come token separato.

Per calcolare il punteggio BLEU per ciascuna traduzione, calcoliamo le statistiche seguenti.

  • Precisioni di n-grammi. La tabella seguente contiene le precisioni di n-grammi per entrambi i candidati.
  • Brevity-Penalty. La penalità per brevità è la stessa per il candidato 1 e il candidato 2, poiché entrambe le frasi sono composte da 11 token.
  • Punteggio BLEU. È necessario almeno un 4-gramma corrispondente per ottenere un punteggio BLEU > 0. Poiché la traduzione candidata 1 non ha 4-grammi corrispondenti, il suo punteggio BLEU è 0.
Metrica Candidato 1 Candidato 2
\(precision_1\) (1gramma) 8/11 9/11
\(precision_2\) (2gramma) 4/10 5/10
\(precision_3\) (3gramma) 2/9 2/9
\(precision_4\) (4gramma) 0/8 1/8
Penalità per brevità 0,83 0,83
Punteggio BLEU 0,0 0,27