Transformer 目前已成为人工智能领域的主流模型,广泛应用于自然语言处理、语音识别及计算机视觉等任务。然而,标准 Transformer 中的自注意力机制(Self-Attention)计算复杂度与序列长度呈二次方关系(O(N^2)),随着序列长度的增加,显存占用和计算时间会急剧上升,这限制了其在长文本场景下的应用。
为了解决这一瓶颈,学术界和工业界提出了多种优化方案,旨在降低计算复杂度至线性或近似线性,同时保持模型的表达能力。本文整理了 9 篇具有代表性的 Transformer 效率优化论文,涵盖稀疏注意力、长文本处理、运行提效及卷积增强四个方向,帮助开发者更高效地使用模型并寻找创新点。
一、稀疏注意力机制
1. Longformer: The Long-Document Transformer
核心问题: 传统 Transformer 在处理长文档时,全局注意力机制导致计算量过大。 解决方案: Longformer 引入了局部窗口注意力和全局特殊标记注意力相结合的混合机制。它将注意力操作从全连接改为稀疏连接,使得计算复杂度与序列长度呈线性关系。 效果: 能够轻松处理数千个 token 甚至更长的文档,在字符级语言建模和下游任务上取得了 SOTA 结果,支持长文档生成和序列到序列任务。
2. Enhancing the Locality and Breaking the Memory Bottleneck of Transformer on Time Series Forecasting
核心问题: 标准 Transformer 对时间序列的局部上下文不敏感,且存在内存瓶颈。 解决方案: 提出卷积自注意力(Convolutional Self-Attention)和 LogSparse Transformer。前者通过卷积核捕捉局部依赖,后者通过日志稀疏采样降低内存成本。 效果: 在太阳能输出、电力消耗及交通拥堵预测等场景中表现优异,有效平衡了局部特征提取与长程依赖建模。
3. Adaptive Attention Span in Transformers
核心问题: 固定大小的注意力跨度无法适应不同位置的信息密度差异。 解决方案: 提出一种新的自注意力机制,允许模型动态学习最优的注意力跨度。通过软约束控制最大上下文大小,同时保持内存和计算可控。 效果: 在 text8 和 enwiki8 数据集上实现了最先进的性能,显著扩展了 Transformer 的最大上下文处理能力。
二、Transformer 处理长文本
4. Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context
核心问题: 语言建模中固定长度上下文导致信息碎片化,难以捕捉长距离依赖。 解决方案: 引入段级别循环机制(Segment-level Recurrence)和相对位置编码。通过保留上一段的隐藏状态作为当前段的记忆,实现超越固定长度的依赖学习。 效果: 在短序列和长序列上均优于普通 Transformer,评估速度比标准 Transformer 快 1800 倍以上,解决了上下文碎片化问题。
三、Transformer 运行提效
5. REFORMER: THE EFFICIENT TRANSFORMER
核心问题: 大型 Transformer 在长序列上的训练成本高,显存占用大。 解决方案: 采用两种技术:一是使用局部敏感哈希(LSH)替换点积注意力,将复杂度从 O(L^2) 降至 O(L log L);二是使用可逆残差层(Reversible Residuals),减少激活值存储。 效果: 在长序列上表现相当,但内存效率更高,训练速度更快,适合大规模序列建模。
6. RETHINKING ATTENTION WITH PERFORMERS
核心问题: 标准 Softmax 注意力计算昂贵,难以扩展到超长序列。 解决方案: 利用 FAVOR+ 方法(Fast Attention Via positive Orthogonal Random features)近似 softmax 注意力核。将注意力机制转化为线性空间和时间复杂度的核函数估计。 以可证明的准确性估计常规全秩注意力,仅使用线性资源即可高效建模可核化的注意力机制。


