©PaperWeekly 原创 · 作者 | 竹贤 脉冲神经网络(Spike Neural Networks,SNN)因其生物合理性和低功耗特性,被认为是人工神经网络(Artificial Neural Networks,ANN)的一种有效替代方案。然而,大多数 SNN 网络都由于其性能限制,只能应用于图像分类等简单任务。 为弥补 ANN 和 SNN 在目标检测上之间的性能差距, 本文提出了目标检测框架 SpikeYOLO ,以及一种能够执行整数训练脉冲推理的脉冲神经元。在静态 COCO 数据集上,SpikeYOLO 的 mAP@50 和 mAP@50:95 分别达到了 66.2% 和 48.9%,比之前最先进的 SNN 模型分别提高了 +15.0% 和 +18.7%;在神经形态目标检测数据集 Gen1 上,SpikeYOLO 的 mAP@50 达到了 67.2%,比同架构的 ANN 提高了 +2.5%,并且能效提升 5.7×。
论文标题:
Integer-Valued Training and Spike-Driven Inference Spiking Neural Network for High-performance and Energy-efficient Object Detection
https://arxiv.org/abs/2407.20708
背景
脉冲神经元模拟了生物神经元的复杂时空动态,其利用膜电势融合时空信息,仅在膜电势超过阈值时发射二值脉冲信号。因此,脉冲神经网络只有在接收到脉冲信号时才会触发稀疏加法运算。当脉冲神经网络部署到神经形态芯片时,能发挥其最大的低功耗优势。例如,神经形态感算一体芯片 Speck [1] 采用异步电路设计,具有极低的静息功耗(低至 0.42mW),在典型神经形态边缘视觉场景的功耗低至 0.7mW。 然而,脉冲神经元的复杂内在时空动态和二值脉冲活动是一把“双刃剑”。一方面,复杂内在时空动态特性带来强大的信息表达能力,结合脉冲信号使能事件驱动计算获得低功耗特性;而另一方面,二值脉冲活动不可微分的特性使得 SNN 难以训练。因此,SNN 在计算机视觉中的大多数应用仅限于简单的图像分类任务,而很少应用于更常用且具有挑战性的目标检测任务,且和 ANN 之间有着明显的性能差距。 2020 年,Spiking-YOLO [2] 提供了第一个利用深度 SNN 进行目标检测任务的模型,利用数千个时间步长将 ANN 转换为 SNN。2023 年,EMS-YOLO [3] 成为第一个使用直接训练 SNN 来处理目标检测的工作。2024 年,直接训练的 Meta-SpikeFormer [4] 成为首个通过预训练微调方式处理目标检测任务的 SNN。然而,这些工作和 ANN 之间的性能差距显著。
本文目标是弥合 SNN 和 ANN 在目标检测任务上的性能差距。我们通过两项努力实现了这一目标。第一,网络架构方面,我们发现过于复杂的网络架构在直接加入脉冲神经元后会导致脉冲退化,从而性能低下。第二,脉冲神经元方面,将连续值量化为二值脉冲不可避免会带来信息损失,这是 SNN 领域长久存在且难以克服的一个问题。 基于此,本工作的主要贡献包括:
本文发现,YOLO 过于复杂的网络模块设计会导致在直接加入脉冲神经元后出现脉冲退化现象。因此,本文提出的 SpikeYOLO 在设计上倾向于简化 YOLO 架构。SpikeYOLO 将 YOLOv8 [5] 的宏观设计与 meta-SpikeFormer [4] 的微观设计相结合,在保留了 YOLO 体系结构的总体设计原则的基础上,设计了 meta SNN 模块,包含倒残差结构、重参数化等设计思想。SpikeYOLO 的具体结构如图 1 所示:
宏观设计: YOLO 是一个经典的单阶段检测框架,它将图像分割成多个网格,每个网格负责独立地预测目标。其中一些经典的结构,如特征金字塔 (FPN) 等,在促进高效的特征提取和融合方面起着至关重要的作用。然而,随着 ANN 的发展,YOLO 的特征提取模块愈发复杂。 以 YOLOv8 的特征提取模块 C2F 为例,其通过复杂的连接方式对信息进行多次重复提取和融合,这在 ANN 中能增加模型的表达能力,但在 SNN 中则会引起脉冲退化现象。作为一种折衷方案,本文提出了 SpikeYOLO。其保留了 YOLO 经典的主干/颈部/头部结构,并设计了 Meta SNN 模块作为微观算子。 微观设计: SpikeYOLO 的微观设计参考了 Meta-SpikeFormer [3],一个典型的脉冲驱动 CNN+Transformer 混合架构。我们发现 Transformer 结构在目标检测任务上表现不如简单的 CNN 架构,作为一种折中方案,本文提出的 SpikeYOLO 尽量避免过于复杂的网络架构设计。 SpikeYOLO 包含两种不同的卷积特征提取模块:SNN-Block-1 和 SNN-Block-2,分别应用于浅层特征提取和深层特征提取。两种特征提取模块的区别在于他们的通道混合模块 (ChannelConv) 不同。SNN-Block-1 采用标准卷积进行通道混合 (ChannelConv1),SNN-Block-2 采用重参数化卷积进行通道混合 (ChannelConv2),以减少模型参数量。SpikeYOLO 的特征提取模块可被具体表示为:
脉冲神经元通过模拟生物神经元的通信方案,在空间和时间域上传播信息。然而,在将尖峰神经元的膜电位量化为二值脉冲时存在严重的量化误差,严重限制了模型的表达能力。为解决这个问题,本文提出了一种整数训练,脉冲推理的神经元 I-LIF。I-LIF 在训练过程中采用整数进行训练,在推理时通过拓展虚拟时间步的方法将整数值转化为二值脉冲序列以保证纯加法运算。 考虑传统的软重置的 LIF 神经元,其内部时空动力学可以被表示为:
上式中,Θ(·) 是指示函数,将小于 0 的值置零,否则置 1。这种二值量化方式带来了严重的量化误差。相比之下,I-LIF 不将膜电势与神经元阈值做比较,而是对膜电势四舍五入量化为整数,其脉冲函数 S[t] 被重写为:
其中,round(·) 是四舍五入量化函数,Clip(·) 是裁剪函数,D 是最大量化值。S[t] 的发放结果被量化为 [0,D] 的整数,以降低模型量化误差。推理时,I-LIF 通过拓展虚拟时间步的方法,将整数值转化为二值脉冲序列,以保证网络的脉冲驱动特性,如图 2 所示。 ▲ 图2. I-LIF训练和推理原理(在训练过程中发放的整数值2,在推理过程中转化为两个1)
图 3 展示了一个更加细节的例子 (T=3,D=2)。在训练时,当膜电势为 1.9 时(如第一列),I-LIF 发放一个值为 2 的整数,并将膜电势减去相应量化值;当膜电势为 2.6 时(如第三列),由于其高于最大量化值,I-LIF 也只发放一个值为 2 的整数,而不会发放值为 3 的整数。在推理时,I-LIF 拓展虚拟时间步(图中红色虚线部分),将整数值转化为二值脉冲序列,保证脉冲驱动。
4.1 静态数据集
如图 4 所示,SpikeYOLO 在 COCO 数据集上达到了 66.2% 的 mAP@50 和 48.9% 的 mAP@50:95,分别比之前 SNN 领域的 SOTA 结果提升了 +15.0% 和 +18.7%,超越 DETR 等 ANN 模型,并且仅需要 84.2mJ 的能耗。此外,增大量化值 D 的效果远远优于增加之间步长 T,且能耗增幅更小。
如图 5 所示,SpikeYOLO 在神经形态数据集 Gen1 上同样取得了 SNN 领域的 SOTA 结果,map@50:95 超过 SNN 领域的 SOTA 结果 +9.4%。和同架构 ANN 网络相比,SpikeYOLO 的 mAP@50:95 提高了 +2.7%,并且能效提升 5.7×。 ▲ 图5. Gen1 神经形态数据集实验结果
4.3 消融实验
本文在 COCO 数据集上进行不同模块的消融实验,包括移除重参数化卷积、采用 SNN-Block-2 替换 SNN-Block-1,以及将 Anchor-free 检测头替换为 Anchor-based 检测头等。结果证明,SpikeYOLO 拥有最先进的性能。
本文在 Gen1 数据集上分别测试了不同时间步 T 和量化值 D 对精度和能耗的影响。实验表明。适当增加 T 或 D 都有助于提升模型性能。另外,当提升 D 时,模型的能耗反而降低,一个可能的原因是输入数据是稀疏的事件数据,包含的有效信息较少,此时采用更精细的膜电势量化方案可以避免网络发放冗余脉冲,从而降低模型的平均发放率。 综上所述,本文提出了目标检测框架 SpikeYOLO,以及一种整数训练脉冲推理的神经元 I-LIF,并在静态和神经形态目标检测数据集上均进行了验证。 全文到此结束,更多细节建议查看原文。
[1] Yao, M., Richter, O., Zhao, G., Qiao, N., Xing, Y., Wang, D., Hu, T., Fang, W., Demirci, T., De Marchi, M., Deng, L., Yan, T., Nielsen, C., Sheik, S., Wu, C., Tian, Y., Xu, B., Li, G.: Spike-based dynamic computing with asynchronous sensing computing neuromorphic chip. Nature Communications 15(1), 4464 (May 2024),https://doi.org/10.1038/s41467-024-47811-6 [2] Kim, S., Park, S., Na, B., Yoon, S.: Spiking-yolo: spiking neural network for energyefficient object detection. In: Proceedings of the AAAI Conference on Artificial Intelligence. vol. 34, pp. 11270–11277 (2020) [3] Su, Q., Chou, Y., Hu, Y., Li, J., Mei, S., Zhang, Z., Li, G.: Deep directly-trained spiking neural networks for object detection. In: Proceedings of the IEEE/CVF International Conference on Computer Vision. pp. 6555–6565 (2023) [4] Yao, M., Hu, J., Hu, T., Xu, Y., Zhou, Z., Tian, Y., XU, B., Li, G.: Spike-driven transformer v2: Meta spiking neural network architecture inspiring the design of next-generation neuromorphic chips. In: The Twelfth International Conference on Learning Representations (2024), https://openreview.net/forum?id=1SIBN5Xyw7 [5] https://github.com/ultralytics/ultralytics
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读 ,也可以是学术热点剖析 、科研心得 或竞赛经验讲解 等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品 ,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬 ,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱: [email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02 )快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」 也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」 订阅我们的专栏吧