[论文解读] Online Training Through Time for Spiking Neural Networks
本文提出了用于脉冲神经网络的随时间在线训练(OTTT),实现前向时间学习并保持常量内存,将BPTT与代理梯度连接到脉冲表示,并提供理论下降性保证与类Hebbian更新。
Spiking neural networks (SNNs) are promising brain-inspired energy-efficient models. Recent progress in training methods has enabled successful deep SNNs on large-scale tasks with low latency. Particularly, backpropagation through time (BPTT) with surrogate gradients (SG) is popularly used to achieve high performance in a very small number of time steps. However, it is at the cost of large memory consumption for training, lack of theoretical clarity for optimization, and inconsistency with the online property of biological learning and rules on neuromorphic hardware. Other works connect spike representations of SNNs with equivalent artificial neural network formulation and train SNNs by gradients from equivalent mappings to ensure descent directions. But they fail to achieve low latency and are also not online. In this work, we propose online training through time (OTTT) for SNNs, which is derived from BPTT to enable forward-in-time learning by tracking presynaptic activities and leveraging instantaneous loss and gradients. Meanwhile, we theoretically analyze and prove that gradients of OTTT can provide a similar descent direction for optimization as gradients based on spike representations under both feedforward and recurrent conditions. OTTT only requires constant training memory costs agnostic to time steps, avoiding the significant memory costs of BPTT for GPU training. Furthermore, the update rule of OTTT is in the form of three-factor Hebbian learning, which could pave a path for online on-chip learning. With OTTT, it is the first time that two mainstream supervised SNN training methods, BPTT with SG and spike representation-based training, are connected, and meanwhile in a biologically plausible form. Experiments on CIFAR-10, CIFAR-100, ImageNet, and CIFAR10-DVS demonstrate the superior performance of our method on large-scale static and neuromorphic datasets in small time steps.
研究动机与目标
- 推动脉冲神经网络(SNN)在低延迟、在线学习条件下的高效训练。
- 开发一种训练方法,在保持性能的同时避免BPTT的高内存成本。
- 建立 OTTT 与基于尖峰表示的方法之间的理论联系,以确保下降方向的一致性。
- 表明 OTTT 与生物学上可行的三因素 Hebbian 学习规则在板上学习中的一致性。
- 展示在大规模静态数据集与神经形态数据集上的有效性。
提出的方法
- 通过解耦时间相关性并跟踪前突活动来推导 OTTT,使得能够进行前向时间梯度计算。
- 在每个时间步计算瞬时损失和梯度,避免时间反向传播。
- 证明在前馈和递归条件下,OTTT 梯度提供的下降方向与基于脉冲表示的梯度相似。
- 将更新形式化为三因素 Hebbian 学习规则,支持潜在的片上在线学习。
- 在实现中使用不含 BatchNorm 的 scaled weight standardization (sWS),以支持神经形态硬件上的无归一化训练。
- 提供在线版(OTTT O)和累积梯度版(OTTT A)的变体,以及详细的实现指南。
实验结果
研究问题
- RQ1在常量内存开销下,SNN 的在线前向时间学习是否能与 BPTT 取得有竞争力的性能?
- RQ2在前馈与递归动态下,OTTT 梯度是否提供与基于脉冲表示的梯度相似的下降方向?
- RQ3OTTT 是否与适合片上学习的生物学可行三因素 Hebbian 更新方案兼容?
- RQ4在低时间步延迟的情况下,OTTT 在大规模静态数据集和神经形态数据集上的表现如何?
主要发现
- OTTT 在 CIFAR-10、CIFAR-100、ImageNet 以及 CIFAR10-DVS 上用较少的时间步实现具有竞争力的精度。
- OTTT 将训练内存从随时间步线性增长(BPTT)降至常量内存成本,使在相同资源下的有效批量大小更大。
- 理论分析表明,在汇聚输入下,OTTT 梯度提供的下降方向可与基于脉冲表示的梯度在前馈和递归网络中相媲美。
- OTTT 的更新可以看作三因素 Hebbian 学习规则,表明在神经形态硬件上实现在线片上学习的可行性。
- 实证结果在许多情况下仅用 6 个时间步就对比多个基线(包括一些 BPTT 变体)显示出显著的性能优势。
- 该方法在保持适用于神经形态系统的在线学习的同时,将 BPTT、代理梯度和基于尖峰表示的训练连接起来。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。