Rethinking Spiking Self-Attention Mechanism: Implementing a-XNOR Similarity Calculation in Spiking Transformers¶
会议: CVPR 2025
arXiv: 无
代码: 无
领域: NLP理解 / 模型架构
关键词: 脉冲神经网络, 脉冲Transformer, 自注意力机制, XNOR相似度, 能效计算
一句话总结¶
本文深入分析了点积在脉冲查询-键对中因大量"非脉冲事件"导致相似度度量失效的根本原因,提出专为脉冲序列设计的a-XNOR相似度度量,将非脉冲对的相关性重定义为特定值a,在多种脉冲Transformer架构和数据集上显著提升性能。
研究背景与动机¶
领域现状:Transformer因其全局感受野和并行化能力在各类任务中大幅提升了性能上限。研究者开始将Transformer集成到脉冲神经网络(Spiking Neural Networks, SNN)中,试图结合Transformer的强表达能力和SNN的超低功耗优势。脉冲Transformer已在图像分类、目标检测等任务上展现潜力。
现有痛点:现有脉冲Transformer与其对应的人工神经网络(ANN)版本之间仍存在显著的性能差距。在传统Transformer中,自注意力通过softmax归一化的点积来度量查询和键之间的相似度。然而在SNN中,查询和键都是二值脉冲序列(只有0和1),直接使用点积存在根本问题。
核心矛盾:脉冲序列高度稀疏(大部分时间步为0,即"非脉冲"状态),两个脉冲序列之间的点积主要由大量的(0,0)对决定。在标准点积中,0×0=0,这意味着两个序列"同时不发脉冲"的信息被完全忽略。但实际上,"同时不发脉冲"也携带了关于两个序列相似性的信息(类似于二元分类中的真负例),点积无法捕捉这一信息导致相似度度量严重失真。
本文目标 (1) 明确分析点积在脉冲自注意力中失效的数学原因。(2) 设计一种新的相似度度量方法来替代点积,使其能正确处理脉冲序列的稀疏二值特性。
切入角度:作者从XNOR逻辑运算出发设计新的相似度度量。XNOR运算在两个bit相同时输出1,不同时输出0,天然适合衡量二值脉冲对的匹配程度。在此基础上引入可学习参数a来区分"同时有脉冲"和"同时无脉冲"两种匹配情况的重要性。
核心 idea:用a-XNOR替代点积来计算脉冲Q和K的相似度,将非脉冲对(0,0)的贡献重定义为参数a而非0,解决点积在稀疏脉冲序列上的失效问题。
方法详解¶
整体框架¶
在标准脉冲Transformer的自注意力层中,将原本的点积相似度计算替换为a-XNOR相似度计算。方法是即插即用的(plug-and-play),可以直接应用到各种已有的脉冲Transformer架构中而不改变其整体结构。输入脉冲序列 → 线性变换得到脉冲Q、K、V → 用a-XNOR代替点积计算Q和K的相似度 → 与V加权求和 → 输出。
关键设计¶
-
点积失效的根因分析:
- 功能:提供理论基础,说明为什么需要新的相似度度量
- 核心思路:对于两个二值脉冲向量 \(\mathbf{q}, \mathbf{k} \in \{0,1\}^d\),点积 \(\mathbf{q} \cdot \mathbf{k} = \sum_{i=1}^d q_i \cdot k_i\)。由于脉冲稀疏性,大部分维度 \(q_i=0\) 或 \(k_i=0\),仅有极少数维度两者同时为1。因此点积值很小、区分度低、信息量不足。更关键的是,(0,0)对在实际中占绝大多数,但它们对点积的贡献为0——这忽略了"两个神经元同时沉默"所编码的相关性信息
- 设计动机:从数学上严格论证了为什么标准点积不适合脉冲序列
-
a-XNOR相似度度量:
- 功能:替代点积,为脉冲序列提供更有效的相似度计算
- 核心思路:基于XNOR逻辑运算构建相似度。标准XNOR在两个bit相同时输出1((1,1)→1, (0,0)→1),不同时输出0。在此基础上引入参数a来区分两种"相同"情况:当两个位置都有脉冲(1,1)时贡献为1(共同激活是强相关信号);当两个位置都无脉冲(0,0)时贡献为a(a是可学习参数,\(0 < a < 1\))。相似度公式为 \(\text{sim}(\mathbf{q}, \mathbf{k}) = \sum_{i} [q_i \cdot k_i + a \cdot (1-q_i)(1-k_i)]\)。a的引入有两层含义:(1) 承认(0,0)对也携带相关性信息(a>0);(2) 区分(1,1)和(0,0)的重要性(a<1),因为在稀疏脉冲中脉冲出现比不出现携带更多信息
- 设计动机:XNOR天然衡量匹配程度,引入a参数使得"同时沉默"和"同时激活"有不同的权重,符合信息论中"稀有事件更具信息量"的原则
-
即插即用的集成方式:
- 功能:使方法具有广泛的适用性
- 核心思路:a-XNOR相似度直接替换各种脉冲Transformer架构中的点积计算,不需要修改网络结构、训练策略或其他超参数。参数a可设为全局常数或逐层/逐头可学习参数。在硬件实现上,XNOR运算可以用高效的位操作实现,在神经形态芯片上更加友好
- 设计动机:方法的通用性是其实用价值的关键
损失函数 / 训练策略¶
使用与各基线脉冲Transformer相同的训练配置(交叉熵损失、相同的优化器和超参数),仅替换注意力层中的相似度计算方式。参数a通过反向传播自动优化。训练过程中采用替代梯度(surrogate gradient)方法处理脉冲函数的不可微问题。
实验关键数据¶
主实验¶
在静态和神经形态数据集上跨多种脉冲Transformer架构测试:
| 架构 | 数据集 | 原始精度 | +a-XNOR | 提升 |
|---|---|---|---|---|
| Spikformer | CIFAR-100 | 基线 | 显著提升 | +显著 |
| Spike-driven Trans. | CIFAR-100 | 基线 | 提升 | +明显 |
| Spikformer | ImageNet | 基线 | 提升 | +可观 |
| 多种架构 | DVS128-Gesture | 基线 | 一致提升 | +稳定 |
消融实验¶
| a值设置 | 效果 |
|---|---|
| a=0 (退化为标准点积) | 基线性能 |
| a=固定小值 | 明显提升 |
| a=可学习参数 | 最优 |
| a=1 (等权对待1-1和0-0) | 低于a<1 |
关键发现¶
- a-XNOR在所有测试架构上都带来了一致正向提升,证明了问题的普遍性和解决方案的通用性
- 最优a值通常在0到1之间,验证了"脉冲携带更多信息"的假设
- 可学习的a倾向于收敛到较小的正值
- 在稀疏度更高的层中,a-XNOR的提升更大
亮点与洞察¶
- 问题分析深刻:从数学上严格分析了点积在脉冲序列上失效的原因,使动机非常有说服力
- 解决方案优雅:a-XNOR概念简洁、直觉清晰、实现简单,却解决了一个根本性的问题
- 信息论视角:将(0,0)和(1,1)赋予不同权重呼应了"稀有事件更具信息量"的原则
- 即插即用特性极具实用价值:可以直接提升现有各种脉冲Transformer的性能
- 硬件友好:XNOR运算可用位操作高效实现,适合神经形态芯片部署
局限与展望¶
- 参数a是标量,对所有维度一视同仁,可探索逐维度或逐通道a值
- V的脉冲特性未被专门处理
- 主要在分类任务上验证,可扩展到检测、分割等密集任务
- 理论分析可更定量化,如给出a最优值与脉冲发放率之间的解析关系
相关工作与启发¶
- Spikformer:首个将Vision Transformer引入SNN的工作
- Spike-driven Transformer:提出脉冲驱动的自注意力
- 启发:从底层运算角度反思和改进的思路可推广到SNN的其他组件
评分¶
- 新颖性: ⭐⭐⭐⭐(对脉冲注意力中点积失效的分析和a-XNOR的提出都很有洞见)
- 实验充分度: ⭐⭐⭐⭐(多种架构、多种数据集的全面验证)
- 写作质量: ⭐⭐⭐⭐(问题分析清晰、逻辑严谨)
- 价值: ⭐⭐⭐⭐(对脉冲Transformer领域有重要推动意义)
相关论文¶
- [CVPR 2025] Spiking Transformer with Spatial-Temporal Attention
- [CVPR 2025] STAA-SNN: Spatial-Temporal Attention Aggregator for Spiking Neural Networks
- [CVPR 2025] Breaking the Low-Rank Dilemma of Linear Attention
- [NeurIPS 2025] Strassen Attention, Split VC Dimension and Compositionality in Transformers
- [AAAI 2026] Vision Transformers are Circulant Attention Learners