【NLP】BLEU值满分是100分吗?
为了解决这个问题,首先需要知道BLEU值是如何计算出来的。
BLEU全称是Bilingual Evaulation Understudy。其意思是双语评估替补。所谓Understudy(替补),意思是代替人进行翻译结果的评估。
BLEU的思想基于Count based Model,尽管它并不完美,但它提供了一种非常有效的以单一数字指标评估机器翻译结果的方法。
下面以一个例子说明BLEU的计算。
假如正确的翻译参考(2)个是:
The cat is on the desk.
There is a cat on the desk.
那么很自然想到,用实际翻译结果中出现在参考翻译中的单词数除以实际翻译结果单词总数,是一种评估方法。例如,若翻译结果为The cat are on the desk
。则评分为:\(5/6\),只有are没有出现,这看起来是合理的。但是若翻译结果为is is is is is is is
,那么很显然,评分为\(6/6\),is在参考翻译句子中出现了。很明显,这就不对了。
一个解决方法是,规定实际翻译结果中每个单词的计数不得超过在单个参考翻译中出现的最大次数。即上述is is is is is is
结果,单词is在参考翻译中出现的最大次数是1,因此,评分为\(1/6\)。
这是比较合理的。
还有个因素需要考虑,假如实际翻译句子为desk the on cat a is there
,那么得分为\(7/7\),虽然单词都出现了,上面的方法仅仅考虑了uni-gram,句子的流畅度却没有考虑。因此,根据“平滑”的思想,进一步考虑bi-gram,tri-gram。实际应用中,一般是考虑1-gram到4-gram。具体来说:
计算所有单个单词,\(x_i\)在参考翻译中的得分,计算方式为:
\(在参考翻译中的最大出现次数在实际翻译中的出现次数score1 = \frac{\sum_{i=1}^nx_i在参考翻译中的最大出现次数}{\sum_{i=1}^nx_i在实际翻译中的出现次数}\)
式中,\(n\)是一元组,即单个单词数(不包括重复)。
计算所有二元组,记为\(x_i\)在参考翻译中的得分,计算方式为:
\(在参考翻译中的最大出现次数在实际翻译中的出现次数score2 = \frac{\sum_{i=1}^nx_i在参考翻译中的最大出现次数}{\sum_{i=1}^nx_i在实际翻译中的出现次数}\)
式中,\(n\)是二元组数(不包括重复)。
类似的计算三元组,四元组得分。
可见,若翻译结果好,每个得分的值就是1。
最后,将四个得分平均(或加权),得到最后的分数:
\(score = \frac{1}{4}*(score1+score2+score3+score4)\)
实际应用中,常常取自然指数作为最后的评分值,即:
$score =e^{ \frac{1}{4}*(score1+score2+score3+score4)} $
现在的应用(paper)中评估BLEU值,一般取n-gram从1到4,并不做平均,而是做加和再取对数值。即实际中的BLEU值计算方式为:
\(BLEU = e^{ (score1+score2+score3+score4)}\)
可见,如果翻译结果恰为某个参考翻译结果,四个得分都取1,最终的\(BLEU\)值为\(e^4=54.598\),即BLEU值最大为54.598分。
【NLP】BLEU值满分是100分吗?的更多相关文章
- Perfmon——为什么“% Disk Time”计数器的值会大于100%?
最近在使用perfmon做性能测试时发现,“% Disk Time”计数器的值总是会大于100%.如下图所示. perfmon上对“% Disk Time”的中文描述为: % Disk Time 指所 ...
- 如何在C艹大作业上用复数计算器拿下一个100分
0. qt qt简介: 百度百科 下载:官网下载 申请个账号就可以免费用了 安装方式可以在百度上找到,建议安装MinGW,其余自选. 1. 建立第一个qt文件 打开Qt Creator,点击文件,点击 ...
- (很难啊)如何实时获取DBGrid 中当前单元格输入的内容? [问题点数:100分,结帖人yifawu100]
如何获取DBGrid 中当前单元格输入的内容? 还没输入完成,我想实时获取 Cell中的内容,以便作其他处理,用什么事件呢? 所以Field的Onchange事件是没用的. DBGrid1.Selec ...
- Coursera Algorithms Programming Assignment 3: Pattern Recognition (100分)
题目原文详见http://coursera.cs.princeton.edu/algs4/assignments/collinear.html 程序的主要目的是寻找n个points中的line seg ...
- CCF201409-2 画图 java(100分)
试题编号: 201409-2 试题名称: 画图 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐 ...
- CCF201503-2 数字排序 java(100分)
试题编号: 201503-2 试题名称: 数字排序 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出. 输 ...
- CCF201509-2 日期计算 java(100分)
试题编号: 201509-2 试题名称: 日期计算 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给定一个年份y和一个整数d,问这一年的第d天是几月几日? 注意闰年的2月有2 ...
- CCF201512-2 消除类游戏 java(100分)
试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进 ...
- CCF201609-2 火车购票 java(100分)
试题编号: 201609-2 试题名称: 火车购票 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配. 假设一 ...
随机推荐
- .NET Core和Swagger 生成 Api 文档
测试/生产环境的BUG 这里更新一下在本地调试正常,在INT/PROD上抛错,错误信息为: */**/*.xml(Swagger json file) 文件找不到,在startup 里builder ...
- svn 卡死住,关闭后,用CleanUp报错解决
一.问题描述: 经常用SVN的人都知道,有时候更新文件更新着更新一般,突然卡顿住,死在那边动都不动出现提示:svn cleanup failed–previous operation has not ...
- hash一致性
参照:https://www.cnblogs.com/moonandstar08/p/5405991.html 参照:http://www.cnblogs.com/haippy/archive/201 ...
- 输入框中的空"",0,null的判断
改了一个小项目,里面有一个小的问题他们是这样提需求的.两个输入框,第一个输入框里面,输入的内容会对第二个输入框中的内容产生影响.具体是这样的:如果第一个输入框中的值不是“0”,那么第二个输入框就不能填 ...
- WEB前端需要了解的XML相关基础知识
什么是 XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没 ...
- arcgis api 3.x for js 入门开发系列二十一气泡窗口信息动态配置模板
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...
- 荣耀5.0以上手机(亲测有效)激活xposed框架的经验
对于喜欢搞机的朋友而言,大多时候会使用到xposed框架及其种类繁多功能强悍的模块,对于5.0以下的系统版本,只要手机能获得Root权限,安装和激活xposed框架是非常简便的,但随着系统版本的不断迭 ...
- .net 获取时间十二进制与二十四进制
[说明] visual studio工具,.net项目,获取时间 [易错问题] ①二十四小时制(HH小时大写) System.DateTime.Now.ToString("yyyy-MM-d ...
- 黑阔主流攻防之不合理的cookie验证方式
最近博主没事干中(ZIZUOZISHOU),于是拿起某校的习题研究一番,名字很6,叫做黑阔主流攻防习题 虚拟机环境经过一番折腾,配置好后,打开目标地址:192.168.5.155 如图所示 这里看出题 ...
- 我的Windows日常——炫酷的windows组件命令行打开方式
regedit -------注册表编辑器 gpedit.msc-------组策略编辑器 secpol.msc--------本地安全策略 control ----------控制面板 cmd--- ...