从4篇论文看Transformer的局部信息建模

©PaperWeekly 原创 · 作者|张一帆

学校|华南理工大学本科生

研究方向|CV,Causality

本文根据时间线整理了几篇 transformer 相关的文章,如何更好地建模超长距离依赖以及其他优化问题。目前来看对于超长文本,我们大概有两个选择:

1)用一些启发式的手段,比如丢弃掉长的部分,或者分段处理;

2)改进 transformer 的架构,利用局部信息替代全局信息。在研究过程中,众多领域发现了局部信息的重要性,甚至每个注意力头都被设计为关注局部信息的 transformer 在很多任务依旧表现良好。

HIBERT

论文标题:

HIBERT: Document Level Pre-training of Hierarchical BidirectionalTransformers for Document Summarization

收录会议:

ACL 2019

论文链接:

https://arxiv.org/abs/1905.06566

代码链接:

https://github.com/abisee/cnn-dailymail

文章的 motivation 很简单,对于文章摘要抽取任务,传统工作是使用层次化的 encoder(RNN,CNN)来提取文章的表示,本文尝试了使用 transformer 来代替传统 encoder 并提出了一种用于摘要提取的预训练 encoder 的方式。

1.1 Document Representation

所谓层次化的 transformer,就是我们先对每个 sentence 抽取表示,然后将每个 sentence 的表示输入上一层 transformer 从而得到整个文章的表示。具体过程如下,我们先用一个 transformer 对每一个单词的 embedding 进行处理,我们选择每个句子 EOS token 最终的表示作为这个句子的表示,接下来所有句子会被扔进文档级别的 transformer 中。

这里需要注意的是,在处理每个单词的时候,我们会加上单词的 position encoding,同样在文档级别的 transformer 中我们会对每个 sentence 加上 position encoding。

1.2 Pre-Training

我们已经知道了 encoder 的设计,那么接下来的任务就是如何训练他,最好是无监督的训练。其实传统的 Summarization 任务中也是没有句子级别的 label 的,往往我们需要先对每个句子的 label 进行预测,然后用预测的 label 作为目标进行摘要抽取,这种自己预测的标签本来就是不准确的,要用它来训练这么复杂的层次化 encoder 是非常难以收敛的,因此文章更倾向于无监督的方式对 encoder 进行预训练。

对摘要抽取任务而言,我们要学习的是整个文章的表达,它的基本单元是句子,因此预训练应该以句子为单位,即将句子 mask 掉然后利用左,右侧的信息来预测 mask 掉的整个句子。Mask 的方式与 BERT 一致。

随机选择文档中 15% 的句子进行 mask,然后根据文档中其他的句子表示向量来预测 mask 的部分

  • 80% 使用 [MASK] 进行填充

  • 10% 使用从文档中随机选择的句子进行填充

  • 10% 不改变选择的句子

从上面的模型图中可以看出,在预测 mask 的句子时同样是进行逐词预测,直到遇到 [EOS] 为止。特殊之处在于这里预测的每一步都会给当前预测词的 embedding 上该句子的 embedding。预训练的 loss 就是这些单词预测结果的负对数似然。

1.3 摘要生成

这里主要就是如何定义句子的重要性,摘要生成就是选择最重要的那些句子构成文章的摘要(给每个句子打上 True 或者 False 的标签)。因为我们已经将最重要的分层 encoder 预训练好了,所以直接 Linear projection 就能得到结果。

这时我们需要 sentence 真实的标签来对全连接层进行训练,文中是对每一个文章,选择一个句子的子集,该子集使得 ROUGE 指标最大。子集中的句子都打上 true,其余句子为 false。

1.4 Experiments

HiBERT 的总体分为三个部分:

1. 在 GIGA-CM 数据集上预训练(out-of-domain data)

2. 在 CNNDM(NYT50)数据集上预训练(in domain data)

3. 在 CNNDM(或者 NYT50)fine-tune(即使用摘要生成的目标进行训练)

在定量的分析上,HiBERT 击败了现有的方法。其中下标 S 表示模型使用上述提到的预训练数据集,in-domain 表示只使用 CNNDM,M 表示使用更大的数据集进行训练。

Transformer Based Models

论文标题:

On the Importance of Local Information in Transformer Based Models

论文链接:

https://arxiv.org/abs/2008.05828

目前已经有很多文章研究多头注意力机制取得成功的本质原因,他们有一些共性的发现:少部分关注于局部信息或者语义信息的注意力比其他 head 更加重要。本文是一篇实验性的文章,旨在在这个观察下更进一步,文章得到的结论也很振奋:即使我们只保留局部注意力,transformer 的性能依旧不会收到影响。

2.1 Analysis of Locality in Transformerbased models

这一节主要论证了局部信息在当前基于 transformer 的模型中起到的重要性。文章针对两组任务分别选择了两个基准模型

  • 针对机器翻译任务,选择了 Transformer (标准的 transformer)作为基准模型,用在 WMT'14 的 En-Ru 和 En-De 两个翻译任务上。

  • 针对自然语言理解任务,选择 作为基准模型,用在 QQP, SST-2, MRPC, QNLI 四个数据集上。

2.2 Sensitivity analysis

作者首先使用梯度评估重要程度,使用如下三个公式度量局部,语义和无关信息在传统模型中所占比重。 指的是输出 对输入

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值