11

Modern Deep SNN

ResNet 与 Transformer 如何获得脉冲语义

55 MIN
CHAPTER 11/12

先建立一个能用的直觉

现代 SNN 借鉴 ANN 的宏观骨架,但必须重新考虑 spike 激活的位置、残差相加后的值域、时序状态和 attention 中的乘法。

它到底解决了什么麻烦

简单替换 ReLU 会破坏 identity mapping 或产生非二值残差。架构设计要同时维护优化路径与事件驱动可部署性。

Math · 不背公式,顺着计算读

每张卡先讲人话,再拆符号、走计算顺序,最后代入一组数。读完后请合上说明,自己复算一次。

公式 1 / 2SEW residual
Sout=g(Sblock,Sidentity)S_{out}=g(S_{block},S_{identity})
先用一句话读懂

残差块输出与恒等分支不一定直接做普通实数加法,而是用 g 明确规定两路 spike 怎样合并。

符号分别是谁

Sblock
经过残差变换分支后的 spike
Sidentity
跳连分支传来的 spike
g
逐元素合并规则,例如 ADD、AND 或 IAND

按这个顺序计算

  1. 分别计算残差分支和恒等分支。
  2. 选定 g 并逐元素合并。
  3. 检查 g 是否保持期望的恒等映射与输出值域。

代入一组数

若两路分别为 1 和 0:ADD 得到 1,AND 得到 0,IAND(残差×非恒等)还会依定义变化;三者不是可随意互换的装饰。

公式 2 / 2Spiking attention
Qs=H(Q),Ks=H(K),Vs=H(V)Q_s=H(Q),\quad K_s=H(K),\quad V_s=H(V)
先用一句话读懂

先把连续的 Q、K、V 投影经过阈值变成 spike-form 表征;这一步只说明通信形式,尚未定义 attention 本身怎样计算。

符号分别是谁

Q/K/V
由输入特征投影得到的 query、key、value
H
阈值发放函数
Qs/Ks/Vs
脉冲化后的 Q、K、V

按这个顺序计算

  1. 对输入做 Q/K/V 投影。
  2. 经神经元动力学和阈值产生 spike。
  3. 再查看论文如何用这些 spike 做相关性与聚合。

代入一组数

即使 Qs/Ks/Vs 都是 0/1,后续若仍计算稠密 QsKsᵀ、softmax 和矩阵乘,整块也不能简单宣称‘只有加法’。

把几个容易混的概念拆开

Spiking ResNet

核心不是名字,而是残差路径能否传递恒等映射和稳定梯度。

Spiking Transformer

常用 spike-form Q/K/V、无 softmax attention 或 token mixer;“spiking”不保证整网全程事件驱动。

跟着机制一步一步走

01

哪些是成熟骨架,哪些仍在探索?

Spiking CNN/ResNet 已有较稳定的训练范式;Spiking Transformer 正快速演进,但“全脉冲”“无乘法”“真实低能耗”在不同论文中定义并不一致;长序列、SSM 与大规模预训练仍更偏探索。

  • 成熟:卷积、残差、surrogate direct training。
  • 活跃:低时间步 attention、token mixer、视频。
  • 探索:大模型规模、SSM 混合、跨模态与自监督。
02

读架构图时检查四件事

spike neuron 放在哪里;残差合并前后是否仍为二值;attention 是否保留 softmax/乘法;时间状态是否真的参与任务,而不只是重复静态输入。

公式在代码里对应哪一行

这一章更适合在交互实验里逐步观察;代码实验页还提供了完整训练程序。

先写下预测,再动参数

在论文地图中比较 Spikformer、Spike-driven Transformer 与 STMixer:关注 attention 算子是否适合异步硬件。

打开交互实验室 →

我最常见到的误解

仅凭模型名估计能耗。需要逐算子检查稀疏性、数据移动、同步、时间步和目标硬件。

到了论文里,它会怎么出现

2023–2025 的热点从“把 Transformer 脉冲化”转向更少乘法、更低时间步、更长序列与视频任务。

进入论文库 →

别急着翻页,先验算一下

本章检测0/3 已作答

01判断 Spiking Transformer 是否真正事件驱动,最关键的检查是?

02Spiking Transformer 名称本身能证明全网事件驱动吗?

03读 residual SNN 时首先检查什么?