回归捷径:缓解梯度消失以训练脉冲神经网络
内容提要
本文综述直接训练深度脉冲神经网络的研究进展,涵盖可训练深度脉冲神经网络、近似导数与脉冲反向传播、时空反向传播、阈值相关批归一化、时间效率训练及残差连接等方法,这些方法在MNIST、CIFAR-10、ImageNet等数据集上提升了准确率与能效,并探讨了语义分割应用及未来挑战。
延伸解读
直接训练为何关键
文章强调,深度脉冲神经网络(DSN)可直接进行参数训练,无需先用传统深度网络初始化。这避免了转换法对人工网络的依赖,使训练更贴近脉冲机制本身。同时,控制反向路径的膜电位初始值被证明对训练至关重要,是提升收敛速度与准确性的一个简单而有效的切入点。
从近似导数到时空反向传播
为解决脉冲不可微带来的梯度问题,文章梳理了近似导数与脉冲反向传播、时空反向传播(STBP)等路线。STBP结合空间域与时域,并采用适合梯度下降的迭代LIF模型,使多层感知机在静态MNIST和动态N-MNIST等数据上表现优于当时算法,为类脑计算提供了可训练框架。
效率与准确率的平衡
文章提到时间效率训练(TET)针对代理梯度训练泛化性差的问题,在DVS-CIFAR10上达到83%准确率。另有基于阈值相关批归一化(tdBN)与STBP的方法,单次训练在CIFAR-10达93.15%、ImageNet达67.05%,并首次在ImageNet上探索高性能直接训练深度SNN,显示效率与精度可同步推进。
应用拓展与待解挑战
除分类任务外,文章还讨论了SNN在语义分割中的应用:通过替代全连接层和替代梯度学习,将全卷积网络与DeepLab重构为SNN域网络,实验显示相较ANN更稳健且节能。文章最后指出,未来研究仍面临准确性、效率与时间动态利用等方面的挑战,这些方向值得持续关注。
Q&A
脉冲神经网络可以直接训练吗?还是需要先训练传统网络再转换?
可以直接训练。文章指出,深度脉冲神经网络(DSN)可以直接进行参数训练,不需要先用传统深度神经网络的训练结果来初始化。
训练深度脉冲神经网络时,为什么控制反向路径的膜电位初始值很重要?
研究表明,在DSN中控制反向路径的膜电位初始值非常重要,并且文章提出了一种简单有效的方法来加快DSN的收敛时间并提高准确性。
有哪些方法可以缓解脉冲神经网络训练中的梯度消失问题?
文章提到的方法包括:引入近似导数方法和基于脉冲的反向传播、时空反向传播(STBP)、阈值相关批归一化(tdBN)、时间效率训练(TET)、逆向残差连接、随机softmax以及混合人工和尖峰神经元激活等。
时空反向传播(STBP)框架是如何工作的?它有什么优势?
STBP框架结合了空间域(SD)和时间相关的时域(TD),提出了适合于梯度下降训练的迭代LIF模型以及脉冲活动的近似导数。它能够使多层感知器(MLP)在静态MNIST和动态N-MNIST数据集以及自定义对象检测数据集上获得比现有状态-of-the-art算法更好的性能。
阈值相关批归一化(tdBN)在脉冲神经网络中取得了什么效果?
基于tdBN和STBP的方法可直接训练深度SNN,并在神经形态硬件上实现推理,单次训练达到了93.15%的CIFAR-10准确率、67.8%的DVS-CIFAR10准确率和67.05%的ImageNet准确率,是第一次在ImageNet上探索具有高性能的直接训练的深度SNN。
时间效率训练(TET)方法解决了什么问题?效果如何?
TET方法解决了直接使用代理梯度进行训练的脉冲神经网络(SNNs)普遍存在的推广性差的问题,并在各种数据集上超过了其他方法,尤其在DVS-CIFAR10上达到了83%的准确率,优于现有技术。
脉冲神经网络在语义分割任务上表现如何?
文章探讨了脉冲神经网络在语义分割方面的应用,通过替代全连接层和使用替代梯度学习方法,将基本的全卷积网络和DeepLab架构重构为SNN域的网络。实验表明,相较于ANN网络,SNN网络在这个领域更加稳健和节能。