Google近日表示,自己在提高没有大量书面文字的语言的翻译质量方面已经取得了进展。在一篇即将发表的博客文章里面,该公司详细介绍了自己新的创新技术。这些创新技术增强了目前GoogleTranslate所支持的108种语言(尤其是缺乏数据的语言,如约鲁巴语和马拉雅拉姆语)的用户体验。据称,Google的这项服务平均每天翻译的单词量达到1500亿。
自GoogleTranslate首次公开亮相以来的这13年间,神经机器翻译,基于重写的范式以及设备处理等技术已经让该平台翻译的准确性出现了可量化的飞跃。但是直到最近,哪怕是Translate最新的算法也落后于人类的表现。Google之外的努力说明了该问题的量级——旨在让非洲大陆上数千种语言能够自动翻译的Masakhane项目,目前仍未摆脱数据收集和转录的阶段。自2017年6月发布以来,Mozilla为构建转录语音的开源数据集所做的努力CommonVoice,至今也仅审核了40种语音。
Google表示,其翻译突破并不是由单一技术推动的,相反,那是针对低资源语言,高资源语言,总体质量,延迟以及整体推理速度的一系列技术的组合。2019年5月至2020年5月期间,经过人工评估和BLEU(一种基于系统翻译与人工参考翻译之间相似性的指标)进行衡量之后,发现Translate的表现为在所有语言当中平均提高了5分或更多,在50种最低资源水平的语言的翻译平均提高了7分或更多。此外,Google表示,翻译在面对机器翻译幻觉时已经变得更加健壮。(注:机器翻译幻觉是一种特殊的现象,当AI模型被赋予怪异输入时会产生这种现象,比方说“ShenzhenShenzhenShawInternationalAirport(SSH)”的泰卢固语文字为“???????????????”,意思是“Shshshshshshshshshshshshshshshshsh”)。
混合模型与数据爬虫这些技术里面首当其冲的是一种翻译模型架构,这是一种混合型的架构,包含了一个Transformer编码器以及一个递归神经网络(RNN)解码器,用针对时序建模的TensorFlow框架Lingvo实现。
在机器翻译里面,编码器的工作通常是将单词和短语编码为内部表示,然后解码器将其用来生成所需语言的文本。2017年,Google相关研究人员首次提出,在这方面基于Transformer的模型要比RNN更为有效,但Google表示,其工作表明,所获得的大部分质量提升仅来自于Transformer的一个组件:编码器。原因可能是因为虽然RNN和Transformer都被设计为处理有序数据序列,但是Transformers并不需要按顺序来处理序列。换句话说,如果所讨论的数据是自然语言的话,则Transformer无需在处理结尾之前先得处理句子的开头。
尽管如此,在推理时,RNN解码器仍比Transformer当中的解码器“快得多”。在意识到这一点之后,GoogleTranslate团队在开始优化RNN解码器,然后再与Transformer的编码器进行结合,从而创建出比四年前基于RNN的神经机器翻译模型延迟更低,质量更高,更稳定的混合模型,并替换了后者。
自2006年成立以来,Google翻译模型的BLEU得分情况
除了新颖的混合模型体系结构之外,Google还升级了自己已经使用了几十年,用来从数百万对文章、书本、文档以及web搜索结果的示例翻译中编译训练数据集的爬虫。这位新的数据爬虫(针对14种大型语言对采用嵌入式而不是字典式,意味着它利用的是实数向量来表示单词短语)更加注重精确度(相关数据在检索到的数据中所占的比例)而不是回忆(相关数据总量在实际检索到的数据中的占比)。Google表示,在生产环境下,这让爬虫析取的句子数平均增加了29%。
噪声数据与迁移学习另一项翻译性能提升来自于一种建模方法,这种方法对训练数据中的噪声进行了更好的处理。因为观察到噪声数据(含有大量无法正确理解或解释的信息的数据)会损害数据丰富的语言的翻译,因此Google的翻译团队部署了一个系统,利用经过噪声数据训练的模型来对例子进行打分,然后对“清洗”后的数据进行调整。基本上,这些模型一开始利用所有的数据进行训练,然后逐步用规模小一点干净一点的子集进行训练,这种方法在AI研究社区里面被称为课程学习(curriculumlearning)。
针对资源匮乏的语言,Google在Translate里面实现了反向翻译方案,给翻译添加了并行训练数据,让被翻译语言的每个句子都跟翻译进行配对。(机器翻译传统上依赖于源语言目标语言配对句子语料集源的统计数据。)在这种方案中,训练数据会自动跟合成的并行数据进行匹配,从而保证目标文本是自然语言,但源语言则通过神经翻译模型生成。其结果是Translate利用了更丰富的单一语言文本数据来训练模型,Google表示这对于提高流利性特别有用。
带Translate功能的GoogleMaps
Translate现在还利用了M4建模,用一个大型模型M4实现多种语言与英语之间的互译。(去年的一篇论文里面首次提出了M4,证明在利用100多种语言的250亿对句子对进行训练之后,M4可提高30多种低资源语言的翻译质量。)M4建模令Translate里面的迁移学习成为可能,通过对包括法语,德语和西班牙语(有数十亿个并行示例)等高资源语言的训练收集而来的洞察,可以应用到诸如约鲁巴语,信德语和夏威夷语(仅有数万个示例)等低资源
