Vision Transformers are Circulant Attention Learners¶
会议: AAAI 2026
arXiv: 2512.21542
代码: 无
领域: LLM NLP
关键词: Vision Transformer, 循环注意力, BCCB, FFT, 高效注意力
一句话总结¶
发现 ViT 的自注意力内禁学习了 BCCB 模式,据此提出 Circulant Attention,通过 2D FFT 实现 \(O(N\log N)\) 复杂度,在 ImageNet 分类、COCO 检测、ADE20K 分割上一致提升。
研究背景与动机¶
- 领域现状:ViT的自注意力虽然表达能力强但 \(O(N^2)\) 复杂度在高分辨率下成本极高(N=H×W)。PVT通过下采样K/V、Swin用局部窗口、BiFormer用稀疏路由降低成本,但都以牺牲全局建模能力为代价。
- 现有痛点:现有高效注意力方法都是通过外部约束(局部性/稀疏性)施加在注意力上的,压制了自注意力的长程建模能力。这种"外部补丁"式的效率优化本质上是与自注意力设计目标矛盾的。
- 关键观察(核心贡献):通过可视化DeiT的注意力矩阵,发现它们频繁地近似BCCB(Block Circulant matrix with Circulant Blocks)结构——即2D循环矩阵。相邻query的注意力分布呈现平移不变性(类似2D全局卷积)。而BCCB矩阵的乘法可以通过2D FFT在 \(O(N\log N)\) 内完成。
- 核心矛盾:自注意力在 \(O(N^2)\) 代价下实际学到的是可以 \(O(N\log N)\) 计算的高效模式——这意味着标准自注意力中有巨大的计算浪费。
- 切入角度:既然ViT自然会学BCCB结构,不如显式强制注意力矩阵为BCCB,从内在高效模式出发而非外部约束。
- 核心idea一句话:将自注意力矩阵正交投影到BCCB子空间,用2D FFT实现 \(O(N\log N)\) 全局注意力,保持表达能力的同时大幅降低计算量。
方法详解¶
整体框架¶
将标准自注意力替换为基于BCCB的Circulant Attention,可即插即用到DeiT、PVT、Swin等架构。流程与标准自注意力高度相似,仅区别在于使用BCCB注意力矩阵和DFT运算替代密集矩阵乘法。
关键设计¶
- BCCB子空间正交投影:
- 做什么:将原始注意力矩阵 \(A = QK^T/\sqrt{d}\) 投影到最近的BCCB矩阵
- 核心思路:BCCB矩阵子空间有正交基 \(\{B_0,...,B_{N-1}\}\)(\(B_k\)是第k位为1的单位BCCB矩阵),投影为 \(\tilde{A} = \frac{1}{N}\sum_{k=0}^{N-1}\langle A, B_k\rangle B_k\)。BCCB矩阵由其首行完全决定,乘法等价于2D循环互相关(即2D circular padding的深度可分离卷积),可通过FFT实现:\(Bx = \mathcal{F}_{2D}^{-1}(\overline{\mathcal{F}_{2D}(b)} \odot \mathcal{F}_{2D}(x))\)
-
设计动机:投影到BCCB子空间是数学上获取"最近BCCB矩阵"的最优方式,保证了与原始注意力的最小差异
-
Token重加权模块:
- 做什么:补偿BCCB结构的固有限制
- 核心思路:\(T = \text{SiLU}(xW_T)\),对每个token的输出重加权
-
设计动机:BCCB矩阵有行/列和相等的约束(所有行和相同),这限制了不同query获得不同总注意力的能力。Token重加权打破此约束,是+1.2%提升的关键
-
高效计算流程:
- 标准自注意力:\(O = \sigma(\tilde{A})V\),其中 \(\tilde{A}\) 为BCCB矩阵
- 用2D DFT实现 \(\tilde{A}V\) 的计算,复杂度 \(O(N\log N)\)
- 在1536²分辨率下:FLOPs减少8×,推理加速7×
实验关键数据¶
ImageNet分类¶
| 模型 | 分辨率 | 参数量 | FLOPs | Top-1 Acc |
|---|---|---|---|---|
| DeiT-T | 224² | 5.7M | 1.2G | 72.2% |
| CA-DeiT-T | 224² | 6.1M | 1.2G | 75.0% (+2.8) |
| DeiT-S | 224² | 22.1M | 4.6G | 79.8% |
| CA-DeiT-S | 224² | 23.8M | 4.8G | 81.0% (+1.2) |
| DeiT-B | 224² | 86.6M | 17.6G | 81.8% |
| CA-DeiT-B | 224² | 93.6M | 18.9G | 82.3% (+0.5) |
| PVT-T | 224² | 13.2M | 1.9G | 75.1% |
| CA-PVT-T | 224² | 12.2M | 2.0G | 78.1% (+3.0) |
目标检测与语义分割¶
| 任务 | 模型 | 性能 | 说明 |
|---|---|---|---|
| COCO检测 | CA-PVT-S | 44.2 AP | 以少30%参数匹配PVT-L |
| ADE20K分割 | CA-PVT-S | 42.3% mIoU | +2.5% vs 基线 |
消融实验(DeiT-S)¶
| 配置 | Top-1 Acc | 说明 |
|---|---|---|
| + Circulant only | 79.7% | 几乎无损(-0.1%),验证BCCB结构保真度 |
| + head dim=1 | 80.2% | 单一head维度即可充分表达 |
| + token reweight | 81.0% | 关键提升,补偿BCCB行和约束 |
高分辨率效率对比¶
| 分辨率 | 标准注意力FLOPs | Circulant FLOPs | 加速比 |
|---|---|---|---|
| 224² | 基线 | ~同 | ~1× |
| 1536² | 极高 | 低8× | 7×推理加速 |
关键发现¶
- BCCB投影几乎无损(仅-0.1%),证明ViT自注意力确实内在学习了BCCB结构
- Token重加权模块贡献+1.3%,是补偿BCCB行和约束的关键——BCCB矩阵每行和相等,限制了不同query获得不同总注意力的能力
- 在1536²分辨率下FLOPs减少8×、推理加速7×——高分辨率场景收益巨大
- CA-PVT-S以少30%参数和40%FLOPs匹配PVT-L精度,参数效率显著
- 小模型收益更大:DeiT-T获得+2.8%提升,DeiT-B仅+0.5%——小模型注意力更接近BCCB
亮点与洞察¶
- ViT内在学习BCCB的观察揭示了自注意力的结构偏好,为设计更高效的注意力提供理论依据
- \(O(N\log N)\) 全局注意力不牺牲长程建模能力,是少见的效率-表达力两全方案
- BCCB投影等价于2D全局循环卷积——从另一个角度统一了注意力与卷积机制
- head dim=1即可充分表达是一个有趣发现——暗示在视觉任务中注意力的"通道"维度可能被高估
局限性 / 可改进方向¶
- 只替换早期阶段注意力,非全局替换
- 需要 head dim=1 的特定调优,缺乏深入解释
- Token 重加权的改进机制有限
相关工作与启发¶
- vs Swin:Swin 用局部窗口降低复杂度但牺牲全局信息,Circulant 保留全局感受野
- vs Linear Attention:线性注意力 \(O(N)\) 但损失表达力,Circulant \(O(N\log N)\) 几乎无损
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ BCCB 观察新颖,数学角度理解注意力
- 实验充分度: ⭐⭐⭐⭐ 三个视觉任务,多架构验证
- 写作质量: ⭐⭐⭐⭐ 可视化分析清晰,数学严谨
- 价值: ⭐⭐⭐⭐⭐ 方向性贡献,新范式