1. 当前问题:
Tranformer模型处理长输入序列的效率低下,从而会限制两种使用场景:1)对长度超过输入限制的单个长文本进行编码;2)联合多个文档进行编码(如多跳推理和多文档摘要)
2. 问题原因:
这是因为每个Transformer层中使用的自注意力机制需要计算每对输入单词的注意力,这样的计算导致每个Transformer层的时间和空间复杂度为O(l^2)(l是序列长度)。这样就限制了Transformer在长序列中的表现。
2. 存在方法:
现有解决方法可分为两类: 1)分层编码 hierarchical encoding:先把长序列分割,并对每个分割段进行编码,然后找到有效的方法在分割段之间传递信息并补偿分割引起的重要全局信息的损失 2)事后聚合 post-hoc aggregation:先把长序列分割,编码器独立地对不同分割段进行编码,然后解码器在所有分割段上用全局注意力机制生成预测。这种方法只允许浅层信息交换
3. 本文提出:
本文提出的方法基于事后聚合post-hoc aggregation方法,提出了一种同步机制,用来在编码期间从其他相关分割段中交换有用的信息,以此维护全局信息。 本文方法首先在分割段中识别一系列anchors,基于语义单元的相似性或它们在原始序列中的角色将它们分成不同的组,已识别的anchors和组会在逻辑上自然地连接不同的分割段。 具体说来,在编码器的每个Transformer层中,正常局部编码后,我们会基于其他的anchor embedding,对每个anchor执行embedding更新(即anchro同步)。就这样局部编码和anchor同步迭代发生,使得全局信息得以在分割段之间通过anchors传播。
4. 本文优势:
我们的方法更加灵活: 1)该方法提供了一个更细粒度的信息交换机制; 2)该方法是一个通用框架,将全局编码问题简化为同步模式设计。对于任意一个新任务,通过识别特定任务的anchors和anchor分组,很容易将人类的先验知识注入模型。
5. 实验:
在两个具有长输入文本的代表性任务上进行实验,一个是NarrativeQA摘要,一个是在HotpotQA上进行多跳推理。实验结果表明,本论文的方法能够改善分割段之间的全局信息交换。
|