自从Transformer语言模型问世以来,自然语言处理领域取得了显著进展。不幸的是,训练此类模型的复杂性随着序列长度的增加而成倍增长,这使得资源有限的GPU使用者难以进行长序列长度的预训练。解决这一限制的一种方法是允许模型在测试期间处理更长的序列而无需进一步的参数更新。这种能力称为长度外推,然而它并非易事,且面临诸多挑战。
首先,经典的Transformer语言模型依赖于每个位置的定位嵌入来提供位置信息;在外推阶段遇到未见过的位置时,这可能会出现问题。其次,预训练在短序列上的模型在直接处理长序列时会遇到长度分布转变问题。现有方法在长序列上的困惑度保持稳定一直是个挑战。最后,长度外推能力的评估通常仅依赖自然语言的困惑度;这可能无法全面反映情况,因为自然语言高度局部化,而下游任务如长上下文问答和代码完成则不同。 本论文从三个角度解决上述挑战。第一部分研究了定位嵌入在Transformer语言模型中的作用。论文证明,即使没有显式的定位嵌入,强烈的定位信号仍然编码在Transformer语言模型的隐藏状态中。为了利用这一点,论文引入了一种新型的相对定位嵌入,名为KERPLE,其源自条件正定核。第二部分通过测量模型接收域的宽度,对现有的长度外推Transformer进行了详细分析。成功的语言建模任务长度外推的关键在于训练和测试接收域的一致性。这一见解促成了新型相对定位嵌入设计Sandwich的提出,它基于最初提出的正弦定位嵌入。第三部分超越语言建模和困惑度测量,考察了Transformer的长度外推能力。受到近期提出的长上下文检索任务的启发,论文通过依赖数据的Softmax温度调整,提高了Transformer的隐式检索能力。此外,论文还解决了Transformer在形式语言外推任务中的失败问题。借鉴了先前工作中的权重共享、自适应深度和滑动窗口注意力机制的思想,提出了一种新的Transformer变体,名为RegularGPT,在形式语言外推中展示了其能力。
本论文在探讨长度外推Transformer的过程中,提出了未来研究的各种方向,并列出了几种具体的想法,为未来的Transformer长度外推研究铺平了道路。