一种增强脉冲神经网络表达能力的方法

文档序号:35122725发布日期:2023-08-14 16:25阅读:81来源:国知局
一种增强脉冲神经网络表达能力的方法

本发明涉及脉冲神经网络,特别涉及一种增强脉冲神经网络表达能力的方法。


背景技术:

1、脉冲神经网络(snn)作为第三代神经网络,具有异步计算、低功耗和时域动态性等特点,特别适用于当前一些有功耗限制的移动端设备。相较于传统的人工神经网络(ann),snn更符合生物神经网络的规则,更接近人脑信息处理结构与机制,因而具有更好的生物合理性以及更加丰富的时空信息处理能力。snn利用的是二值脉冲进行信息传输,所以在计算突触电流与突触权重的乘积时,只需要使用加法,避免了乘法的巨大能耗开销,同时也能降低推理阶段的时间消耗。

2、然而,也正是由于snn传输的信息是二值的,所以导致其表达能力受到了较大的限制。虽然可以通过扩展时域维度来补充脉冲神经网络受损的表达能力,使其在仿真时间步数足够时能够有较好的性能,但是大规模snn的性能仍然与传统人工神经网络具有一定的差距。

3、基于此,一些技术手段从snn的训练算法入手,通过改变损失函数或者是调节膜电位分布的方式来提升snn的分类精度。但是脉冲神经网络的时域特性目前还尚待挖掘,特别是脉冲神经网络不同时刻之间脉冲神经网络内部的信息交流。目前的技术手段仅仅是在神经元模型中通过将前一时刻的膜电位信息累积到下一个时刻的形式传递时序信息,这种形式受限于其局部性,无法在全局的视角上充分利用snn的时域特性,因而仍然未能很好地提升snn的表达能力。


技术实现思路

1、针对上述现有技术的不足,本发明提供了一种增强脉冲神经网络表达能力的方法。

2、为实现上述目的,本发明采用的技术方案如下:

3、一种增强脉冲神经网络表达能力的方法,其是在脉冲神经网络中添加若干全局时域反向连接,用于在时域上拓展脉冲神经网络的拓扑结构;同时采用基于分数选择初始化的搜索框架,寻找脉冲神经网络空间中的最优全局时域反向连接;所述全局时域反向连接的表达式为:

4、i(i)(t)=w(i)s(i-1)(t)+w(*)γ(s(j)(t-1))#

5、其中,w(i)表示脉冲神经网络中第(i-1)层到第i层的前向连接权重,w(*)表示全局时域反向连接权重,s(i-1)(t)表示t时刻第(i-1)层神经元的输出脉冲,γ(·)表示最邻近插值操作;

6、所述搜索框架中的输入包括:训练好的超网络f,验证集dval,以及用于计算n-score的数据集dn和用于计算e-score的数据集de;参数包括:算法迭代周期i、突变概率α、交叉概率β、因突变产生的最大网络架构数目pmu、因交叉产生的最大网络架构数目pcr、初始化种群大小pinit、top-k的种群ptop、迭代种群大小ptemp;输出包括:最好的全局时域反向连接组合。

7、进一步地,所述搜索框中,i=20,α=0.2,β=0.5,pmu=10,pcr=10,pinit=2000,top-k的种群大小k=10,ptemp=20。

8、具体地,寻找脉冲神经网络空间中的最优全局时域反向连接的过程如下:

9、(1)从搜索空间中随机选取2000个网络架构作为pinit;

10、(2)在pinit中通过数据集dn和de分别计算出每个网络架构的n-score和e-score,根据分数情况从大到小排序,分别选出top-10网络结构,共同组成进化算法的初始种群ptemp;

11、(3)进入迭代过程,每次迭代如下:

12、(301)根据训练好的超网络f和验证集dval,测试出ptemp中网络架构在验证集上分类精度;

13、(302)比较ptemp种群,然后更新ptop;

14、(303)通过突变和交叉生成新的ptemp;

15、(4)选出ptop中的前五,然后将这些全局时域反向连接组合分别接入标准脉冲神经网络中,从头开始训练,根据在测试集上的结果选出最好的全局时域反向连接组合。

16、进一步地,所述步骤(303)中,若生成的ptemp数量不够,则用随机采样的方法补全数量。

17、具体地,所述脉冲神经网络采用lif模型,其中的损失函数采用时间高效训练损失函数。

18、再进一步地,所述脉冲神经网络中采用如下三角形的代理梯度函数:

19、

20、其中,b是超参数,决定了三角形的尖锐程度;v(t)是神经元膜电位;vth是膜电位阈值,大小为1。

21、与现有技术相比,本发明具有以下有益效果:

22、(1)本发明通过对标准的脉冲神经网络添加若干全局时域反向连接,添加的反向路径会将后续层的某一个时刻的信息输入到下一个时刻前面层,在全局层面上扩展snn的时域特性,如此便能对模型在分类任务上的精度有很大的提升,即全局时域反向连接的加入使得脉冲神经网络对其时域信息的利用率增加,从而提升了snn模型的表达能力。

23、并且,本发明添加的全局时域反向连接对脉冲神经网络的结构改变不大,硬件上实现容易;同时,本发明没有增加任何浮点数运算,在推理阶段几乎没有额外的时间和显存的开销,很好地实现了技术、效率以及成本之间的相对平衡。

24、(2)以训练好的超网络为依据,根据验证集上的精度来预测各个子网络的性能,结合进化算法不断进行迭代以找到更好的网络架构是神经架构搜索领域常用的方法。但是这种方法常常由于没有很好的初始化种群而导致需要迭代大量的周期,时间开销很大。对此,本发明设计了一个高效的反向连接架构搜索框架,这个搜索框架根据snn全局时域连接的概念定义了全新的纯拓扑搜索空间,可以对脉冲神经网络全局时域反向连接的搜索迅速收敛,快速找到最优全局时域反向连接,从而有效缩短搜索时间,节约了开销。

25、(3)针对脉冲神经网络模型的训练,本发明采用了一个三角形的代理梯度函数来近似模型中的阶跃函数的梯度,如此一来,可以在网络的最后一层直接统计i(t)的输出结果均值,然后将其作为最终的分类目标,并特别设置o(t)来代表最后一层在t时刻的输出,从而为snn的训练提供非常好的便利。

26、(4)相比于目前最好的脉冲神经网络所报告的性能,本发明通过添加全局时域反向连接,并结合基于分数选择初始化的搜索框架,不仅时间开销小、寻找最优全局时域反向连接的效率高,而且实验表明,在具有挑战性的数据集tiny-imagenet上,本发明取得了约8.83%的性能提升(与现有技术相比较)。



技术特征:

1.一种增强脉冲神经网络表达能力的方法,其特征在于,在脉冲神经网络中添加若干全局时域反向连接,用于在时域上拓展脉冲神经网络的拓扑结构;同时采用基于分数选择初始化的搜索框架,用于寻找脉冲神经网络空间中的最优全局时域反向连接;所述全局时域反向连接的表达式为:

2.根据权利要求1所述的一种增强脉冲神经网络表达能力的方法,其特征在于,所述搜索框中,i=20,α=0.2,β=0.5,pmu=10,pcr=10,pinit=2000,top-k的种群大小k=10,ptemp=20。

3.根据权利要求2所述的一种增强脉冲神经网络表达能力的方法,其特征在于,寻找脉冲神经网络空间中的最优全局时域反向连接的过程如下:

4.根据权利要求3所述的一种增强脉冲神经网络表达能力的方法,其特征在于,所述步骤(303)中,若生成的ptemp数量不够,则用随机采样的方法补全数量。

5.根据权利要求3或4所述的一种增强脉冲神经网络表达能力的方法,其特征在于,所述脉冲神经网络采用lif模型,其中的损失函数采用时间高效训练损失函数。

6.根据权利要求5所述的一种增强脉冲神经网络表达能力的方法,其特征在于,所述脉冲神经网络中采用如下三角形的代理梯度函数:


技术总结
本发明公开了一种增强脉冲神经网络表达能力的方法,其是在脉冲神经网络中添加若干全局时域反向连接,用于在时域上拓展脉冲神经网络的拓扑结构;同时采用基于分数选择初始化的搜索框架,用于寻找脉冲神经网络空间中的最优全局时域反向连接。本发明通过对标准的脉冲神经网络添加若干全局时域反向连接,就能对模型在分类任务上的精度有很大的提升,提升了模型的表达能力;并且本发明通过设计基于分数选择初始化的搜索框架,还降低了搜索算法的时间开销。因此,本发明从全局角度上很好地提升了脉冲神经网络的性能。

技术研发人员:顾实,邓师旷,李巍
受保护的技术使用者:电子科技大学
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1