NLP机器翻译任务中,如何用Bleu score评价翻译质量(学习心得)
机器翻译的一大难题是,一句法语句子,可以有多种英文翻译,这些翻译都是非常好的
那怎么去评估一个机器翻译系统的质量是不是好呢?
这不像图像识别,只有一个正确答案
通常我们有 BLEU score(Bilingual Evaluation Understudy 双语评估替补) 来解决
- 在戏曲界,understudy 指的是候补演员
假设我们拿到一句法语
同时得到几个人类翻译的结果(都是对的,也都很准确)
Bleu score 所做的,给定一个机器生成的翻译,自动计算一个分数,衡量机器翻译的好坏
下意识我们认为,只要机器翻译和其中任何一个人类翻译很接近,那就应该得到一个高的 Bleu score
Bleu score 来源于 Kishore Papineni, Salim Roukos, Todd Ward, Wei-Jing Zhu 发表的一篇非常有影响力的论文(读起来不费劲,老师建议可以读一下)
我们要做的是,看机器翻译 MT 的结果中,有多少词在人类的翻译参考中出现
- 一种方法叫做 Precision(精确度):看机器翻译的每一个词,有没有在翻译参考中出现。在上面的案例中,虽然全是 the 是一个非常糟糕的翻译结果,但是 Precision = 7/7 = 1(感觉这种衡量方法不靠谱)
- 改良后叫做 Modified precision:我们会设定最高权重上限,比如第一句翻译参考中,the 出现了 2 次;第二句中, the 出现了 1 次,那权重上限就是 2。这样 Modified precision = 2/7
在 Bleu score 中,我们不仅关注 单词,还关注词组(其实就是相邻的词对 bigrams)
- 这个例子中,一共有 5 种 bigrams 的组合
- 分别数一下出现的次数
- 分别数一下在翻译参考中出现的次数
- 最终 modified bigram precision = 4/6
可以将其公式化
这里的 P1 下标 1 表示的是 一元词组
推广到 n 元词组
如果机器翻译的结果和参考翻译中的某一句完全相同,那么 P1 = P2 = … = Pn = 1
也有可能通过某种组合各个参考翻译得到结果为 1
最终,我们把以上结合起来,获得最后的 Bleu score
即求所有 P 值的平均,然后取个 e 指数
然后在前面加上一个 BP 参数(brevity penalty 简短惩罚)
- BP 的作用在于,如果输出一个非常短的句子,那很容易得到 Bleu score 的高分,所以我们要防止这个情况的出现
- BP 在机器翻译长度大于人类翻译长度的时候取值为 1,否则产生惩罚
NLP机器翻译任务中,如何用Bleu score评价翻译质量(学习心得)相关推荐
- 语音识别 Speech recognition 中的 CTC cost,CTC损失函数(学习心得)
seq2seq 模型在语音识别方面的应用让人激动! 什么是语音识别问题呢? 气压随着时间推移不断变化,产生了音频 人的耳朵可以衡量不同频率和强度的声波 输入整个原始的音频片段 raw audio cl ...
- matlab中and怎么使用方法,MATLAB2014a中help与参考页中文翻译(用于学习) and
镇场诗:吾心为他人,此智不私藏.学术有小成,愿帮大家忙.诚心说愿望,愿见闻者得启发. /// and - Find logical AND and – 逻辑与 This MATLAB func ...
- [NLP] BLEU Score原理详解
BLEU SCORE BLEU Score 最早在2002年的ACL会议的一篇论文中被提出. 论文链接 BLEU: a Method for Automatic Evaluation of Machi ...
- NLP输出文本评估:使用BLEU需要承担哪些风险?
译者| 大鱼 责编 | 琥珀 出品 | AI科技大本营(公众号ID:rgznai100) 怎样评价输出为文本的系统? 刚接触 NLP 时常有个疑问,就是如何评估这样一个系统--其输出为文本,而非对输入 ...
- 机器学习(二十三)——Beam Search, NLP机器翻译常用评价度量, 模型驱动 vs 数据驱动
https://antkillerfarm.github.io/ Beam Search Beam Search(集束搜索)是一种启发式图搜索算法,通常用在图的解空间比较大的情况下,为了减少搜索所占用 ...
- 基于RNN的NLP机器翻译深度学习课程 | 附实战代码
作者 | 小宋是呢 来源 | CSDN博客 深度学习用的有一年多了,最近开始NLP自然处理方面的研发.刚好趁着这个机会写一系列 NLP 机器翻译深度学习实战课程. 本系列课程将从原理讲解与数据处理深入 ...
- NLP机器翻译深度学习实战课程基础 | 深度应用
作者 | 小宋是呢 来源 | CSDN博客 0.前言 深度学习用的有一年多了,最近开始 NLP 自然处理方面的研发.刚好趁着这个机会写一系列 NLP 机器翻译深度学习实战课程. 本系列课程将从原理讲解 ...
- 一些在NLP的面试中提问频率非常高的问题
作者:Pratik Bhavsar 编译:ronghuaiyang 导读 在NLP的面试中提问频率非常高的问题. 练习NLP是一回事,破解面试是另一回事.对NLP人员的面试与一般的数据科学非 ...
- 『深度应用』NLP机器翻译深度学习实战课程·零(基础概念)
0.前言 深度学习用的有一年多了,最近开始NLP自然处理方面的研发.刚好趁着这个机会写一系列NLP机器翻译深度学习实战课程. 本系列课程将从原理讲解与数据处理深入到如何动手实践与应用部署,将包括以下内 ...
最新文章
- SQL四种语言:DDL,DML,DCL,TCL
- 你不知道的 IDEA Debug 调试小技巧!
- centos 修改ip地址
- P1481 魔族密码 (LIS)
- 案例:监听域对象的生命周期
- 从 RNN 到 LSTM (Short-Term Memory)
- 反思设计——从大师身上反思
- 阶段5 3.微服务项目【学成在线】_day04 页面静态化_05-freemarker基础-List指令
- 几何画板课件:圆周角与圆心角关系
- photoshop照片尺寸
- 综述:目标检测二十年(2001-2021)
- 外显子bed文件获取
- 悉尼大学商业数据科学与计算机学院,悉尼大学数据科学专业
- 07_音频录制01_命令行
- 学习云计算前景如何?云计算成为获取人工智能主要途径
- vue+elementUI+后端springboot多用户评论、回复、点赞
- Drop user与cascade
- /etc/ssh/ssh_config line 59: Unsupported option “gssapiauthentication“
- 【车牌识别】模板匹配车牌库识别【含GUI Matlab源码 416期】
- Flex入门学习教程