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