论文地址
- https://arxiv.org/pdf/2104.09864
总结
《ROFORMER: ENHANCED TRANSFORMER WITH ROTARY POSITION EMBEDDING》 作者是Jianlin Su、Yu Lu、Shengfeng Pan、Ahmed Murtadha、Bo Wen和Yunfeng Liu,该论文提出了一种名为Rotary Position Embedding(RoPE)的方法,用于在Transformer中有效利用位置信息,并介绍了基于RoPE的增强型Transformer——RoFormer。
-
研究背景:
- 词序对自然语言理解至关重要,RRNs和CNNs在编码词序信息方面存在不足,而基于Transformer的预训练语言模型(PLMs)在自然语言处理任务中取得了优异性能,但当前PLMs的自注意力架构是位置无关的。
- 为了将位置信息编码到PLMs的学习过程中,已有多种方法,包括生成绝对位置编码和训练绝对位置编码,以及关注相对位置编码等,但这些方法大多将位置信息添加到上下文表示中,不适合线性自注意力架构。
-
相关工作:
- 介绍了Transformer中自注意力的基本公式,以及绝对位置嵌入和相对位置嵌入的常见方法。
- 绝对位置嵌入的典型选择是通过预定义函数或使用可训练向量来添加位置信息。
- 相对位置嵌入的方法包括对查询和键进行不同的设置,分解注意力权重的计算,以及对位置信息进行建模等。
-
提出的方法:
- 公式化表述:为了在自注意力中引入相对位置信息,要求查询和键的内积通过函数仅依赖于词嵌入、和它们的相对位置来编码位置信息,并找到等价的编码机制来解决函数和。
- RoPE推导:从简单的二维情况开始,利用向量在二维平面上的几何性质和复数形式,证明了一种解决方案是,,进而推广到一般形式,通过旋转矩阵实现了RoPE。
- RoPE性质:具有长期衰减性质,即相对位置增加时内积会衰减,符合自然语言编码的直觉;可以与线性注意力结合,通过将旋转矩阵与非负函数的输出相乘来实现。
- 理论解释:包括RoPE在二维情况下的推导、旋转矩阵乘法的计算高效实现以及RoPE的长期衰减性质的证明。
-
实验与评估:
- 机器翻译任务:在WMT 2014英语 - 德语翻译任务上,RoFormer比基线Transformer取得了更好的BLEU分数。
- 语言模型预训练:在预训练阶段,用RoPE替换BERT的原始正弦位置编码,RoFormer收敛更快。
- 在GLUE任务上的微调:在多个GLUE任务上微调RoFormer,在三个数据集中显著优于BERT,改进效果显著。
- 与PerFormer结合:将RoPE应用于PerFormer的线性注意力机制中,在语言模型预训练任务中表现出更快的收敛速度和更低的损失。
- 中文数据评估:在中文数据上的实验表明,RoFormer在处理长文本方面具有优势,在CAIL2019 - SCM任务中,随着输入文本长度的增加,性能优于其他模型。
-
结论:
- 提出了一种新的位置嵌入方法RoPE,通过旋转矩阵编码绝对位置,并在自注意力公式中引入明确的相对位置依赖,增强了Transformer的性能。
- 理论分析表明,相对位置可以通过自注意力中的向量乘积自然地表述,实验证明RoFormer在预训练收敛速度和长文本任务性能方面具有优势。
实验细节:
- 数据集:使用了WMT 2014英语 - 德语数据集、BookCorpus和Wikipedia Corpus进行预训练、多个GLUE任务数据集以及中文的CAIL2019 - SCM数据集等。
- 模型设置:在机器翻译任务中,对基线模型的自注意力层进行修改以引入RoPE;在预训练语言模型任务中,用RoPE替换BERT中的正弦位置编码;在GLUE任务微调中,使用Huggingface Transformers库进行微调;在与PerFormer结合的实验中,在Enwik8数据集上进行测试;在中文数据实验中,对WoBERT进行修改并在特定数据集上进行预训练和下游任务测试。
- 评估指标:机器翻译任务使用BLEU分数评估;语言模型预训练使用MLM损失值评估;GLUE任务使用F1 - 分数、斯皮尔曼相关性和准确率等评估;中文数据实验使用准确率评估。
RoPE方法
Rotary Position Embedding(RoPE)是一种用于在Transformer中编码位置信息的方法,其主要特点和实现方式如下:
-
基本思想:
- 通过旋转矩阵来编码绝对位置信息,并在自注意力机制中自然地引入相对位置依赖。
-
具体实现:
- 2D情况:在二维空间中,对于词嵌入向量和及其位置和,通过几何性质和复数形式,得到解决方案为,,其中是预设的非零常数,和是权重矩阵。
- 一般形式:将二维情况推广到任意偶数维度,将维空间划分为个子空间,,其中是旋转矩阵,。
- 应用于自注意力:在自注意力计算中,,其中。
-
性质:
- 长期衰减:设置,内积会随着相对位置的增加而衰减,符合一对相对距离较长的标记应具有较少连接的直觉。
- 与线性注意力结合:可以与线性注意力结合,通过将旋转矩阵与非负函数的输出相乘来实现,同时保持分母不变以避免除以零的风险。
-
理论解释:
- RoPE在2D下的推导:利用向量的几何意义和复数形式,通过一系列推导得到最终解决方案。
- 旋转矩阵乘法的计算高效实现:利用旋转矩阵的稀疏性,通过一种更计算高效的方式实现旋转矩阵与向量的乘法。
- RoPE的长期衰减性质证明:通过Abel变换证明内积的绝对值小于等于一个与相对距离相关的上界,从而证明了长期衰减性质。
综上所述,RoPE是一种有效的位置编码方法,能够为Transformer模型提供位置信息,提高模型性能。
参考
- https://zhuanlan.zhihu.com/p/629681325
- https://www.zhihu.com/tardis/zm/art/647109286