[论文解读] Revisiting Batch Normalization for Training Low-latency Deep Spiking Neural Networks from Scratch
该论文提出了一种时间批量归一化方法——通过时间的批量归一化(BNTT),该方法在脉冲神经网络(SNNs)中解耦了时间步长上的批量归一化参数,从而实现了有效的反向传播通过时间。BNTT通过可学习的时间可变参数捕捉脉冲动态,使深度SNN能够仅用25–30个时间步从零开始进行端到端训练,在CIFAR-10上达到90.5%的准确率,且相比先前方法显著降低了延迟和能耗。
Spiking Neural Networks (SNNs) have recently emerged as an alternative to deep learning owing to sparse, asynchronous and binary event (or spike) driven processing, that can yield huge energy efficiency benefits on neuromorphic hardware. However, training high-accuracy and low-latency SNNs from scratch suffers from non-differentiable nature of a spiking neuron. To address this training issue in SNNs, we revisit batch normalization and propose a temporal Batch Normalization Through Time (BNTT) technique. Most prior SNN works till now have disregarded batch normalization deeming it ineffective for training temporal SNNs. Different from previous works, our proposed BNTT decouples the parameters in a BNTT layer along the time axis to capture the temporal dynamics of spikes. The temporally evolving learnable parameters in BNTT allow a neuron to control its spike rate through different time-steps, enabling low-latency and low-energy training from scratch. We conduct experiments on CIFAR-10, CIFAR-100, Tiny-ImageNet and event-driven DVS-CIFAR10 datasets. BNTT allows us to train deep SNN architectures from scratch, for the first time, on complex datasets with just few 25-30 time-steps. We also propose an early exit algorithm using the distribution of parameters in BNTT to reduce the latency at inference, that further improves the energy-efficiency.
研究动机与目标
- 为解决由于脉冲神经元的不可微性,导致从零开始训练高准确率、低延迟SNN的挑战。
- 克服标准批量归一化在SNN中的局限性,后者因在时间步长间共享参数而无法捕捉时间动态。
- 通过使用替代梯度反向传播,在复杂数据集(如CIFAR-100和Tiny-ImageNet)上实现深度SNN架构的端到端训练。
- 通过学习时间自适应的脉冲发放率控制,实现时间解耦参数,从而提升能效并降低推理延迟。
- 通过利用BNTT增强SNN的时间动态特性,提升对对抗攻击的鲁棒性。
提出的方法
- 提出一种新型SNN专用批量归一化层——通过时间的批量归一化(BNTT),在时间轴上解耦批量归一化参数。
- 在BNTT中引入时间可变的可学习参数,使神经元能够根据不同时间步自适应调节其脉冲发放率。
- 将BNTT作为SNN中的附加层实现,通过替代梯度反向传播进行训练,以优化时间脉冲动态。
- 设计一种基于BNTT参数分布的早期退出推理策略,以降低延迟并进一步提升能效。
- 采用一种时间归一化方案,按时间步独立计算批量统计量,不同于标准BN对所有时间步进行聚合。
- 将BNTT与替代梯度方法结合,以实现图像分类基准上深度SNN的端到端训练。
实验结果
研究问题
- RQ1标准批量归一化能否有效捕捉SNN中脉冲活动的时间动态?
- RQ2一种时间解耦的批量归一化技术是否能实现复杂数据集上深度SNN的从零开始端到端训练?
- RQ3与现有SNN训练方法相比,BNTT是否能降低推理延迟和能耗?
- RQ4与标准SNN训练方法相比,BNTT是否能提升SNN对对抗攻击的鲁棒性?
- RQ5在SNN背景下,BNTT与层归一化等替代归一化技术相比表现如何?
主要发现
- BNTT实现了在CIFAR-10、CIFAR-100、Tiny-ImageNet和DVS-CIFAR10上从零开始的深度SNN端到端训练,仅需25–30个时间步。
- 在CIFAR-10上使用VGG9架构,BNTT仅用25个时间步即达到90.5%的top-1准确率,优于转换方法(1000个时间步,准确率91.2%)和替代梯度方法(100个时间步,准确率88.7%)。
- 与转换方法相比,BNTT在CIFAR-10上将脉冲数量减少了96.9%;与替代梯度训练相比,减少了90.8%。
- 在神经形态硬件(TrueNorth)上,BNTT的归一化能耗为0.0312,相比转换基线降低了96.9%。
- BNTT在FGSM对抗攻击下表现出更优的鲁棒性,在不同攻击强度下均保持高于标准替代梯度和基于转换的SNN的准确率。
- 在CIFAR-10上,BNTT的准确率(90.5%)显著优于层归一化(75.4%),证实其在建模时间脉冲动态方面的优越性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。