准确率、精确率、召回率和F1是在机器学习及NLP领域中常用的指标,但是如果没有涉及机器翻译、摘要抽取等seq2seq任务,一般不会使用BLEU和ROUGE作为评价指标,本文将会着重介绍两个指标基本意义及计算方法,为使用者提供参考。
BLEU
英文全称Bilingual evaluation understudy,这是一个从机器翻译任务中衍生出来的评价翻译质量的指标,可以称为双语互译质量评估。当然现在这个指标也已经被推广到其他序列到序列任务,用作评价生成后序列的质量。
BLEU通过分析输出句子与参考句子的N元组共现的程度,度量输出句子结果的精准度。BLEU的分数取值范围是 0-1,分数越接近1,说明生成句子的质量越高。
BLEU需要计算输出句子1-gram,2-gram,...,N-gram的精确率,一般 N 设置为4即可,公式中的Pn指n-gram的精确率。Wn指n-gram的权重,一般设为均匀权重,即对于任意n都有 Wn = 1/N。
BP是惩罚因子,如果输出句子的长度小于最短的参考句子,则BP小于 1。
BLEU的1-gram精确率表示输出句子忠于原文的程度,而其他n-gram表示输出句子的流畅程度。
英文全称Recall-Oriented Understudy for Gisting Evaluation,通过计算输出句子与参考句子的N元组共现的概率,度量输出句子结果的召回率。
分母是参考句子中n-gram的个数,分子是参考句子和输出句子共现(重合)的n-gram的个数。
ROUGE-L: 考虑了输出句子和参考句子之间的最长公共子序列
其中
LCS(X,Y)是
X和Y的最长公共子序列的长度,m,n分别表示参考句子和输出句子的长度(一般就是所含词的个数)。公式中的RLCS表示召回率,而PLCS表示精确率,FLCS就是ROUGE-L。一般beta会设置为很大的数,因此FLCS几乎只考虑了RLCS(即召回率)。注意这里beta大,则F会更加关注R,而不是P,可以看下面的公式。如果beta很大,则PLCS那一项可以忽略不计。
ROUGE-W:改进了ROUGE-L,用加权的方法计算最长公共子序列连续匹配的效果,不做详细介绍。
推荐阅读
AINLP年度阅读收藏清单
薅当当羊毛的机会又!双!!叒!!!叕!!!来了
中文命名实体识别工具(NER)哪家强?
学自然语言处理,其实更应该学好英语
斯坦福大学NLP组Python深度学习自然语言处理工具Stanza试用
太赞了!Springer面向公众开放电子书籍,附65本数学、编程、机器学习、深度学习、数据挖掘、数据科学等书籍链接及打包下载
数学之美中盛赞的 Michael Collins 教授,他的NLP课程要不要收藏?
自动作诗机&藏头诗生成器:五言、七言、绝句、律诗全了
模型压缩实践系列之——bert-of-theseus,一个非常亲民的bert压缩方法
这门斯坦福大学自然语言处理经典入门课,我放到B站了
征稿启示 | 稿费+GPU算力+星球嘉宾一个都不少
关于AINLP
AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。