雷锋网 AI 科技评论按:语言翻译是一股能够让人们组建群体和使世界更加紧密的力量。 它可以帮助人们与在海外居住的家庭成员联系起来,或者可以更好地了解讲不同语言的人们的观点。 通过使用机器翻译,自动翻译文章和评论,以打破语言障碍,使得世界各地的人们可以相互沟通。
即便体量大如 Facebook,想要为20亿使用的用户创造无缝、高精确的翻译体验也是很困难的,这需要同时考虑上下文、俚语、打字错误、缩写和语意。 为了继续提高翻译质量,Facebook团队最近宣布从基于短语的机器翻译模型切换到基于神经网络的翻译模型,来支持所有的后端翻译系统。每个翻译系统每天翻译超过2000个翻译方向和45亿个翻译。 这些新模型能够提供更准确和更流畅的翻译体验,改善了人们在使用Facebook时,阅读由非常用语言撰写的内容时的阅读体验。雷锋网 AI 科技评论根据 Facebook 文章对相关情况编译介绍如下。
使用上下文
Facebook以前使用的基于短语的统计技术确实有效,但它们也有局限性。基于短语的翻译系统的一个主要缺点是它们将句子分解成单个单词或短语,因此在生成翻译时,他们每次只能考虑几个单词。 这种方法导致当翻译具有明显不同字词排序的语言时会出现翻译困难的情况。为了弥补这个问题并构建神经网络系统,Facebook开始使用一种被称为序列到序列LSTM(long short-term memory)的循环神经网络。 这种网络可以考虑源语句的整个上下文以及到目前为止生成的一切内容,以创建更准确和流畅的翻译。 这样当遇到例如在英语和土耳其语之间翻译字词排列不同时,可以重新排序。 当采用基于短语的翻译模型从土耳其语翻译到英语时,获得以下翻译:
与基于神经网络的从土耳其语到英语的翻译相比较:
当使用新系统时,与基于短语的系统相比,BLEU平均相对增长了11% - BLEU是广泛使用的用于判断所有语言的机器翻译准确性的度量标准。
处理未知词
在许多情况下,源语句中的单词在目标词汇表中并没有直接对应的翻译。 当发生这种情况时,神经系统将为未知词生成占位符。 在这种情况下,可以利用注意机制在源词和目标词之间产生的软校准,以便将原始的源词传递到目标句子。 然后,从培训数据中构建的双语词典中查找该词的翻译,并替换目标语句中的未知词。 这种方法比使用传统字典更加强大,特别是对于嘈杂的输入。 例如,在从英语到西班牙语的翻译中,可以将“tmrw”(明天)翻译成“mañana”。虽然增加了一个词典,BLEU得分只有小幅的改善,但是对于使用Facebook的人而言评分更高了。
词汇量减少
典型的神经机器翻译模型会计算目标词汇中所有单词的概率分布。 在这个分布中包含的字数越多,计算所用的时间越多。 通过使用一种称为词汇减少的建模技术,可以在训练和推理时间上弥补这个问题。 通过词汇减少,可以将目标词汇中最常出现的单词与给定句子的单个单词的一组翻译候选相结合,以减少目标词汇的大小。 过滤目标词汇会减少输出投影层的大小,这有助于更快的计算,而且不会使过大的降低质量。
调整模型参数
神经网络几乎通常具有可调参数,可以通过这些参数调节和控制模型的学习速度。 选择超参数的最佳集合对于性能是非常有帮助的。 然而,这对于大规模的机器翻译提出了重大的挑战,因为每个翻译方向是由其自己的一组超参数的唯一模型表示。 由于每个模型的最优值可能不同,因此必须分别对每个系统进行调整。 Facebook团队在数月内进行了数千次端对端翻译实验,利用FBLearner Flow平台对超参数进行微调,如学习率,注意力类型和总体大小。 这些超参数对一些系统有重大影响。 例如,仅基于调优模型超参数,就可以看到从英语到西班牙语系统的BLEU相对值提高了3.7%。
用Caffe2缩放神经机器翻译
过渡到神经系统的挑战之一是让模型以Facebook上的信息规模所需的速度和效率运行。 因此Facebook团队在深入学习框架Caffe2中实现了翻译系统。 由于它的灵活性,因此能够在GPU和CPU平台上进行训练和推理,来调整翻译模型的性能。
关于培训,该团队实施了内存优化,如blob回收和blob重新计算,这有助于更大批量的培训,并更快地完成培训。 关于推理,该团队使用专门的向量数学库和权重量化来提高计算效率。 现有模式的早期基准表明,支持2000多个翻译方向的计算资源将会非常高。 然而,Caffe2的灵活性和该团队使用的优化模型使计算提高了2.5倍的效率,因而能够将神经机器翻译模型应用到实际中去。
该团队还遵循在机器翻译中常用的在解码时使用波束搜索的做法,以根据模型改进对最可能输出的句子的估计。 利用Caffe2中的循环神经网络(RNN)抽象的一般性来实现波束搜索,直接作为单个前向网络计算,这样就实现了快速有效的推理。
在这项工作的过程中,该团队还开发了RNN构建块,如LSTM,乘法集成LSTM和注意。 这项技术将作为Caffe2的一部分分享出来,并为研究和开源社区提供学习素材。
正在进行的工作
Facebook人工智能研究(FAIR)团队最近发表了使用卷积神经网络(CNN)进行机器翻译的研究。 Facebook 代码团队与 FAIR 密切合作,在不到三个月的时间里,完成了将这项技术从研究到首次投入生产系统中使用的流程。 他们推出了从英文到法文和从英文到德文翻译的CNN模型,与以前的系统相比,BLEU的质量提升分别提高了12.0%(+4.3)和14.4%(+3.4)。 这些质量改进让该团队看到CNN将成为一个令人兴奋的新发展道路,后面他们还将将继续努力,利用CNN推出更多的翻译系统。
目前机器翻译刚刚开始使用更多的翻译语境。 神经网络开辟了许多与添加更多上下文相关的发展方向,以创建更好的翻译,例如伴随文章文本的照片。
该团队也开始同时探索可以翻译许多不同语言方向的多语种模式。 这将有助于解决与特定语言对相关的每个系统的微调的挑战,并且还可以通过共享培训数据为某些翻译方向带来质量提高。
对Facebook而言,完成从短语到神经机器翻译的过渡,是一个里程碑,代表了为所有人提供他们常用语言下的更优质的Facebook体验。 他们还将继续推进神经机器翻译技术,目的是为Facebook上的每个人提供人性化的翻译。
via code.雷锋网 AI 科技评论编译