基于动态阈值神经元的深度脉冲神经网络的图像识别方法技术

技术编号:33908149 阅读:18 留言:0更新日期:2022-06-25 19:01
本发明专利技术公开的基于动态阈值神经元的深度脉冲神经网络的图像识别方法,属于类脑计算、深度学习领域。针对现有DNN

【技术实现步骤摘要】
基于动态阈值神经元的深度脉冲神经网络的图像识别方法


[0001]本专利技术涉及一种基于动态阈值神经元模型的深度脉冲神经网络的图像识别方法,属于类脑计算、深度学习领域。

技术介绍

[0002]基于高度简化的大脑动力学模型的深度神经网络(Deep Neural Networks,DNN),作为强大的计算工具,在图像识别、目标识别与跟踪、语音识别、机器翻译等诸多人工智能领域中已取得举世瞩目的成果。但是,超高的计算需求及高功耗等问题,极大的限制了DNN的应用范围。
[0003]脉冲神经网络(Spiking Neural Networks,SNN)与DNN有本质上的不同。SNN以事件驱动的方式工作,神经元之间通过离散的脉冲而非连续值传递信息,具有高度仿生性,能够处理时空模式的动态数据,在实时性和能效要求较高的应用场景具有极大的潜能和应用前景。然而,现有的SNN学习算法训练效率较低,效果不如深度学习模型,导致脉冲神经网络的实用性不高。
[0004]目前,深度学习模型的脉冲形式(DNN

to

SNN)转化技术可避免直接训练脉冲网络困难的问题,同时结合了深度学习模型易训练、高性能的优势与脉冲模型高实时性、高能效的优势,扩展了这两种学习模型的应用范围。虽然基于频率编码的DNN

to

SNN转化技术达到能与DNN相媲美的表现,但是对于深度SNN来说,依然有一定的转换损失,而且存在脉冲后向传播速度慢、脉冲发放率低的问题。

技术实现思路
<br/>[0005]针对现有DNN

to

SNN转换技术实现深度SNN时,脉冲传输速率低,脉冲发放率低,转换精度存在损失的问题,本专利技术目的是提供一种基于动态阈值神经元的深度脉冲神经网络的图像识别方法,能够加快脉冲传输速率,提高脉冲发放率,降低转换损失。
[0006]本专利技术的目的是通过下述技术方案实现的:
[0007]本专利技术公开的基于动态阈值神经元的深度脉冲神经网络的图像识别方法,首先训练DNN,得到权重并保存;然后,基于DNN

to

SNN转换方法,将DNN中的激活函数ReLU转换为SNN中具有动态阈值的IF神经元,将DNN权重进行归一化,映射到SNN;最后,仿真运行SNN,该神经元模型在每个时间步设定每个神经元的阈值,神经元发放脉冲不再需要累积达到固定的阈值,高层神经元能够更早地发放脉冲,因此能够加快脉冲传输速率,提高脉冲发放率,同时降低转换损失。
[0008]本专利技术公开的基于动态阈值神经元的深度脉冲神经网络的图像识别方法,包括如下步骤:
[0009]步骤一:训练DNN,得到权重并保存;
[0010]使用反向传播算法训练DNN,使之具有较高的精度;
[0011]步骤二:基于DNN

to

SNN转换方法,将DNN中的激活函数ReLU转换为SNN中具有动
态阈值的IF神经元,将DNN权重进行归一化,映射到SNN,即建立SNN。
[0012]使用DNN

to

SNN转换方法,将DNN中的激活函数ReLU函数等效为SNN中的具有动态阈值的IF神经元,从而将DNN转换成类似结构的SNN,使用基于数据的归一化方法对DNN权重值进行归一化,将归一化的权重值映射到SNN;
[0013]具体转换过程如下:
[0014]DNN的ReLU单元和SNN的神经元是一一对应的,对于L层网络,W
l
(l∈{1,...,L})表示l

1层与l层单元的连接权重矩阵,b
l
为对应的偏置项,每层中的单元数是M l
。第l层神经元i的ReLU激活表达式如下:
[0015][0016]从a0=x开始,其中x为输入,归一化输入使每个x
i
∈[0,1]。与之对应的IF脉冲神经元,其膜电位状态方程可以表示为:
[0017][0018]W
ij
是第l层神经元i第j个突触的权重,δ(t)为狄拉克函数,包含第j个突触前神经元的脉冲发射时间。IF神经元模型的连续时间表示形式被离散化为1ms的时间步长,神经元阈值初始化为V0。使用式(3)的基于数据的归一化方法对将权重W
l
进行归一化,将归一化的权重值映射到SNN。
[0019][0020]其中,λ
l
是l层神经元的最大激活值。
[0021]步骤三:仿真运行SNN,该神经元模型在每个时间步设定每个神经元的阈值,神经元发放脉冲不再需要累积达到固定的阈值,高层神经元能够更早地发放脉冲,因此能够加快脉冲传输速率,提高脉冲发放率,同时降低转换损失。
[0022]神经元膜电位变化过程如下:
[0023]膜电位V
il
(t)在每个时间步对输入电流累积:
[0024][0025]是阶跃函数,表示在t时刻神经元出现脉冲:
[0026][0027]其中,是神经元i在t时刻的阈值,阈值动力学公式如下:
[0028][0029]α为阈值变化因子,表示膜电位去极化速率快慢,α∈[0,1],V0为神经元初始阈值。
[0030]V
il
(t)是第l层神经元i的t时刻的膜电位,脉冲神经元累积输入直到膜电位V
il
(t)超过阈值此时产生脉冲,神经元膜电位随即被复位:
[0031][0032]其中,V
thr
一般设为1。
[0033]有益效果:
[0034]1、本专利技术公开的基于动态阈值神经元的深度脉冲神经网络的图像识别方法,采用动态阈值IF神经元模型,相比传统的固定阈值IF模型,脉冲后向传播速率更快,脉冲发放率更高,高层神经元发放脉冲更早,信息传输更快,在图像分类任务中能够提高SNN的精度。
附图说明
[0035]图1本专利技术所公布的动态阈值神经元模型示意图;
[0036]图2本专利技术所公布的基于动态阈值神经元的深度脉冲神经网络的图像识别方法的流程图;
[0037]图3传统IF神经元模型在CIFAR

10数据集resnet18网络结构下的精度

延时图;
[0038]图4本专利技术在CIFAR

10数据集resnet18网络结构下的精度

延时图。
具体实施方式
[0039]下面将结合附图和实施例对本专利技术加以详细说明。同时也叙述了本专利技术技术方案解决的技术问题及有益效果,需要指出的是,所描述的实施例仅旨在便于对本专利技术的理解,而对其不起任何限定作用。
[0040]一种动态阈值神经元模型,如附图1所示,所述神经元模型在每个时刻整合输入的脉冲,并根据神经元膜电位相比上一时刻的变化量设定该时刻的阈值,该变化量等于该时刻本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于动态阈值神经元的深度脉冲神经网络的图像识别方法,其特征在于,包括如下步骤:步骤一:首先训练DNN,得到权重并保存;步骤二:基于DNN

to

SNN转换方法,将DNN中的激活函数ReLU转换为SNN中具有动态阈值的IF神经元,将DNN权重进行归一化,映射到SNN,即建立SNN;步骤三:仿真运行SNN,该神经元模型在每个时间步设定每个神经元的阈值,神经元发放脉冲不再需要累积达到固定的阈值,高层神经元能够更早地发放脉冲,因此能够提高脉冲发放率,加快脉冲传输速率,同时降低转换损失。2.如权利要求1所述的基于动态阈值神经元的深度脉冲神经网络的图像识别方法,其特征在于,步骤二的实现方法为:使用DNN

to

SNN转换方法,将DNN中的激活函数ReLU函数等效为SNN中的具有动态阈值的IF神经元,从而将DNN转换成类似结构的SNN,使用基于数据的归一化方法对DNN权重值进行归一化,将归一化的权重值映射到SNN;具体转换过程如下:DNN的ReLU单元和SNN神经元是一一对应的,对于L层网络,W
l
(l∈{1,...,L})表示l

1层与l层单元的连接权重矩阵,b
l
为对应的偏置项,每层中的单元数是M
l
...

【专利技术属性】
技术研发人员:宋勇武喜艳赵宇飞白亚烁栗心怡
申请(专利权)人:北京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1