Morgan
initialised evaluator
5d5c713
raw
history blame contribute delete
616 Bytes
from nltk.translate.bleu_score import sentence_bleu, SmoothingFunction
def calculate_bleu(reference_sentences, translations):
"""
Calculate BLEU scores for a list of translations.
:param reference_sentences: List of reference translations.
:param translations: List of translated sentences (hypotheses).
:return: List of BLEU scores.
"""
smoothing_function = SmoothingFunction().method1
bleu_scores = [
sentence_bleu([ref.split()], hyp.split(), smoothing_function=smoothing_function)
for ref, hyp in zip(reference_sentences, translations)
]
return bleu_scores