- 论文名称:Does Multi-Encoder Help? A Case Study on Context-Aware Neural Machine Translation【被ACL 2020接受】
- github地址
阅读兴趣点
论文的题目很吸引人:《多编码器有帮助吗?情境感知神经机器翻译的案例研究》现阶段很多人都是一直研究模型,很少说是探讨,某个模块的作用;究其原因都是因为神经网络的可解释性太差,没有比较好的理论基础,所以我对于这些探讨模块作用的文章都很感兴趣。
一、 摘要
(简述一下本文是说了什么,有什么优点,如果感觉不太有借鉴性可能就到此为止了,后面就会粗读一下)
在Encoder-Decoder神经模型中,通常使用多个编码器来表示上下文信息。
我们发现上下文编码器不仅编码周围的句子,而且表现为噪声发生器。
我们比较了几种将噪声和/或调谐良好的 引入到这些编码器的训练中的方法。 实验结果表明,噪声训练在基于多编码器的NMT中起着重要的作用,特别是当训练小数据集时。
主要贡献
(1)多编码器上下文感知方法的好处不是上下文信息的杠杆作用。 相反,上下文编码器的作用更像噪声发生器
,以提供更丰富的训练信号
(2)编码器输出中添加高斯噪声
,这可以有效地缓解过度拟合
,特别是在小型数据集上。
二、主要方法介绍
如何表示上下文特征
- 简单的方法是将
上下文和当前句子连接起来
,形成一个上下文感知的输入序列。—【Single-Encoder】- 用额外的神经网络来编码上下文句子。—【Multi-Encoder】
Single-Encoder
输入:context sentences 和 current sentence 的级联,并插入一个特殊的符号来区分它们
,但是这样可能面临输入编码极长的挑战,导致计算效率低下。
如图1的(a)所示,首先通过注意网络将上下文和当前句子的表示转化为一种新的表示。 然后用门控和融合注意输出和源句表示。
Multi-Encoder
以周围的句子为上下文,并采用额外的神经网络对上下文进行编码,
即我们有一个源句编码器和一个上下文编码器。
三、主要实验结果及可视化效果
为了研究上下文编码器网络是否在训练中捕获上下文信息,我们提出了三种类型的上下文作为调用器的输入:
(Context) 上下文:当前句子的
前一句
。
(Random) 随机:由从源词汇中随机抽取的单词组成的句子
。
(Fixed) 固定:固定的句子输入。
四、总结及讨论
这给了我们一个有趣的发现,上下文编码器的作用更像一个噪声发生器,它为鲁棒训练提供了丰富的监督训练信号。 在此基础上,我们显著改进了对编码器输出施加高斯噪声的句子级系统。 对大规模训练数据的实验证明了该方法的有效性。