Spiking-YOLO: Spiking Neural Network for Real-time Object Detection
这是一篇来自韩国的比较冷门或者前沿一点的文章,研究方向是脉冲神经网络(Spiking Neural Networks)与YOLO算法的融合,发现韩国人特别擅长对YOLO,SSD等算法进行魔改啊。
文章贡献
提出一种在深度SNN中能够进行快速精确信息传输的Spiking-YOLO算法。这是第一次将深度SNN成功应用于目标检测任务的工作;为深度SNN开发了一种成为逐通道归一化的精细归一化技术。所提出的方法使得在多个神经元中更高的发射率成为可能,这促成了快速并且精确的信息传输;提出了一种新颖的方法,其特点在于具有不平衡阈值的带符号神经元,这些神经元让SNNs中的leakyReLU得以实现。这给深度SNN应用于各种模型和应用创造了机会。文章提出的方法
作者指出使用常规深度神经网络到脉冲神经网络转换方法应用于脉冲神经网络域时,性能下降的很多,深入分析后提出了可能的解释:一是来自逐层归一化的极低燃烧率,二是用于leaky-ReLU函数的负激活缺乏表示。于是,本文逐个突破。
基于数据的逐通道归一化
传统的脉冲神经网络中,需要确保神经元根据其输入大小产生脉冲序列,其中权值和阈值电压分别负责神经元激活的充足度和平衡度,这会导致要么欠激活要么过激活,从而使信息丢失和性能不佳。
作者深入分析并证明了细粒度的通道正则化可以通过极小的激活来提高神经元的发射率。换句话说,非常小的激活被正确归一化,将在更短的时间内准确地传输信息。文章认为通道正则化的应用可以带来更快更准确的深度SNN,这将使深度SNN应用于更高级机器学习问题成为可能。
具有不平衡阈值特征的带符号神经元
文章引入了一种具有不平衡阈值(即IBT)的带符号神经元,它不仅可以对正负激活进行解释,还可以对leakyReLU负激活值区域的渗漏项进行补偿。如下图所示,作者增加了另外一个Vth负责对负激活响应。
具有IBT的带符号神经元示意图
其中,具有IBT的带符号神经元的基本动力学公式如下所示。
神经元激活公式
通过使用上述具有IBT的带符号神经元,可以在SNN中使用leakyReLU,从而将各种DNN模型转换为广泛应用的SNN。
实验结果与评估
作者使用Tiny YOLO的实时目标检测模型,在脉冲神经网络中实现最大池化层和BN层。模型在PASCAL VOC2007和2012上训练,在PASCAL VOC2007上测试。所有代码基于Tensorflow Eager框架,在V100的GPU上进行实验。
文章通过实验的设计验证并分析了使用通道正则化和有符号神经元的IBT存在的用处。如下图所示,当通道正则化和有符号神经元都使用时,脉冲-YOLO能够达到51.61%的mAP,这个性能比较高了。
脉冲-YOLO的不同配置性能对比
此外,逐层正则化的mAP仅仅46.98%,而通道正则化优势明显,收敛速度也更快。如果不使用本文提出的这两种方法,Spiking-YOLO无法检测目标,如果仅仅使用有符号神经元的话,mAP仅仅7.3%,这表明有符号神经元可以补偿leakyReLU的不足项,并且在解决深度SNN中这种高数值精度问题中起着关键作用。
在上图中,作者还在两种输出编码方案上进行了额外的对比实验,一种基于累计Vth,一种基于脉冲数量。实验结果表明基于Vth的输出编码方案在解释尖峰序列时将更精确,也体现出收敛更快的特点。
举报/反馈

老巴读AI论文

8获赞 48粉丝
定期发布一些平时阅读的AI论文笔记
关注
0
0
收藏
分享