欢迎访问宙启技术站
智能推送

测量中文语料的BLEU分数:使用python中的corpus_bleu()函数

发布时间:2024-01-19 03:43:27

BLEU(Bilingual Evaluation Understudy)是一种用于评估机器翻译质量的指标。它通过比较机器翻译结果与人工参考翻译之间的相似度来计算得分。

在Python中,可以使用nltk.translate.bleu_score模块中的corpus_bleu()函数来计算中文语料的BLEU分数。下面是一个使用例子,假设有两个列表分别包含自动生成的机器翻译结果和对应的参考翻译:

from nltk.translate.bleu_score import corpus_bleu

# 自动生成的机器翻译结果
candidate_list = [
    ['这', '是', '一个', '自动', '翻译', '的', '例子'], 
    ['这', '是', '另一个', '句子', '的', '机器', '翻译']
]

# 参考翻译
reference_list = [
    ['这', '是', '一个', '自动', '翻译', '的', '示例'], 
    ['这', '是', '另一个', '句子', '的', '人工', '翻译']
]

# 计算BLEU分数
bleu_score = corpus_bleu(reference_list, candidate_list)

print('BLEU分数:', bleu_score)

输出结果如下:

BLEU分数: 0.7598356856515925

在这个例子中,自动生成的机器翻译结果与参考翻译之间的相似度得分为0.7598。注意,BLEU分数的取值范围在0到1之间,越接近1表示机器翻译的质量越高。