利用最新AI技术,谷歌提高机器翻译质量
Google Translate是全球最流行的翻译服务之一,目前支持108种语言的互译,每天翻译的单词量达到1500亿。过去一年间,通过利用针对总体质量,延迟以及整体推理速度的一系列技术组合,其BLEU翻译质量平均又提高了5分多。Venturebeat的KYLE WIGGERS报道了相关的技术进展,原文标题是:How Google is using emerging AI techniques to improve language translation quality
划重点
Google Translate支持108种语言互译,每日翻译的单词量达到1500亿
经过运用一系列技术之后,2019年5月至2020年5月期间,Translate的翻译表现平均提高了5分或更多
Transformer编码器+RNN解码器+爬虫升级为翻译质量提升做出了贡献
课程学习对噪声数据进行了更好的处理
Google Translate Community将是Google Translate重要的助手
Google近日表示,自己在提高没有大量书面文字的语言的翻译质量方面已经取得了进展。在一篇即将发表的博客文章里面,该公司详细介绍了自己新的创新技术。这些创新技术增强了目前Google Translate所支持的108种语言(尤其是缺乏数据的语言,如约鲁巴语和马拉雅拉姆语)的用户体验。据称,Google的这项服务平均每天翻译的单词量达到1500亿。
自Google Translate首次公开亮相以来的这13年间,神经机器翻译,基于重写的范式以及设备处理等技术已经让该平台翻译的准确性出现了可量化的飞跃。但是直到最近,哪怕是Translate最新的算法也落后于人类的表现。Google之外的努力说明了该问题的量级——旨在让非洲大陆上数千种语言能够自动翻译的Masakhane 项目,目前仍未摆脱数据收集和转录的阶段。自2017年6月发布以来,Mozilla为构建转录语音的开源数据集所做的努力Common Voice,至今也仅审核了40种语音。
Google表示,其翻译突破并不是由单一技术推动的,相反,那是针对低资源语言,高资源语言,总体质量,延迟以及整体推理速度的一系列技术的组合。2019年5月至2020年5月期间,经过人工评估和BLEU(一种基于系统翻译与人工参考翻译之间相似性的指标)进行衡量之后,发现Translate的表现为在所有语言当中平均提高了5分或更多,在50种最低资源水平的语言的翻译平均提高了7分或更多。此外,Google表示,翻译在面对机器翻译幻觉时已经变得更加健壮。(注:机器翻译幻觉是一种特殊的现象,当AI模型被赋予怪异输入时会产生这种现象,比方说“Shenzhen Shenzhen Shaw International Airport (SSH)”的泰卢固语文字为“ ”,意思是“Sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh sh”)。
混合模型与数据爬虫
这些技术里面首当其冲的是一种翻译模型架构,这是一种混合型的架构,包含了一个Transformer编码器以及一个递归神经网络(RNN)解码器,用针对时序建模的TensorFlow框架Lingvo实现。
在机器翻译里面,编码器的工作通常是将单词和短语编码为内部表示,然后解码器将其用来生成所需语言的文本。2017年,Google相关研究人员首次提出,在这方面基于Transformer的模型要比RNN更为有效,但Google表示,其工作表明,所获得的大部分质量提升仅来自于Transformer的一个组件:编码器。原因可能是因为虽然RNN和Transformer都被设计为处理有序数据序列,但是Transformers并不需要按顺序来处理序列。换句话说,如果所讨论的数据是自然语言的话,则Transformer无需在处理结尾之前先得处理句子的开头。
尽管如此,在推理时,RNN解码器仍比Transformer当中的解码器“快得多”。在意识到这一点之后,Google Translate团队在开始优化RNN解码器,然后再与Transformer的编码器进行结合,从而创建出比四年前基于RNN的神经机器翻译模型延迟更低,质量更高,更稳定的混合模型,并替换了后者。
自2006年成立以来,Google翻译模型的BLEU得分情况
除了新颖的混合模型体系结构之外,Google还升级了自己已经使用了几十年,用来从数百万对文章、书本、文档以及web搜索结果的示例翻译中编译训练数据集的爬虫。这位新的数据爬虫(针对14种大型语言对采用嵌入式而不是字典式,意味着它利用的是实数向量来表示单词短语)更加注重精确度(相关数据在检索到的数据中所占的比例)而不是回忆(相关数据总量在实际检索到的数据中的占比)。Google表示,在生产环境下,这让爬虫析取的句子数平均增加了29%。
噪声数据与迁移学习
另一项翻译性能提升来自于一种建模方法,这种方法对训练数据中的噪声进行了更好的处理。因为观察到噪声数据(含有大量无法正确理解或解释的信息的数据)会损害数据丰富的语言的翻译,因此Google的翻译团队部署了一个系统,利用经过噪声数据训练的模型来对例子进行打分,然后对“清洗”后的数据进行调整。基本上,这些模型一开始利用所有的数据进行训练,然后逐步用规模小一点干净一点的子集进行训练,这种方法在AI研究社区里面被称为课程学习(curriculum learning)。
针对资源匮乏的语言,Google在Translate里面实现了反向翻译方案,给翻译添加了并行训练数据,让被翻译语言的每个句子都跟翻译进行配对。(机器翻译传统上依赖于源语言目标语言配对句子语料集源的统计数据。)在这种方案中,训练数据会自动跟合成的并行数据进行匹配,从而保证目标文本是自然语言,但源语言则通过神经翻译模型生成。其结果是Translate利用了更丰富的单一语言文本数据来训练模型,Google表示这对于提高流利性特别有用。
Translate现在还利用了M4建模,用一个大型模型M4实现多种语言与英语之间的互译。(去年的一篇论文里面首次提出了M4,证明在利用100多种语言的250亿对句子对进行训练之后,M4可提高30多种低资源语言的翻译质量。)M4建模令Translate里面的迁移学习成为可能,通过对包括法语,德语和西班牙语(有数十亿个并行示例)等高资源语言的训练收集而来的洞察,可以应用到诸如约鲁巴语,信德语和夏威夷语(仅有数万个示例)等低资源语言的翻译当中。
展望未来
根据Google的说法,自2010年以来,Google Translate每年至少都提高了1个BLEU点,但是自动机器翻译绝对还算不上已解决的问题。Google承认,即使是其增强的模型也容易出错,包括会将一种语言的不同方言混淆,产生过多的直译,在特定题材和非正式或口头语言的翻译上表现不佳等。
该科技巨头正常是多管齐下解决这一问题,包括通过它的Google Translate Community,这个游戏化的计划招募了一批志愿者,让他们翻译单词短语或者检查翻译是否正确来帮助改进低资源语言翻译的性能。今年1月,该计划在各种新兴机器学习技术的合作下,又为Translate增加了5种为7500万人使用的语言的翻译:其中包括卢旺达语(Kinyarwanda),奥里亚语(Odia),鞑靼语(Tatar),土库曼语(Turkmen)以及维吾尔语。
追求真正通用翻译这一目标的并不只有Google.2018年8月,Facebook就披露了一种结合了逐词翻译,语言模型和反向翻译的AI模型,这种模型在表现要优于语言配对系统。最近,麻省理工学院计算机科学与人工智能实验室的研究人员提出了一种无监督模型(即可以从未经明确标记或分类的测试数据当中学习的模型),这种模型可以在没有直接翻译数据的情况下对两种语言的文本进行互译。
在一份声明中,Google婉转地对 “学术界和业界”的机器翻译研究表示了“感谢”,称其中一些对自己的工作起到了促进作用。该公司表示:“我们通过综合和扩展了各种最新进展来实现[Google Translate 最近的改进]。通过此次更新,我们为能提供相对一致的自动翻译而感到自豪,这种一致性甚至体现在我们所支持的108种语言当中资源最少的的语言翻译上。”
资讯来源:美股投资网 TradesMax