关键词:
脉冲神经网络
目标检测
ANN-SNN学习算法
双阈值IF神经元
摘要:
近年来,人工神经网络(ANN)由于其出色的性能被广泛应用于各个领域,极大地推动了人工智能的发展。但随着模型越来越复杂,网络中参数急剧增加,导致计算负担随之加大。特别是在推理阶段,对GPU的算力需求不断提升,使得部署成本直线上升。脉冲神经网络(SNN)在解决这一难题中表现出极大的潜力。相比于传统的人工神经网络,脉冲神经网络采用离散的脉冲信号代替连续的模拟信号进行信息传递和处理,显著降低了计算复杂度,实现了高效的事件驱动计算模式。然而,目前对脉冲神经网络的研究主要局限于简单的分类任务,在更为复杂的目标检测任务中仍处于初步探索阶段,检测性能和所需时间步长均有待改进。针对这一问题,本文的主要工作如下:(1)搭建了基于YOLOv4架构的脉冲神经网络目标检测模型,并提出了一种细粒度神经元整数阈值设定的方法,以提高模型检测性能并减少所需时间步长。首先,选用ANN-SNN学习算法对脉冲神经网络进行间接训练,并对其可行性进行理论证明。基于这种学习方式,使用人工神经网络中YOLOv4作为基础模型,并对模型中激活函数、SPP结构、BN层进行修改以满足脉冲神经网络特性,完成脉冲神经网络目标检测模型的搭建。接着,使用细粒度神经元整数阈值设定让模型中每个神经元的阈值相互独立并避免了异常激活值的干扰,减少了神经元欠激活所带来的影响。在VOC数据集下进行对比实验,实验结果表明,这种神经元阈值设定方法能够使模型在较短时间步长下仍有较好的检测性能。(2)在前述模型的基础上,提出了一种基于双阈值IF神经元的脉冲神经网络目标检测模型,进一步提升了模型检测性能。双阈值IF神经元可以和YOLOv4中Leak-Re LU激活函数直接转换,避免了更换该激活函数所带来的性能损失。同时提出了一种适用于双阈值IF神经元的图像编码方式,相比于传统的泊松编码能够有效减少因编码而产生的误差。此外,基于双阈值IF神经元进行了转换误差分析,并通过阈值微调减小量化误差,进一步减小所需时间步长。通过对比实验分别验证了这一系列改进措施的有效性。基于VOC数据集下的实验结果表明,最终搭建的脉冲神经网络目标检测模型在256个时间步长下的m AP达到76.81,当时间步长增加到512时达到78.03,转换误差小于0.5。综上所述,本文搭建了基于YOLOv4架构的脉冲神经网络目标检测模型,对比现有研究,检测性能得到较大提升且所需时间步长显著降低。有望在边缘设备上实现高效、低功耗的目标检测,同时也为脉冲神经网络应用于更复杂的计算机视觉任务提供了一定的借鉴。