今年7月初,MetaAI发布了一个新的翻译模型,叫做NoLanguageLeftbehind(NLLB),我们可以直译为“没有语言缺失”。顾名思义,NLLB可以支持200+种语言之间的任意翻译,MetaAI也开源了。它可以翻译你平时看不到的语言,比如卢干达语和乌尔都语。论文地址:https://research.facebook.com/publications/no-language-left-behind/开源地址:https://github.com/facebookresearch/fairseq/tree/nllb不过最近这项研究遭到质疑此前,有人认为,NLLB中MetaAI的许多说法毫无根据,具有误导性,评估结果存在严重缺陷。此外,怀疑论者还表示,根据MetaAI的评估方法,很容易获得比他们报告的数字更高的数字。持怀疑态度的是本杰明·玛丽,他是一位精通翻译技术的自然语言处理研究科学家。他的质疑可以概括为MetaAI把spBLEU和BLEU放在一起对比。对于这个问题,有研究人员表示:spBLEU是一个合理的度量,前提是文本没有空格(泰语等)。但是比较spBLEU和BLEU肯定是不正确的。网友ArleLommel回复BenjaminMarie:这个观点很棒。这也告诉我,当涉及到机器学习研究时,对于未经证实的研究应该非常谨慎。你在这里发现的确实表明,当人们只引用分数而不控制分数的生成方式时,事情会变得复杂。该论文的作者之一VedanujGoswami说:“我们100%同意作者的观点,即你不能比较不同分词器的BLEU分数。但作者的主要论点是我们论文中的大部分结果不可比是的。.在我们的论文中,表30和表31使用相同的分词器进行spBLEU评估(FLORES-101spm分词器),专门用于可比性。我们不使用FLORES-200spm分词器。这在第8.3节中有详细解释.1.同样,表35、36、37、38都使用可比较的指标/分词器来进行适当的比较。我们已经更新了论文。总的来说,目前机器翻译的评价方法并不完善,不同的论文采用了不同的方法。》介绍一下BenjaminMarie问题的具体内容:评价方法有缺陷首先我们打个简单的比方:Paul有25根香蕉,Bill有30个西红柿。你说Bill比Paul多5根香蕉吗?BLEU就像一根香蕉和spBLEU就像一个西红柿。用Previouswork替换Paul,用NLLB替换Bill。我们现在可以这样写:previousworkperformedat25BLEU,NLLBperformedat30spBLEU。你会说NLLB比以前好5个BLEU点吗work?有了上面的类比,下面描述的内容可能更容易理解。此前,MetaAI发布了一篇论文,对NLLB进行了充分的解释和评估。在论文的摘要中,他们声称该模型实现了44%的BLEU改进以前的SOTA方法。换句话说,NLLB会比以前的研究结果更好。关于BLEU,BLEU比以前的SOTA技术提高44%在机器翻译研究的历史上是很少见的。所以这个简单的句子论文中的ce代表科学进步。有媒体直接报道了这一说法,未经进一步证实,就将MetaAI定位于语言机器翻译的顶点。如果MetaAI选择发表如此大型的技术研究,他们应该提供非常可靠的科学证据。否则,在没有任何证据的情况下,MetaAI声称自己比其他人做得更好,这只会破坏其他研究机构已经和正在做的非常艰苦的工作。为了解释NLLB的错误问题,Marie试图证明MetaAI是如何被自己的结果误导的。通过使用NLLB中的简单示例和她自己发现的类似示例,Marie证明了在使用NLLB有缺陷的评估方法时实际上很容易击败SOTA。最后,玛丽指出并具体解释了他们评估中的主要错误。MetaAI将其模型与之前20多项研究的数据进行了比较,得出的结论是NLLB明显优于之前的研究。为了使如此多的比较变得可行,他们依靠机器翻译评估的自动评估指标,主要是BLEU和spBLEU。BLEU在机器翻译中非常受欢迎,尽管它存在缺陷。例如,我们想使用GoogleTranslate将FLORES101数据集中的以下法语文本翻译成英语。如果你说法语,你会注意到这是一个质量很差的翻译:语法错误、术语不一致、阅读不自然。事实上,由于数据集是从英语创建的,MetaAI只在翻译成英语时评估机器翻译。我们可以通过计算谷歌翻译中有多少标记也在这个参考翻译中来将它与参考翻译进行比较。令牌在这里被定义为由空格分隔的字符序列。橙色突出显示上面的谷歌翻译中出现在下面的参考翻译中的所有标记序列。仅考虑所有匹配的标记,可以计算出50.8BLEU的BLEU分数。这个分数本身是没有意义的,只有与另一个BLEU分数相比才有意义。这里要理解的关键点是分数是根据标记计算的,这在大多数机器翻译研究中都被忽略了。BLEU分数是使用SacreBLEU计算的,它执行自己的内部标记化,基本上只是在标点符号前添加空格。这是计算BLEU分数的最可靠和可重现的方法之一。MetaAI使用spBLEU。那么什么是spBLEU?它是BLEU,但使用不同的标记化。它标记谷歌翻译和参考翻译如下。与spBLEU相关的标记通过将单词分成更小的部分来生成标记(附加到标记的此处并不重要,请尝试忽略它)。使用spBLEU标记化的直接结果是我们最终会得到更多用于翻译和参考的标记。由于有更多的标记,我们可以期望谷歌翻译从参考中匹配更多的标记。然后分数会增加。事实上,这里的spBLEU分数是54.8。我们不禁要问比上面使用SacreBLEU的内部标记化计算的BLEU分数高4分?那么翻译是不是越来越好了?显然不是,翻译保持不变。比较BLEU和spBLEU根本没有意义。BLEU和spBLEU以不同方式处理谷歌翻译和参考翻译,仅用于评估目的。它们实际上是不同的指标。如果它们是相同的指标,我们就不必以不同的方式命名它们。正如我们在机器翻译研究社区中经常读到和听到的那样,使用从不同甚至几乎相似的标记计算的BLEU分数来比较翻译质量是不公平的,甚至是不公平的。如果您希望您的研究具有科学可信度,您只需要使用完全相同的标记化来始终如一地计算您的BLEU分数。MetaAI声称NLLB比之前的研究要好得多,因为他们能够始终如一地获得比之前公布的BLEU分数更好的spBLEU分数,事实恰恰相反。因为对于给定的翻译,让spBLEU分数低于BLEU分数是一项极其困难的任务。更令人难以理解的是,如果他们的目标是获得最高分,为什么他们不只使用chrBLEU指标。例如,在谷歌翻译和参考翻译中,每个字符都成为一个标记(换句话说,字符之间添加了空格)。然后我们计算出chrBLEU值为75.5,比spBLEU高20.7个点。根据NLLB的评估,这将是一项重大改进,将成为机器翻译的新高点,而原有的谷歌翻译保持不变。论文错误示例现在,让我们看一下NLLB评估的具体示例。MetaAI声称通过将其数字与之前发布的数字进行比较,它的表现优于之前的工作。在本文中,从表30、31、32、35、36、37和38中得出结论,并与之前的工作进行比较。我们将从表32开始。这是最具说明性的示例之一,因为错误类型多种多样。从表中,所有数字都是直接从以前发表的论文IndicBART和IndicTrans中复制的,除了NLLB-200列。为了可读性,MetaAI将每种语言的最高分都加粗了,加粗的列表示对应的系统是最好的。该表说所有的spBLEU,这是误导性的。实际上,all仅表示NLLB-200,因为IndicBART和IndicTrans使用的不是spBLEU,而是BLEU。但是经过对比发现,NLLB的spBLEU分数要高于之前工作的BLEU分数。但这是否意味着NLLB更好?30个西红柿比25个香蕉好吗?在解释结果的文本中,我们可以看到:例如(c)GoogleTranslate,(d)MicrosoftTranslate。NLLB-200在大多数方向上都明显优于所有模型。NLLB-200的训练数据集包括25种印度语言,几乎是(a)和(b)中涵盖的语言的两倍。性能的提高可归因于更多的多语言传输,以及印度语挖掘和回译的数据质量的提高。换句话说,在之前的研究中,NLLB拥有的西红柿比香蕉多。所以NLLB有更多的香蕉。spBLEU分数高于BLEU分数,因为它们是在更小且不同的标记上计算的。然而,NLLB是否更适合翻译?我们根本无法回答。更糟糕的是,IndicBART和IndicTrans也没有可比性,因为它们都使用两种不同的令牌方法。上面列出的大多数表格都有类似的问题,或多或少有错误。如果您查看IndicBART和IndicTrans发表的论文来检查这些数字,您会发现还有其他问题。表32中的列(a,b)全部交换,IndicBART数字是indicatrans中的数字,反之亦然。如果您查看表30,问题就更大了。但是Table30在论文中更新了,BenjaminMarie要感谢Vedanuj更新了文章。表30确实提到分词器是相同的。我承认我的错误。如表32所示,MetaAI声称NLLB优于之前的DeltaLM和Deepnet,同时比较了使用不同计算方法获得的BLEU分数。这里的新鲜事是,他们还将NLLB与他们自己之前的研究M2M-100进行了比较,M2M-100也使用spBLEU进行了评估。那么这有意义吗?不。即使他们都使用spBLEU,但他们实际上使用不同的分词器,这使得无法进行比较。他们在脚注28中做出如下声明:“我们的分析表明,当在FLORES-101语言上进行测量时,FLORES-200的SPM-200模型与FLORES-101的SPM-100模型之间存在微小差异。SPM-200的主要优点是它涵盖了200多种语言。”小差异就是差异。在这种情况下,这些差异很重要,因为我们在做科学。与他们在M2M-100上的工作相比,NLLB的一个进步是在模型和数据集中添加了更多语言。它包括标记化模型。从技术上讲,如果你向这个标记器添加更多具有不同书写系统的语言,同时保持词汇表的大小不变,你将机械地得到一个标记更小的词汇表。如上所示,使用较小的令牌可以获得更好的分数。我们来验证一下。如下图所示:本次分词生成95个token,而NLLB生成97个token。这只是一个细微的差别,如果使用M2M-100tokenization计算spBLEU,得分为53.8,比NLLBtokenization低1分。根据机器翻译研究文献,通常1分的差异就足以说明系统明显更好。正如预期的那样,NLLB将产生比M2M-100更高的分数。下一张表是本文的最后一张表:表31。同样,我们也有上面提到的相同问题:1.M2M-100和NLLB使用两种不同的tokenization来打分,所以不能比较。2.MMTAfrica似乎在他们的论文中使用了M2M-100标记化。它与M2M-100相当,但不是NLLB。本文还有一些问题,这里就不一一介绍了。在NLLB中,MetaAI犯的主要错误是机器翻译评估中非常常见的错误,尽管我们应该承认这项工作确实很了不起,它可能为多种语言提供更高的翻译质量。
