sentence_bleu
结合方法 7使用 NLTK函数时SmoothingFunction
,最高得分为1.1167470964180197
. 而 BLEU 分数被定义为介于0
和之间1
。
此分数显示与参考完美匹配。我正在使用方法 7,因为我并不总是有长度为 4 的句子,有些可能会更低。使用方法 5 给出相同的结果。其他方法确实给出了 1.0 作为满分。
当我使用单个参考和候选时会发生这种情况,例如:
from nltk.translate.bleu_score import sentence_bleu, SmoothingFunction
cc = SmoothingFunction()
reference = ['overofficious 98461 54363 39016 78223 52180']
candidate = 'overofficious 98461 54363 39016 78223 52180'
sentence_bleu(reference, candidate, smoothing_function=cc.method7)
这给出了分数:1.1167470964180197
我做错了什么,这是预期的行为还是平滑功能的实现中存在错误?