跳转至

Online Pseudo-Zeroth-Order Training of Neuromorphic Spiking Neural Networks

会议: ICLR 2026
OpenReview: https://openreview.net/forum?id=6ZietpbPoB
代码: 待确认
领域: 类脑计算 / 脉冲神经网络 / 生物可塑性训练
关键词: 脉冲神经网络, 零阶优化, 空间信用分配, 在线训练, 三因子 Hebbian 学习

一句话总结

本文提出 OPZO(在线伪零阶训练),只用一次带噪声注入的前向传播 + 自顶向下的直接反馈,就能在脉冲神经网络中完成空间信用分配,避开了空间反向传播的权重对称与前后向分阶段问题,又通过"伪零阶"与动量反馈连接压住了零阶方法的巨大方差,最终在神经形态与静态数据集上逼近空间 BP 的精度,且估计的片上训练开销更低。

研究背景与动机

领域现状:用脉冲神经网络(SNN)做类脑计算被视为低功耗的方向,神经形态硬件(Loihi 等)天然支持稀疏事件驱动、片上并行的运算。目前训练深层 SNN 的主流是"代理梯度 + 时空反向传播":用 surrogate gradient 解决脉冲不可导问题,再沿时间和层级两个维度做 BP 完成信用分配。

现有痛点:时空 BP 与神经形态硬件、生物可塑性都不兼容。空间 BP 需要权重转置(weight transport)、需要前向和后向两个分离阶段并伴随 update locking;时间 BP 对带有"在线"特性的脉冲神经元更是不可行。在线训练方法(如 OTTT、e-prop)已经用追踪的资格迹(eligibility trace)解耦了时间维依赖,做到了 forward-in-time 学习,但空间维的信用分配仍主要依赖空间 BP,或退而求其次用随机反馈(DFA),后者保证弱、精度差。

核心矛盾:要"生物可塑、硬件友好"(单向局部突触、单次前向、直接自顶向下调制),就得放弃空间 BP;可一旦放弃 BP,现有替代品要么像 DFA 用固定随机反馈、缺乏理论保证且掉点严重,要么像零阶(ZO)/前向梯度方法因方差爆炸而根本训不动通用网络。如何在不做空间 BP 的前提下拿到与 BP 相当的性能,是悬而未决的问题。

本文目标:设计一个全局学习算法,满足三件事——只需单次前向、用直接自顶向下反馈做空间信用分配、性能逼近空间 BP——同时能嫁接到在线训练上,铺向 SNN 的片上训练。

切入角度:作者注意到经典零阶方法(SPSA、单点 ZO)只把损失当黑箱标量 \(L\),反馈信号是一个标量,落在随机方向 \(z\) 上,信息量太少导致方差巨大。但实际中损失函数的梯度是有闭式解的(MSE 是 \(o-y\),交叉熵是 \(\sigma(o)-y\)),只有模型 \(f\) 因脉冲不可导/生物可塑性才需要零阶处理。于是可以"解耦模型与损失",对损失用一阶、对模型保持零阶。

核心 idea:提出"伪零阶(pseudo-zeroth-order)"形式化——把损失的一阶梯度作为信息更丰富的向量误差信号,再用动量反馈连接逼近模型 Jacobian 的期望来传播这个误差,从而在保持单次前向的同时大幅降低零阶方差。

方法详解

整体框架

OPZO 要解决的核心问题是:在不做空间 BP 的前提下,给隐藏层每个神经元一个可靠的误差(梯度)信号。整体上它把"如何拿到误差信号"拆成两半——对损失用一阶拿到输出层误差向量 \(e=\nabla_o L\)对模型用零阶估计一个能把 \(e\) 投射回隐藏层的反馈矩阵 \(M\)

具体一轮迭代:前向传播时给每层注入随机噪声 \(\alpha z\),得到扰动输出 \(\tilde{o}\);用 \(z\)\(\tilde{o}\) 以动量方式更新反馈连接 \(M\)(它在逼近模型 Jacobian 转置的期望 \(\mathbb{E}_x[J_f^\top]\));用损失闭式梯度算出 \(e\);通过 \(M\)\(e\) 直接送到各层神经元得到每个神经元的误差 \(g\);最后把 \(g\) 与在线训练追踪的突触前迹 \(\hat{a}\) 相乘,形成与三因子 Hebbian 学习同形的权重更新。整个过程只有一次带噪前向,且各层的误差传播与 \(M\) 更新都可并行。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
    A["输入脉冲 + 每层噪声注入 αz"] --> B["扰动前向<br/>得到输出 õ"]
    B --> C["伪零阶形式化<br/>误差信号 e = ∇o L"]
    B --> D["动量反馈连接<br/>M ← λM +(1-λ)z·õᵀ/α"]
    C --> E["自顶向下传播<br/>g = M·e 送到各层神经元"]
    D --> E
    E --> F["在线训练 + 三因子 Hebbian<br/>ΔW ∝ â·ψ(u)·(-g)"]
    F --> G["权重更新"]

关键设计

1. 伪零阶形式化:把损失的一阶信息拿回来,只对模型保持零阶

零阶方法方差爆炸的根源是它把整个 \(L\circ f\) 当黑箱,只用一个标量函数值乘到随机方向 \(z\) 上,信息太稀薄。本文的观察是:损失 \(L(\cdot)\) 的梯度通常有闭式解,真正"不可导/黑箱"的只有模型 \(f(\cdot;\theta)\)。于是把二者解耦——对输入 \(x\),模型先输出 \(o=f(x;\theta)\),再算损失 \(L(o,y_x)\);保持 \(f\) 的零阶形式(脉冲不可导也无妨),但直接用损失梯度 \(e=\nabla_o L(o,y_x)\)(MSE 下为 \(o-y_x\),交叉熵下为 \(\sigma(o)-y_x\))作为反馈误差信号。这样反馈从"一个标量"升级为"一个携带类别方向信息的向量",为后续方差缩减提供了抓手。这正是 OPZO 区别于 MeZO/SPSA 等纯零阶方法的起点:它们只能用 \(L\) 的函数值,OPZO 用上了 \(L\) 的梯度。

2. 动量反馈连接:用一次前向估计 Jacobian 期望,把零阶方差压到与 BP 同量级

有了误差向量 \(e\),还需要一条能把它从输出层送回隐藏层的"反馈连接"。从两点估计的方向梯度出发,经泰勒展开可得 $\(\nabla_\theta^{ZO} L \approx \frac{\langle \nabla_o L,\ \tilde{o}-o\rangle}{\alpha} z = \frac{z\,\Delta o^\top}{\alpha}\nabla_o L,\)$ 其中 \(\Delta o=\tilde{o}-o\)。这说明 \(\frac{z\Delta o^\top}{\alpha}\) 就是一条把误差 \(\nabla_o L\) 投回去的连接权重,而它可以看作模型 Jacobian 转置期望 \(\mathbb{E}_x[J_f^\top]\) 的一个随机估计。单次随机方向 \(z\) 的估计方差很大,作者用跨迭代的动量把不同方向的估计累积平均: $\(M_k := \lambda M_{k-1} + (1-\lambda)\frac{z\,\tilde{o}^\top}{\alpha},\qquad \nabla_\theta^{PZO} L = M_k\,\nabla_o L,\)$ 这里用了单点形式 \(z\tilde{o}^\top/\alpha\)(只需一次前向,且与两点估计同期望,也是平滑版 \(f_\alpha\) Jacobian 的无偏估计,因此对不可导脉冲也成立)。论文给出 Proposition 4.1:单点零阶方差约为 \(\frac{1}{B}\big((d+\beta)V_\theta+\dots+\frac{1}{\alpha^2}V_L+\frac{1}{\alpha^2}S_L\big)\),其中 \(d\) 是参数维度(通常巨大);而伪零阶方差为 \(\frac{1}{B}(mV_\epsilon V_o + mV_\epsilon S_o + V_{o,M})\),其中 \(m\ll d\) 是输出维度、\(V_\epsilon\) 很小。直观结论是零阶比 BP 方差大至少 \(d\) 倍,而伪零阶能把方差压回与 BP 相近的量级(实验中也确实如此)。它采用节点扰动(node perturbation,方差小于权重扰动),形式上与 DFA 很像,但反馈权重不是固定随机矩阵,而是被估计出来的 Jacobian,因此比 DFA 多了保证、性能也好得多。代价是 \(M\) 取的是 Jacobian 在数据 \(x\) 上的期望,会引入一点偏置(Proposition 4.3 给出在 \(\big\|\mathbb{E}[J_f^\top e]\big\|>\frac{1}{2}L_J L_e\Delta x+e_\epsilon\) 条件下估计梯度仍是下降方向的保证)。

3. 嫁接在线训练:把估计梯度塞进三因子 Hebbian 更新,铺向片上训练

前两个设计解决了空间信用分配,但要真正"神经形态友好"还得解决时间维。OPZO 建立在 OTTT 这类在线训练之上:OTTT 用追踪的突触前迹 \(\hat{a}_l[t]=\sum_{\tau\le t}\lambda^{t-\tau}s_l[\tau]\) 做时间信用分配,原本其瞬时梯度仍要逐层空间 BP;OPZO 把这个被反向传播出来的瞬时梯度替换为自顶向下直接估计出的 \(g\)。于是权重更新写成 $\(\Delta W_{i,j}\propto \hat{a}_i[t]\,\psi(u_j[t])\,(-g_j^t),\)$ 其中 \(\hat{a}_i[t]\) 是突触前活动迹、\(\psi(u_j[t])\) 是局部 surrogate 导数、\(g_j^t\) 是全局自顶向下误差调制信号。这恰好就是三因子 Hebbian 学习的形式(突触前 × 突触后局部 × 全局调制),且全局信号是直接自顶向下、没有逐层 BP。它还能容忍误差信号传播的延迟 \(\Delta t\)(在收敛输入与合适 surrogate 下梯度仍有效),各层的误差传播与反馈连接更新都可并行——这些性质共同让 OPZO 比逐层空间 BP 更契合异步、并行的神经形态硬件,向片上训练迈进一步。

损失函数 / 训练策略

训练目标仍是普通的监督损失(MSE 或交叉熵),关键在反馈机制而非损失本身。噪声 \(z\) 默认采样自高斯分布,也支持 Rademacher(±1 各 0.5)与单位球面采样以适配硬件;扰动默认加在神经活动上(节点扰动),也可改为加在膜电位上(神经元前扰动)以减少对稀疏脉冲前向的干扰,并保留局部 surrogate 导数。还可用对偶噪声(每两个时间步用 \(z\)\(-z\))进一步降方差。此外可叠加局部学习(LL,每层加局部读出层)与中间全局学习(IGL,从中间层向前传播全局信号)来增强深层网络的训练。

实验关键数据

主实验

在 OTTT 在线训练框架下,固定相同设置比较不同空间信用分配方法(FC 用于 N-MNIST/MNIST,5 层卷积用于其余):

方法 N-MNIST DVS-Gesture DVS-CIFAR10 CIFAR-10 CIFAR-100
空间 BP 98.15 95.72 75.43 90.00 64.82
DFA 97.98 91.67 60.60 79.90 49.50
DKP 97.87 60.53 37.70 81.84 53.27
ZOsp(单点零阶) 72.90 23.73 31.67 49.04 22.26
OPZO 98.27 94.33 72.77 85.74 60.93
OPZO(w/ LL) / 96.06 77.47 89.42 64.77

纯 ZOsp 几乎训不动(CIFAR-100 仅 22%),OPZO 把它从 22% 拉到 61%,逼近 BP;DFA 在卷积网络上与 BP 差距巨大,OPZO 显著超过 DFA。叠加局部学习后,OPZO(w/ LL)与 BP(w/ LL)基本持平,甚至在神经形态数据集(DVS-Gesture 96.06 vs BP 95.72、DVS-CIFAR10 77.47 vs 76.07)上反超 BP。

消融 / 鲁棒性实验

配置 关键指标 说明
不同噪声分布/位置(CIFAR-10) 84.0–86.0 高斯/单位球/Rademacher × 神经元前后扰动,结果接近,证明对噪声设置鲁棒
9 层深网 OPZO(w/ LL&IGL) DVS-Gesture 96.88 / CIFAR-100 66.13 与/超过空间 BP(94.10 / 65.96),远超 DFA
ImageNet 微调 ResNet-34(噪声 0.15) OPZO 60.96 DFA 54.59、ZOsp 30.32,OPZO 能在带噪场景成功微调,DFA/ZOsp 失败
梯度方差(Fig. 2) 与 BP 同量级 ZOsp 方差比 BP 大数个数量级,OPZO 压回 BP 级

关键发现

  • 方差缩减是性能的关键:ZOsp 失败的直接原因就是方差比 BP 大几个数量级;OPZO 把方差压回 BP 量级后精度随之追平 BP,理论(Prop 4.1)与实验一致。
  • OPZO 对噪声分布、注入位置都鲁棒,给硬件实现留了空间(高斯不便实现时可用 Rademacher/单位球)。
  • 深层网络更依赖辅助技术与残差结构:纯 OPZO 对网络结构(残差连接)的依赖比 BP 更强,叠加 LL/IGL 后才能稳定扩展到 9 层/ImageNet。
  • 片上开销估计更低:自顶向下反馈的内存与运算量为 \(O(Nmn)\)\(m\ll n\))且可并行,远低于空间 BP 的 \(O((N-1)n^2+mn)\) 反向逐层连接;且只需单次前向,操作开销与 DFA 相当。

亮点与洞察

  • "解耦模型与损失"这一刀切得很巧:它精准识别出零阶方法浪费了损失梯度这一免费午餐——损失梯度本就有闭式解,没必要也当黑箱。把反馈从标量升级成向量,是后续一切方差缩减的前提。
  • 动量反馈连接 = 在线学出来的 Jacobian 反馈:DFA 用固定随机矩阵,OPZO 用单点零阶 + 动量去逼近真实 Jacobian 期望,等于把 DFA 的"瞎传"换成"学着传",既保留单次前向与直接反馈的硬件友好性,又拿回理论保证,是 DFA 与 ZO 之间一个聪明的折中。
  • 与三因子 Hebbian 同形这一点很有迁移价值:它把一个看似纯算法的梯度估计,落到了"突触前迹 × 局部 surrogate × 全局调制"的生物可塑规则上,意味着该思路有望直接映射到支持局部更新的神经形态芯片,而不只是 GPU 上的数值技巧。

局限与展望

  • 作者承认动量连接取 Jacobian 在数据上的期望会引入偏置(数据依赖的非线性导致 Jacobian 随样本变化),只在一定条件下保证是下降方向,这是所有"无逐层 BP 的直接反馈"方法的共性问题。
  • 纯 OPZO 对网络深度的可扩展性弱于 BP,需借助残差连接 + 局部学习/中间全局学习才能撑起深网与 ImageNet,说明它尚未完全替代 BP 的可扩展性。
  • 低开销目前只是在潜在神经形态硬件上的估计;论文也坦言这类硬件仍在发展中,GPU 上 OPZO 并不省(GPU 不遵循神经形态特性)。真正的能效优势有待在实际芯片上验证。
  • ImageNet 仅做了"带噪微调"而非从头训练,大规模从头训练的能力未被证明。

相关工作与启发

  • vs 空间 BP:BP 逐层用对称权重反传、需前后向分阶段,生物不可塑且硬件不友好;OPZO 单次前向 + 直接自顶向下反馈,精度逼近 BP,但开销更低、可并行、可上片。
  • vs DFA / DKP(随机反馈):DFA 用固定随机矩阵直接把误差从顶层送到隐藏层,OPZO 形式相似,但反馈权重是估计出的 Jacobian 而非随机矩阵,因此保证更强、卷积网络上掉点远小于 DFA;DKP 虽学习 DFA 的反馈连接,但在神经形态数据集上表现差。
  • vs MeZO / SPSA 等零阶方法:它们把 \(L\circ f\) 当黑箱、只用标量函数值、且常需两次前向,方差大到训不动通用网络;OPZO 解耦损失梯度 + 动量逼近 Jacobian,把方差压回 BP 量级,单次前向即可。
  • vs 前向梯度(forward gradient)方法:后者需要额外的异质信号传播阶段、开销更高、生物可塑性存疑;OPZO 不需额外阶段,只在普通前向里加噪声注入。

评分

  • 新颖性: ⭐⭐⭐⭐⭐ "解耦损失/模型 + 动量逼近 Jacobian"把零阶方差问题解得干净,是 DFA 与 ZO 之间一个有理论支撑的新点。
  • 实验充分度: ⭐⭐⭐⭐ 覆盖神经形态/静态数据集、FC/卷积/9 层/ResNet-34,含方差与开销分析;但仅在带噪场景做 ImageNet 微调而非从头训练。
  • 写作质量: ⭐⭐⭐⭐ 动机层层递进,理论命题与图示清晰,符号偏密但自洽。
  • 价值: ⭐⭐⭐⭐⭐ 给 SNN 片上训练提供了一条生物可塑、硬件友好且性能逼近 BP 的现实路径。