
摘要
车载嵌入式算法在延迟、精度和功耗方面具有极为严苛的要求。本文提出,直接在事件相机(event camera)采集的数据上训练脉冲神经网络(Spiking Neural Networks, SNNs),以设计高效、快速的车载嵌入式应用。事实上,SNNs 是一类更具生物合理性的神经网络模型,其神经元通过离散且异步的脉冲进行通信,这种工作模式天然具备低功耗特性,且对硬件友好。而事件数据本身具有时空上的二值性和稀疏性,因此成为脉冲神经网络的理想输入。然而,迄今为止,SNNs 在处理真实车载场景中的复杂问题(如在非受控环境下检测复杂目标)时,性能仍显不足。为解决这一挑战,我们充分利用了脉冲反向传播(spike backpropagation)领域的最新进展——包括替代梯度学习(surrogate gradient learning)、可参数化LIF(parametric LIF)模型以及SpikingJelly框架,并结合我们提出的新型事件编码方式——\textit{体素立方体}(voxel cube),成功训练了四种基于主流深度学习网络架构的SNN模型:SqueezeNet、VGG、MobileNet与DenseNet。由此,我们显著提升了文献中通常所考虑的SNN模型的规模与复杂度。本文在两个车载事件数据集上进行了实验,首次在脉冲神经网络领域取得了新的最先进分类性能。基于上述成果,我们将所设计的SNN与单发多框检测器(SSD)相结合,首次实现了能够在复杂GEN1车载检测事件数据集上完成目标检测的脉冲神经网络系统。
代码仓库
loiccordone/object-detection-with-spiking-neural-networks
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| classification-on-n-cars | Spiking DenseNet121-24 | Accuracy (%): 90.4 Architecture: SNN Params (M): 3.93 Representation: VoxelCube |
| classification-on-n-cars | Spiking MobileNet-64 | Accuracy (%): 91.7 Architecture: SNN Params (M): 18.81 Representation: VoxelCube |
| classification-on-n-cars | Spiking VGG-11 | Accuracy (%): 92.4 Architecture: SNN Params (M): 9.23 Representation: VoxelCube |
| object-detection-on-gen1-detection | Spiking MobileNet-64+SSD | Params: - mAP: 14.7 |
| object-detection-on-gen1-detection | Spiking VGG-11+SDD | Params: - mAP: 17.4 |
| object-detection-on-gen1-detection | Spiking DenseNet121-124+SSD | Params: 8.2 mAP: 18.9 |