机器翻译自动评测方法BLEU值方法

    最近看了看目前用得最广的机器翻译自动评测方法BLEU的原始论文,觉得这篇paper里面的工作做得很nice。让我很有感触。

    随着统计机器翻译方法的兴起,一个有趣的问题摆在人们的面前:如何评价一个机器翻译方法的好坏?

    最开始人们选用的是人工评测的方法,那就是一个翻译结果得到后,找一批专家来给每个句子翻译结果打分,然后统计均分。这里面就有问题了?首先,如果两个翻译结果给两批专家打分,如何保证我们打分的尺度一致。退一步讲就是一批专家给两个翻译结果打分,也无法保证打分尺度一致。人,毕竟不是机器嘛。其次,人工测评太耗费人力物力,并且无法再利用。现在机器翻译结果,让你等个十天八天再看结果,你修改一下你的系统,跑个新结果,又得等个十天八天的让专家打分,谁受得了?在这样的背景下,搞机器翻译的学者们迫切的希望有一种能够自动的客观的评价方法来代替人工评价。

    自动评测方法有很多种,我就不一一列举了。这里讲的是IBM的watson研究中心在02年提出的BLEU方法。paper的摘要就简明说明BLEU方法是高效低代价,与语言无关,并且——也是最重要的——与人工评价非常的相关(没有说接近,文章使用的是correlate,用词很考究)。

       为了证明他的corelate性能,作者做了很细致的工作。

        首先,肯定是自己提出自己的评价方法,就是比较候选译文(candidate)与参考译文(reference)中相同的片段数量。(参考 《机器翻译及其评测技术简介》)其思想是用翻译结果中连续出 现的N 元组( n 个单词/ 字或标点) 与参考译文中出 现的N 元组进行比较 , 计算完全匹配的N 元组的个数与翻译结果中N 元组的总个数的比例。 这是一种类似准确率的计算方法,它允许一个原文有多个参考译文。 

        然后,作者使用一个测试语料,让2个翻译专家和3个机器去翻译。 将所得的翻译结果编号H1, H2, S1, S2, S3。使用BLEU方法给这五组翻译结果打分。结果大家都知道,专家翻译的肯定比机器翻译的牛嘛。所以BLEU值这个时候大概也就是这个样子:H1 H2的比S1 S2 S3高。这也就初步说明这方法的确还行。我当时认为做到这一步就OK的嘛?怎么后面还有实验呢?作者很有意思,他为了让自己的工作更让人信服。也就是让人信服他的确是请的翻译专家(不然 可能是请的一两个小学生做出的烂的不行结果,你BLEU还给高分),并且翻译专家的确比机器会翻译。请了另一批语言专家两两来对比的看(假设翻译的BLEU分数排序是 H2,H1,S1,S2,S3 ),也就是将同一个句子的翻译结果分成四组:H2-H1,H1-S1,S1-S2,S2-S3。这些语言专家再来打分评价谁好谁坏,最后得出的的确如此 H2,H1,S1,S2,S3翻译质量依次降低。

        还没有完,为了更加完备的证明他的工作很牛逼,作者将五组翻译结果分别均分为五份,也就是H1分为H11,H12,H13,H14,H15等。也就是现在有5份翻译结果,每一份结果均有五组翻译。继续打分排序,看看是不是还是以前那个排序,即看是否是以前那个 H2,H1,S1,S2,S3顺序。最后作者指出他的方法跟参考译文的数量有关,接着又是一些实验,证明着五个BLEU排序的与参考译文的数量关系不大。。

        最后,他说他的BLEU方法的确很好。真的是这样,看完这些实验,的确没有什么毛病能够挑出来的。


       看完这些工作后,我很有感触的。做实验做研究应该向这些大牛们学习,工作一定要细致完备。以前做实验做研究更是一种“碰”好结果。一取得比baseline好的结果,马上断定我的方法比baseline牛。很少静下心来想想提高的背后有着什么。能否继续提高,在不同的条件下能否还比baseline牛。透过现象看到本质,这才是研究。

你可能感兴趣的:(机器翻译,自动评价,人工评价)