
摘要
Transformer 在多项任务中表现出色,但由于其计算复杂度与输入序列长度呈二次关系($\mathcal{O}(N^2)$),在处理极长序列时效率极低,难以实用。为解决这一瓶颈,本文将自注意力机制重新表述为核特征映射之间的线性点积,并利用矩阵乘法的结合律,将复杂度从 $\mathcal{O}(N^2)$ 降低至 $\mathcal{O}(N)$,其中 $N$ 表示序列长度。我们证明,该形式支持迭代实现,显著加速自回归 Transformer 的推理过程,并揭示了其与循环神经网络(Recurrent Neural Networks, RNNs)之间的内在联系。实验表明,所提出的线性 Transformer 在性能上可与标准 Transformer 相媲美,且在长序列自回归预测任务中,速度提升最高可达 4000 倍。
代码仓库
pwc-1/Paper-10/tree/main/transformer
mindspore
lucidrains/linear-attention-transformer
pytorch
GitHub 中提及
idiap/fast-transformers
官方
pytorch
GitHub 中提及
kyle-gao/TF_Transformer
tf
GitHub 中提及
davidsvy/cosformer-pytorch
pytorch
GitHub 中提及
lions-epfl/lion
pytorch
GitHub 中提及
glassroom/heinsen_attention
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| d4rl-on-d4rl | Linear Transformer | Average Reward: 64.4 |
| language-modelling-on-wikitext-103 | Linear Attention 125M | Test perplexity: 25.6 |