没有合适的资源?快使用搜索试试~ 我知道了~
1SNN推理(IF神经元)ANN训练(withReLU激活)RMP-SNN:用于实现更深的高精度和低潜伏期尖峰神经网络的Bing Han,Gopalakrishnan Srinivasan和Kaushik Roy电气与计算机工程学院,普渡大学{han183,srinivg,kaushik}@ purdue.edu摘要尖峰神经网络(SNN)作为第三代人工神经网络,最近图像识别任务的最佳性能SNN是通过将训练好的由校正线性单元(ReLU)组成的Ana-log神经网络(ANN)转换为由具有“适当”激发阈值的积分和激发神经元组成的SNN来获得的与原始ANN提供的准确度相比,转换后的SNN通常会导致准确度损失,并且需要相当数量的推断时间步长来实现最佳准确度。我们发现转换后的SNN的性能下降源于使用我们提出了使用“软重置”尖峰神经元模型的ANN-SNN转换,该模型被称为残余膜电位(RMP)尖峰神经元,其在触发时刻保持高于阈值的“残余”膜电位。我们在具有挑战性的数据集上使用RMP神经元对VGG-16、ResNet-20和ResNet-34 SNN进行了近无损ANN-SNN转换,这些数据集 包 括 CIFAR- 10 ( 93.63% top-1 ) 、 CIFAR-100(70.93% top-1)和Ima-34 SNN。geNet(73.09% top-1准确度)。我们的研究结果还表明,RMP-SNN超过了转换后的SNN提供的最佳推理精度,其中1. 介绍深 度 神 经 网 络 , 在 本 文 中 称 为 模 拟 神 经 网 络(ANN),由多层互连神经元组成,在各种人工智能(AI)任务中取得了最先进的性能,包括图像定位和识别[18,31],视频分析[28]和自然语言处理[16]等任务。卓越的性能是通过通过适当阈值平衡图1.ANN-SNN转换方法的说明权衡计算效率。 例如,ResNet[11]在2015年赢得ImageNet大规模视觉识别挑战赛,由152个为了探索更功率高效的神经架构,最近的研究努力已经指向设计从使用尖峰进行计算和通信的这些具有增强生物保真度的新兴网络类别被称为尖峰神经网络(SNN)[22]。SNN的内在功率效率源于其基于稀疏尖峰的计算和通信能力,其可以被利用来在专用神经形态硬件中实现更高的计算效率[2,4,24]。考虑到人工神经网络在过去几年中在准确性方面取得的快速进步,SNN训练算法还不太成熟,并且是一个活跃的研究领域。SNN的训练算法可以分为基于尖峰定时依赖可塑性(STDP)的局部化学习规则、基于尖峰的误差反向传播和ANN-SNN转换方法。基于STDP的非监督[5,23,37,40]和半监督学习到目前为止,出租ms [17,20,25,39]仅限于浅层SNN(≤5层),其准确性远远低于人工神经网络在复杂数据集(如CIFAR-10 [9,38])上提供的准确性。为了更深入地扩展网络,基于尖峰的误差反向传播算法已经提出了SNN的监督训练[1,15,19,21,27,29,35,41]。随着时间的推移执行误差反向传播所产生的训练复杂性限制了它们对于超过9-11层的SNN的可扩展性[19]。135580.50.30.20.30.20.10.2VMVMVMVMVMVMVM实值输入实值产出输入尖峰输出尖峰13559ANN-SNN转换产生了性能最佳的SNN(通常由积分和激发(IF)神经元组成),这些神经元是从训练的非尖峰神经网络(由整流线性单元(ReLU)作为激活函数组成)转换而来的[3,6,7,30,34,42],如图所示。1.一、转换方案智能地为网络的不同层处的神经元分配这种转换方法充分利用了人工神经网络的然而,请注意,转换后的SNN不具有相应ANN的准确性,并且需要相当数量的时间步长(ImageNet>2000[34])才能实现最佳准确度(69.96% [34])。我们发现,转换后的网络的性能下降源于使用尖峰IF神经元,与一旦我们发现,忽略阈值以上的我们提出了使用“软重置”尖峰神经元(称为残余膜电位(RMP)尖峰神经元)的基于转换的训练RMP神经元在尖峰时刻保持我们使用RMP尖峰神经元实现了深度SNN架构,如VGG-16和残差网络(ResNet-20和ResNet-34),并在包括ImageNet在内的复杂数据集上展示了接近最先进精度的近无损转换。我们注意到,RMP神经元已用于实现从非尖峰ANN转换的深度SNN[32,33],尽管在SNN推理期间具有较高的转换损失。我们提出了适当的阈值初始化方案,以实现ReLU激活到RMP神经元尖峰速率的近乎无损的映射,从而产 生 SNN , 该 SNN 在 CIFAR-10 , CIFAR-100 和ImageNet数据集上提供了迄今为止最好的推理准确性。此外,我们证明了RMP-SNN提供COM的能力与使用“硬复位”神经元的转换SNN相比,使用最多少8倍的推理总体加标活性仅增加1-2%2. 相关工作ANN-SNN转换已被证明是构建深度SNN的有前途的方法,为复杂图像识别产生足够高的准确性[3,6,30,32,33,34,自然语言处理任务[7]。转换方案训练由ReLU非线性组成的ANN,使用具有添加约束的反向传播,例如去除偏置神经元和批量归一化层。将训练好的ANN映射到由IF神经元组成的SNNReLU-IF映射的一个值得注意的例外是Hunsberger等人的工作。[13]他在推理过程中使用了更合理的生物泄漏积分和激发(LIF)神经元,通过使用基于速率的软LIF非线性训练ANN。有效的ANN-SNN转换需要在网络的每一层仔细初始化阈值,以便尖峰速率与ReLU激活成比例在这方面,Deihl et al.[6]提出了基于模型和基于数据的阈值平衡方案。基于模型的方案仅使用ANN权重来估计阈值,而基于数据的方案同时使用训练数据和权重。继[6],Sengupta等人的工作[34]提出了一种基于数据的方案,该方案还使用SNN尖峰统计来实现大大改进的ANN-SNN转换,该转换已被证明可以很好地扩展到ImageNet等复杂数据集然而,由于使用了“硬重置”神经元,上述方法在推理期间固有地易受Rueckauer等人[33]试图通过使用“软复位”RMP神经元来减轻信息丢失。然而,他们报告说,与Sengupta等人的方法(1.13%)相比,VGG-16 ANN和SNN在ImageNet上的准确性损失显著较高(14.28%)。[34]使用“硬复位”神经元。我们认为,Rueckauer等人的高精度损失。[33]是具有偏置神经元和批量归一化层的ANN的无约束训练的结果,如[ 34 ]中所指出的。虽然去除约束提高了ANN的精度,但转换后的SNN遭受了大量的精度损失,从而隐藏了RMP神经元的潜在优势我们进行了约束ANN训练,并证明了近损失少的低延迟ANN-SNN转换与我们的工作的新颖性是ANN-SNN转换方法的建议,使用“软复位”RMP尖峰神经元,适当的逐层阈值初始化,和受约束的ANN训练(去除批量归一化层和偏置神经元)的组合,3. ANN-SNN转换ANN和SNN之间的根本区别是时间概念。在人工神经网络中,所有层中神经元的输入和输出都是实值,并且通过网络的单次前馈来执行推理。另一方面,尖峰神经元的输入和输出使用在特定时间段上的稀疏尖峰事件在时间上编码因此,SNN中的推断是在多个前馈通道或时间步长上执行的(也称为推断13560���≈���-������������������234���Σ���i. 阿吉什=inin=输出(第1第2(12布勒姆(一)���“hard加标后010���−1���−1(b)第(1)款1+11+1时间时间图2. ReLU-IF映射的图示。IF神经元阈值-Σ���i. 吉吉IF神经元在100个时间步长的加权输入和......012......N时间1切出1塞林old是使用基于模型的[6]或基于数据的方案[6,34]设置的,因此���in= ∑���i。阿吉什i,t=其输出速率与ReLU激活成正比。Σ���。 ���塞林=1 塞林(���≥)延迟),其中每个通道都需要基于稀疏尖峰的COM。我我速率=单位���……1分1秒������中文���(���简体)012......N时间1分之11分之11分之1假设 以最小的成本(c)第(1)款4 3 2(d)其他事项推理延迟是获得有利折衷的关键,精度和计算效率。拟议的转换方法大大推进了这方面的最新技术水平,详情见第5节。3.1. SNN的输入编码我们使用泊松率编码将输入图像像素映射到以与相应像素强度成比例的速率(随时间推移的尖峰数量)发射的尖峰序列,如[12]所示。首先将像素强度映射到相应输入神经元的瞬时尖峰发放概率。我们使用泊松过程来生成输入尖峰在随机的方式,如下所述。在SNN操作的每个时间步,我们生成一个0和1之间的均匀随机数,并将其与神经元放电概率进行比较如果随机数小于神经元放电概率,则产生尖峰。注意,馈送到ANN的输入图像通常被归一化为零均值和单位标准偏差,产生±1.对于SNN,我们基于在归一化强度的符号上。时间间隔(推理延迟)由所需的精度决定。3.2. 带硬复位的ReLU IF映射用于转换为SNN的ANN通常使用ReLU非线性进行训练[26],其描述如下:Y=max(0,X)(1)其 中 , RYY是 基 于 ReLU 的 人 工 神 经 元 的 输 出 ,X=iwi.xi+b是输入xi与权重wi和偏差b的加权和。对于ef,偏差通常设置为零有效的ANN-SNN转换[34]。ReLU输出随正输入线性变化 线性ReLU动态使用Integrate-and-Fire(IF)神经元粗略模拟,如图所示。二、IF神经元在特定时间段内接收尖峰序列,其速率对应于实值ReLU输入。 IF神经元将加权ReLUy=max(0,x)XyWIF尖峰神经元Vm(t+1)= Vm(t)+ λw.X(t)EXt=456489:WX456VM斜率=w斜率=f(w/vth)基于数据或基于模型的阈值平衡yEYt=489:…1.5倍1.2倍0的情况。3埃什13561图3.(a)(b)由于在尖峰时刻将膜电位(Vm)重置为零,IF神经元的放电率降低。(c)将IF神经元随时间接收的加权输入和的期望值映射到平均速率fin和幅度Vin的乘积。(d)IF神经元对于不同V_in的非线性输入-输出(f_in-f_out)响应。尖峰输入到其膜电位,其动力学描述为ΣVm(t)=Vm(t−1)+wi.Xi(t)(2)我其中,Vm(t)是在时间步长t处的膜电位,Wi是从ANN传递的权重,并且Xi是第i个输入神经元的尖峰序列。当IF神经元的膜电位超过触发阈值Vth(>0)时,IF神经元会产生尖峰,这是使用基于模型的[6]或基于数据的方案[6,34]估计的。在尖峰的瞬间,膜电位被忽略阈值以上的残余膜电位会影响输入和输出尖峰速率之间的预期线性关系,如以下示例所示。让我们假设一个IF神经元(如图所示)。3(a))接收1.5 V th,1.2 V th和0.3 V th在三个连续的时间步长的加权输入和,如图所示。3(b)款。在三个时间步长的总加权输入和为3Vth。IF神经元需要发射三次以保持输入和输出尖峰速率之间的精确实际上,它在三个时间步长内仅生成两个尖峰,这是由于忽略了在点火时刻高于阈值的残余电势,如图1B所示。3(b)款。我们现在正式定义投入产出关系的偏差“硬复位”神经元与实验所测线性神经元的关系。平均加权输入和E[iwi.xi(t)],135620.3千分之一1.5倍1.2倍≈(���=���������)0)���−1+1time1k+1Kk+1K24k+1k由IF神经元接收的信号可以被指定为finVin,其中���Σ���i.我=in���in=输出切出f in和V in分别是加权输入和的平均速率和幅度,如图所示。3(c)款。平均第1第2121=( >)���������≤������������ (���≥���)此外,输入振幅Vin可以指定为对于η∈R+的η Vth,而不失一般性。IF神经元的输出触发速率(随时间推移的输出尖峰数量)fout由下式描述:((1998年,布勒姆(一)���“soft加标后塞林0.75英寸0.50英寸0.25英寸<<中文( 简体)η中的Δf=Vin≥10���−1中国+1时间0.25度0.5千分之一0.75度埃什塞林Vth(b)第(1)款(c)第(1)款f输出=在<$N−1<$−1N<$N−10 ≤η1中的图4.(a)在<$η−1<$−10≤η1且N<$1(三)rons via weights(w). (b)通过保留放电时的剩余电位来说明RMP神经元的精确尖峰行为-其 中 , f_out 是 上 限 运 算 , f_in 是 下 限 运 算 ,f_out≤f_in≤1,N是干扰时间步的总数。当平均输入幅度Vin大于阈值Vth时,输出速率仅在η≥1时匹配输入速率。 在这种情况下,输入放大器tude足够高,以保证每次出现输出尖峰时都有输出尖峰另一方面,当0≤η1时,输出尖峰速率f_out近似为:<$n−1<$−1fin(对于足够大的N),如方程所述3. 天花板操作说明了非线性关系,输入和输出速率之间的关系,如图所示。3(d)和解释如下。考虑η∈[1,1),stants. (c)RMP神经元的线性输入-输出(f输入-f输出)响应不同的V。4. 残余膜电位SNN我们提出了残余膜电位(RMP)尖峰神经元(如图所4(a))以获得线性输入-输出特性并实现接近无损耗的ANN-SNN转换。RMP神经元通过执行“软重置”来最小化推理期间的信息损失,1:如果Vm(t)≥Vth:2:发射输出尖峰:Y(t)=1V∈[Vth,Vth)对任意正整数k。随着平均k+1k3:执行软复位:V m(t)=V m(t)−V th输入幅度Vin从Vth开始逐渐变化 到Vth,输出速率fout保持恒定在fin而不是链接-在尖峰的瞬间,膜电位(Vm)如图所示,早期增加到f。第3段(d)分段。例如,让我们假设η ∈ [1,1)和V in∈ [Vth,V th),而被减少了等于点火阈值(Vth)的量,而不是“Soft reset”effectively2 2f是统一的。如果每个时间步接收到V_th的V_in当Vin增加到每个时间步3Vth时,IF神经元仍然仅每隔一个时间步发射尖峰,而不是在4个时间步内发射3个尖峰降低的输出速率是通过执行“硬复位”至0而忽略点火时刻处的残余电势的直接结果图3(d)表明,对于η1,可以获得大致线性的投入产出关系,这需要平均值剩余电位高于阈值,如图所示第4(b)段。让我们假设RMP神经元在三个连续的时间步长上接收1.5Vth、1.2Vth和0.3Vth的加权输入和,总计为3Vth它通过保留放电瞬间的剩余电位产生预期的三个尖峰,如图所示第4(b)段。请注意,形式上,RMP神经元的输出放电率fout可以描述为:输入幅度远低于触发阈值“硬重置”IF神经元的能力转化的低输入活性Fout.=ηfinNNη≥0(四)SNN可以通过将逐层阈值设置得更高来实现,这以显著高的推理延迟为代价减少了ANN-SNN转换损失。另一方面,降低阈值以最小化推断延迟,增加逐层输入尖峰发放活性,导致η更接近于1。较高的η导致“硬复位”神经元在非线性状态下操作,导致SNN准确性的较大降级。使用“硬复位”神经元的ANN-SNN转换…布拉夫−113563V在η≥0和N<$1中的ηf其中,fin≤1,fout≤1,η=Vin是比率be-日在加权输入和Vin的平均幅度与触发阈值Vth,N是推理延迟。输出速率的变化与输入速率成正比,在一个很宽的η范围内,变化系数为η,如图所示。4(c)由于在点火瞬间将剩余电位转移到下一个时间步长。RMP神经元在很宽的η范围内表现出的线性输入输出特性13564在MMDT在inin inin使其能够为大范围的触发阈值提供接近无损的ANN-SNN映射,如将在下面的第4.1节中讨论的。4.1. RMP SNNANN-SNN转换需要为尖峰神经元分配RMP神经元的扩展线性输入输出关系(见图1)。4(c))为神经元提供了百分百百分之九十百分之八十百分之七十百分之六十百分之五十百分之四十百分之三十百分之二十百分之十0%的百分比准确性、延迟和稀疏性与阈值缩放因子vthxa(0a1)基于速率编码Cifar-10数据集的SpikingResNet-20推断87.60%89.37% 百分之九十点九三 百分之九十点八五91.18% 91.25%91.36%32 64 128 256 512768102415362048推断时间步长百分之二十百分之十八百分之十六百分之十四百分之十二百分之十百分之八占6%百分之四百分之二0%的百分比点火阈值与“硬复位”IFneu-ron相比(参见图3(d))。这就引出了以下几个需要回答的问题,以确保RMP神经元的适当阈值平衡。1. 对于任何给定的f 在和V 在,什么是所需的operat-ING范围的RMP神经元点火阈值,以确保损失少ANN-SNN转换?2. 如何确定阈值的绝对值,使RMP神经元在期望的范围内工作?我们确定的上限和下限的RMP神经元点火阈值的基础上所需的操作范围的输出率f输出。图 4(c)表明RMP neu- ron允许f out高于输入速率f in,同时仍表现出线性输入-输出动态。期望的f_out的范围是[f_in,1)。这是因为f_out≥f_in确保了在连续的深循环层上有足够的尖峰活动。SNN,导致足够高的准确性,使用较少的推断-时间步长。满足fout≥fin要求η=Vin≥1图5.在CIFAR-10数据集上,由RMP神经元组成的ResNet-20SNN在不同阈值缩放因子α下的推理准确度和尖峰活动与延迟公式6清楚地表明,要使fout小于1,Vth必须大于finVin。因此,对于给定的fin和Vin,Vth的期望操作范围由下式指定:fin Vin≤Vth≤Vin(7)它回答了本节开头提出的第一个问题如前所述,在(7)中指定的第V个范围确保fin≤fout<1,这可以导致最佳的准确性-延迟权衡。重要的是要注意,“硬复位”IF神经元的fout输入速率f(如图所示)3(d))由于忽略了剩余潜力。因此,与RMP神经元相比,我们现在讨论第二个问题,关于前-或VthVth≤V in,如图中突出显示。第4(c)段。 另一方面,在一项研究中,ciseVth估计方法。在我们的分析中,f_out_V_in)导致SNN尖峰活动随着网络深度逐渐减少,从而增加推理延迟。接下来,确定V_th的下限以确保输出速率f_out小于1。这是因为,fout≥1在每个时间步都会产生一个尖峰,而与接收到的输入无关。过度的加标活动可能导致准确度大幅下降。需的阈值为了保证f_
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功