字节跳动火山翻译负责人:预训练时代的机器翻

网络知识 2022-06-29 09:43www.1681989.comseo网站推广

2021年10月8日-10日,第十七届全国机器翻译大会 (CCMT 2021) 在西宁举行,字节跳动火山翻译团队技术和产品研发负责人王明轩以《预训练时代的机器翻译》为题,阐述预训练技术在机器翻译的应用。

工欲善其事,必先利其器。火山翻译能够持续提供快速、稳定、安全的翻译服务,离不开团队对机器翻译前沿技术的深刻探索。近年来,预训练技术在多个领域都取得了不小的成就,随着深度学习的快速发展,面向自然语言处理领域的预训练技术 (Pre-trag) 也获得了长足的进步,火山翻译团队对于预训练技术在机器翻译的应用也收获了一些成果。

推火网以下是王明轩演讲全文

这次我主要想介绍一下预训练技术在机器翻译的应用。今天早上各位老师提供了非常好的座谈会,对这方面已经做了一些介绍;,刚才王瑞老师提及的监督机器翻译和预训练也有比较密切的联系。那么我主要带大家整体了解一下预训练技术在机器翻译里面有什么样的应用,因为时间关系,主要会聚焦在文本翻译方面的预训练。

其实谈到 NLP(Natural Language Processg, 自然语言处理),这两三年以来最大的一个变化就是预训练。从 BERT(Bidirectional Encoder Representations from Transformers, 由 Google AI 研究院提出的一种预训练模型)到 GPT(Generative Pre-traed Transformer, 由 Open AI 提出的预训练语言模型)。从 NLP 到 CV (Computer Vision,计算机视觉) 再到 speech,他们在整个行业引起了一些翻天覆地的变化,可以说是过去十年来最大的进展。

预训练框架其实是一个非常简单但非常有效的思路,简单来说,它本质上也是一种监督学习,即通过大量的、没有标签的数据,来训练一个预训练模型,然后在下游任务上做 fe-tung。其实这是一个非常简单的思路。它的一个优点是泛化性非常强一个预训练模型,可以在不同的下游任务上进行适应。今天我们这场讲座其实并不是针对预训练,更多是探讨预训练和机器翻译结合会不会产生某种化学反应。

今天我的讲话内容主要包含两个部分,第一个部分是介绍单语的预训练模型,以及为什么预训练可能会对机器翻译有作用。

机器翻译的多语言预训练(Monolgual Pre-trag for NMT)

这个是我画的一个实体图,主要用来介绍现今机器翻译双语、单语数据的大小。这个是现今的中英双语数据,包括在商业系统里面,大概一亿数据。可以看到单语数据是远远大于双语数据的。,这么多数据怎么更好地被利用起来其实是一个非常值得关注的点 。

,我们将BERT出现之前与之后的数据量进行对比。预训练其实是一个很古老的主题在BERT之前,其实也有很多预训练的研究,早在2012年大家就已经开始了这类工作。过去到现在发生了什么变化呢?如图所示,过去的单语数据的量级比较小,而在 BERT 出现后数据量开始百倍增加,我认为质变可能是来自于数据这块的增加。,我们今天的一个主题就是机器翻译能不能也利用上这么大规模的单语数据,或者通过预训练的技术把这部分的信息融合到翻译里面。第一部分会分为两节,第一节主要是把最近的几个工作简单介绍一下,分为两种类型,一种可以简单归类为 BERT fusion model,也就是研究它如何和已有的预训练模型做结合。我们知道机器翻译是一个端到端的模型,之前大家比较了解的一些模型像 BERT , GPT,这些都是一个理解模型,是一个language model。他们的模型和机器翻译的模型不一样,那么如何把这种异构的网络信息能够更好地结合起来,可能是一部分探索的方向。还有一部分探索方向,就是怎么做一个端到端的预训练,然后把它应用到机器翻译里面。这是目前从单语的角度来看两个大的应用方向。

BERT 在机器翻译里面发挥了什么作用?

关于第一个方向BERT 在机器翻译里面会起什么样的一个作用?这块我们大概会介绍三个工作,基本上都是2020年以后的研究,那么第一个是微软早期的一个工作。他们提出,直接把 BERT 运用到 NMT(Neural Mache Translation,神经网络机器翻译)里面 ,发现直接用它去做 itialize,并没有那么有效,因为 BERT pre-trag fe-tung 的模型需要更新parameter 。团队甚至发现 BERT-Frozen 可以把整个参数固定下来,可能取得的效果会更好,所以这个工作主要探讨的是 BERT 怎么样和 NMT 模型更好地结合起来 ,他们提出这样一个思路把BERT的表示作为feature 加进来。还提出一个框架,可以简单理解为双encoder。一个encoder是BERT, 一个 encoder 是机器翻译本身的 encoder,接着让 decoder 去做 attention ,这样的话等于 BERT 这部分信息就会被加进去。这个是ICLR2020的工作,比较简洁有效。证明了 BERT-fused 在 rich resource 还有 low resource 的场景都取得了比较好的结果,也发现这种预训练对于无监督的提升是非常大的。尤其当数据量比较少,或者是没有平行数据的时候,加了预训练可能会带来质变的提升,而且会让整个模型都更容易训练。

这是一篇工作,由阿里和南京大学合作完成,他和上一个工作本质上是比较接近的,但其中一个很大的不同点在于他做了一些 dynamic layers fusion,考虑到了把不同的 layer,即把 BERT 和 NMT 的 encoder 结合。一个不同点是他们也在 decoder 做了一些尝试, 就是包括把 decoder 用 GPT 去做预训练。发现了一个简单的结论encoder 用 BERT,decoder 用 GPT,这样的提升是最显著的。在 transformer base 的情况下,差不多有接近两个点的、比较显著的提升。

Copyright © 2016-2025 www.1681989.com 推火网 版权所有 Power by