sentence-BLEU

Sentence-BLEU er en variant af BLEU-metrikken, der evaluerer kvaliteten af en enkelt oversat sætning ved at måle n-gram-overlap med en referencesætning.

Kort fortalt

Kort fortalt: Sentence-BLEU er en måde at vurdere, hvor god en enkelt maskinoversat sætning er, ved at sammenligne dens ord-sammenhæng med en korrekt oversættelse.

Kategori
metrik
Niveau
øvet
Udtale
ˈsɛntəns bluː

Betydninger

1
  1. 1

    Maskinoversættelsesmetrik, der beregner BLEU-scoren for en enkelt kandidatsætning mod en referencesætning, baseret på n-gram-præcision og en brevity-penalty.

    • Sentence-BLEU for den oversatte sætning var 0,45, hvilket indikerer moderat overlap med referencen.
    • På grund af sætningens korthed gav sentence-BLEU en misvisende lav score, på trods af at oversættelsen var korrekt.

Hvornår bruges det

Sentence-BLEU bruges ofte til at evaluere maskinoversættelsessystemer på sætningsniveau, f.eks. i test-sæt eller ved analyse af enkeltoversættelser. Det er dog mindre pålideligt for korte sætninger og anbefales normalt til korpus-evaluering.

Formel

BLEU = BP ⋅ exp( (1/N) ⋅ Σ_{n=1}^{N} log(p_n) ), hvor BP = min(1, exp(1 - r/c)) for brevity penalty, p_n er precision for n-gram, N typisk 4, r er referencelængde, c er kandidatlængde.

Kodeeksempel

from nltk.translate.bleu_score import sentence_bleu
reference = ['this', 'is', 'a', 'test']
candidate = ['this', 'is', 'test']
score = sentence_bleu([reference], candidate)
print(score)

Beregning af sentence-BLEU med NLTK: 'reference' er en liste af tokens for den korrekte sætning, 'candidate' for den oversatte. Scoren printes.

Oprindelse

Sammensat af 'sentence' (sætning) og 'BLEU' (Bilingual Evaluation Understudy), hvor BLEU oprindeligt blev introduceret af Papineni et al. i 2002 til korpus-evaluering.

Kilder

2
  • BLEU: a Method for Automatic Evaluation of Machine Translation (Papineni et al., 2002)
  • SacreBLEU: A Clean and Efficient Implementation of BLEU (Post, 2018)