在视觉 Transformer (ViT) 的世界里,长久以来存在一个被视为“物理定律”的执念:自注意力(Self-Attention)的计算复杂度必然是序列长度 的平方。
为了对抗这个沉重的代价,学术界卷出了各种花样:局部窗口(Swin)、稀疏注意力(BiFormer)、或者暴力下采样(PVT)。但这些方法本质上都在做一件事——通过人为施加“外部约束”来牺牲模型容量。
这就好比为了碳排放而给F1充电(潘子有话要说),这显然不是最优解。
很多研究者认为 ViT 必须通过牺牲全局感受野来换取速度,但清华大学的这项研究通过对训练好模型的可视化发现:ViT 根本不需要你帮它裁剪,它自己就在进化出一种高效的结构。
文末更有完整版代码复现技术资料,需要的可以自取哦!
核心结论
👉 这篇论文,本质上做了:
通过数学证明发现 ViT 的注意力矩阵天然就在逼近“块循环结构”(BCCB),并利用 2D 傅里叶变换(DFT)将全局注意力的复杂度从
降维打击至
,在保持全局视野的同时实现极致效率。
方法拆解
-
• Stage 1:规律发现(从混沌到秩序)
作者通过定量分析发现,尽管注意力的计算公式是动态的,但收敛后的权重矩阵在空间上具有极强的“循环性”。这意味着,模型在学习过程中自发地倾向于一种准平移不变性的表达。 -
• Stage 2:数学坍缩(从空域到频域)
既然目标是 BCCB 矩阵,利用循环矩阵可以在傅里叶空间对角化的特性,将原本沉重的矩阵乘法(MatMul)坍缩为频域下的逐元素哈达玛积。这不仅是速度的提升,更是计算范式的转换。
关键技术翻译
-
• BCCB 投影(Block Circulant Projection): 把不规则的注意力图“强行平差”成规则的循环阵,像给乱糟糟的毛线球理出了主线。 -
• 谱域计算(Spectral Computation): 别在像素点上死磕了,去频率的世界里做乘法,再转回来就是我们要的答案。 -
• 动态重赋权(Dynamic Re-weighting): 弥补循环矩阵过于平滑的缺陷,给重点特征加个“聚光灯”。 -
即插即用代码
这个核心逻辑可以放在任何 Transformer 的 Attention 模块中,尤其是需要处理高分辨率大图的场景:
方法论升华
👉 这篇论文真正重要的不是发明了一个更快的算法,而是证明了:全局自注意力的潜力被严重低估了,我们不需要通过“阉割”感受野来换取速度。
👉 总结为一个“范式”:
【CA-Learner:谱域结构化建模】
可延展方向
-
• 科研: 探索 3D 视频 Transformer 中的“时空循环特性”,解决长视频处理的显存焦虑。 -
• 工程: 在移动端 SoC 上利用 DSP 的 FFT 加速指令集,实现端侧超大分辨率的高性能 ViT 推理。
结尾金句
真正的优雅,是在数学的降维中,保留了全世界的视野。
资料包
- 第一部分
BCCB原理图解 + O(N logN)复杂度推导 - 第二部分
3个可运行代码实现 - 第三部分
10大商业化场景(自动驾驶/医学影像/边缘部署等) - 第四部分
预训练模型 + 实验对比数据

