bleu.py 文件源码

python
阅读 26 收藏 0 点赞 0 评论 0

项目:atma 作者: AtmaHou 项目源码 文件源码
def MP(candidate, references, n):
    """
    calculate modified precision
    """
    counts = Counter(ngrams(candidate, n))
    if not counts:
        return 0

    max_counts = {}
    for reference in references:
        reference_counts = Counter(ngrams(reference, n))
        for ngram in counts:
            max_counts[ngram] = max(max_counts.get(ngram, 0), reference_counts[ngram])

    clipped_counts = dict((ngram, min(count, max_counts[ngram])) for ngram, count in counts.items())

    return sum(clipped_counts.values()) / sum(counts.values())
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号