Uszkoreit访问自动化所,翻译将无往不利

2月12日,谷歌大脑Jakob
Uszkoreit到访中国科学院自动化研究所,并作题为Learning Representations
With Attention
的主题学术报告。

原标题:利用 Universal Transformer,翻译将无往不利!

Jakob
Uszkoreit围绕自注意力机制在表征学习中的应用这一主题,简单叙述了在序列学习中循环神经网络并行计算、长距离依赖等缺陷,针对这些缺陷,基于自注意力机制的序列学习应运而生。Jakob
Uszkoreit对自注意力机制也进行详细的介绍,并与循环神经网络和卷积神经网络的训练复杂度进行了对比,展现了自注意力机制的优越性。报告对Google
Brain团队开发的学习框架Transformer向听众进行了详尽的解释,并将模型训练的细节进行了细致入微的解读。该模型在机器翻译任务上取得了当前最好的效果,在英德翻译任务上高出了之前最好的集成模型2个点以上。Jakob表示,基于自注意力机制的Transformer框架还可以应用到文本生成,图片生成等一些任务中,Google
Brain团队对于这些任务也进行了相关的对比实验,取得了相当好的效果。最后,报告对下一步的工作进行归纳,主要包括并行解码和不同分辨率的解析问题。

文 / Google Brain Team 的研究科学家 Stephan Gouws、阿姆斯特丹大学的
Mostafa Dehghani 博士生、谷歌研究实习生

报告加深了大家对自注意力机制概念的理解,对于后续在表征学习中继续开展研究工作提供借鉴和启发。此后,大家就知识融合技术,词向量选择以及Google
Brain团队的沟通协作问题与Jakob Uszkoreit进行了充分的交流。

去年,我们发布了
Transformer,这是一种新的机器学习模型,相较现有的机器翻译算法和其他语言理解任务,成效卓著。
在 Transformer
之前,大多数基于神经网络的机器翻译方法依赖于循环运算的递归神经网络(RNN),它们使用循环(即每一步的输出都进入下一步)按递归顺序运行(例如,逐字翻译句中的单词)。
虽然 RNN
在建模序列方面非常强大,但它们的顺序性本质意味着它们训练起来非常缓慢,因为长句需要更多的处理步骤,并且其繁复循环的结构也使训练难上加难。

相较于基于 RNN 的方法,Transformer
不需要循环,而是并行处理序列中的所有单词或符号,同时利用自醒机制将上下文与较远的单词结合起来。
通过并行处理所有单词,并让每个单词在多个处理步骤中处理句子中的其他单词,使
Transformer 的训练速度比起复制模型要快得多。
值得注意的是,与此同时其翻译结果也比 RNN 好得多。
然而,在更小、更结构化的语言理解任务中,或是简单的算法任务诸如复制字符串(例如,将
“abc” 的输入转换为 “abcabc”)上,Transformer 则表现欠佳。
相比之下,在这方面表现良好的模型,如神经 GPU
和神经图灵机,在大规模语言理解任务(如翻译)中溃不成军。

在《Universal
Transformer》一文中,我们使用新颖高效的时间并行循环方式将标准
Transformer
扩展为计算通用(图灵完备)模型,从而可在更广泛的任务中产生更强的结果。我们将模型建立在
Transformer
的并行结构上,以保持其快速的训练速度。但是我们用单一的时间并行循环的变换函的多次应用代替了
Transformer
中不同变换函数的固定堆叠(即,相同的学习转换函数在多个处理步骤中被并行应用于所有符号,其中每个步骤的输出馈入到下一个步骤中)。关键在于,RNN
逐个符号(从左到右)处理序列,而 Universal Transformer
同时处理所有符号(像 Transformer
一样),随后使用自醒机制在可变数量的情况下并行地对每个符号的解释进行细化。
这种时间并行循环机制比 RNN 中使用的顺序循环更快,也使得 Universal
Transformer 比标准前馈 Transformer 更强大。

图片 1

Universal Transformer
模型通过自醒机制结合不同位置的信息,应用循环转换函数,以并行化方式重复为序列的每个位置细化一系列向量表征(显示为
h1 到 hm)。 箭头表示操作之间的依赖关系

在每个步骤中,利用自醒机制将信息从每个符号(例如,句中的单词)传递到其他符号,就像在原始
Transformer 中一样。
但是,现在这种转换的次数(即循环步骤的数量)可以提前手动设置(比如设置为某个固定数字或输入长度),也可以通过
Universal transformer 本身进行动态设定。
为了实现后者,我们在每个位置都添加了一个自适应计算机制,可以分配更多处理步骤给较模糊或需要更多计算的符号。

我们用一个直观的例子来说明这是如何起效的,比如 “I arrived at the bank
after crossing the river 我穿过河流终于抵达岸边” 这句话。
在这个案例中,与没有歧义的 “I 我” 或 “river 河流” 相比,推断 “bank”
一词最确切的含义需要用到更多的语景信息。 当我们使用标准 Transformer
对这个句子进行编码时,我们需要把同样的计算量无条件地应用于每个单词。
然而, Universal Transformer
的自适应机制允许模型仅在更模糊的单词上花费更多的计算,例如,
使用更多步骤来整合消除 “bank”
的歧义所需额外的语境信息,而在那些比较明确的单词上则花费较少的步骤。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注