基于STDP非监督学习算法的硬件友好型脉冲神经网络模型的制作方法

文档序号:11458954阅读:2272来源:国知局
基于STDP非监督学习算法的硬件友好型脉冲神经网络模型的制造方法与工艺

本发明属于脉冲神经网络技术,具体涉及一种基于stdp非监督学习算法的硬件友好型脉冲神经网络模型。



背景技术:

在生物大脑中,数以亿计的神经元通过突触相互连接进行信息传递,从而操控个体进行各种复杂而又缜密的生物活动,这种神经系统一直被人们研究模仿,人工神经网络也一直在世界范围内被人关注。近些年来,脉冲神经网络作为第三代人工神经网络,由于其在模式识别、图像处理、计算机视觉等方面展现出来的惊人的生物相似性和强大的计算能力,越来越被人们广泛研究。目前为止,许多学者集中研究了各种各样的脉冲神经网络模型以及学习机制,这些计算模型也在图像分类、决策及预测方面取得不错的效果。但是,目前的工作大都集中在计算机软件平台,一方面由于前人的工作总结使得软件平台关于脉冲神经网络的计算模型比较成熟,另一方面软件平台从学习算法到整个神经网络系统的开发难度与硬件平台相比简单不少,但是软件平台串行执行的特点从根本上不符合生物大脑神经元并行处理的特点,而且模拟时间长,拓展性差等问题也比较突出。

人们普遍认为神经元以脉冲序列形式进行信息传播,stdp学习机制由hebbian规则的发展而来,被认为是大脑学习与信息存储的重要机制,属于一种非监督的学习机制。stdp通过调节前后突触的脉冲时间差来实现网络平衡,这样极大的保证了神经网络的稳定性;不依赖梯度下降算法,这样在硬件平台的实现操作上又降低了难度。

现场可编程门阵列(fpga)是在专用集成电路(asic)的基础上发展出来的一种半定制逻辑器件,它具有集成度高,体积小,高速并行计算,可重复编程,低功耗等特点,因此被广泛应用于数字电路设计中。近年来,由于其并行处理的特点符合神经系统的计算机制,加上脉冲序列和数字系统的契合,使得fpga也越来越受到脉冲神经网络领域的青睐。



技术实现要素:

为了解决现有技术的不足之处和局限性,本发明提供了一种基于stdp非监督学习算法的硬件友好型脉冲神经网络模型。

本发明所采用的技术方案是:一种基于stdp非监督学习算法的硬件友好型脉冲神经网络模型,其特征在于:所述脉冲神经网络模型是一种多突触延时的前向反馈神经网络模型,每层神经元分别通过若干条突触与其它层神经元互连,而每层内部神经元相互独立。

本发明实现了硬件平台关于脉冲神经网络模型的设计,采用了一种基于神经元前后脉冲时间差的stdp非监督学习算法对网络进行学习训练,使网络在精准时间开火。一方面,stdp非监督学习算法使得网络的简洁性和稳定性有了极大提高,对于生物相似性的模仿有了进一步的发展;另一方面,该算法十分适合于fpga平台的开发设计,对比软件平台的各种脉冲神经网络模型,其优势在于,由于fpga并行计算的特点十分契合脉冲神经网络并行联接结构,在保证高速计算的情况下具有很高的可复制性与拓展性,对于超大规模的脉冲神经网络的研究具有非凡意义。

附图说明

图1本发明实施例的脉冲神经网络结构示意图;

图2发明实施例的脉冲编码及stdp非监督学习算法特性曲线示意图;

图3发明实施例的stdp非监督学习算法训练流程图;

图4发明实施例的基于stdp非监督学习算法的脉冲神经网络硬件电路图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

参见图1,本发明提供的一种基于stdp非监督学习算法的硬件友好型脉冲神经网络模型,是一种多突触延时的前向反馈神经网络,每层神经元分别通过若干条突触与其它层神经元互连,而每层内部神经元相互独立。神经元采用的是脉冲响应模型srm,外界输入信号将引起细胞膜电位的变化,当膜电势超过阈值,神经元将会发放脉冲,然后进入耐火期,并且不对任何外界刺激做出反应;相反则不会发放脉冲。

该脉冲神经网络模型是基于数字硬件电路平台进行设计,采用硬件描述语言进行编写的模型。

参见图2,输入到脉冲神经网络的图像信息,每个像素点都按照规律的时钟频率进行脉冲编码,每个脉冲信号带有时间信息编码,每层神经元都会分别接收和发放带有精准时间信息的脉冲信号,因此,前后脉冲时间差是该脉冲神经网络的主要特征,也是stdp非监督学习算法的重要参数。

参见图3,利用stdp非监督学习算法对网络进行训练。stdp非监督学习算法不依赖突触连接的实时误差数据和教师信号,仅仅根据前后脉冲发放时间差即可实现训练过程,避免了梯度下降算法的复杂性无疑为硬件设计降低了难度。所有输出神经元能够在准确的时间开火,即完成整个脉冲神经网络的训练过程,产生锁定信号。整个网络训练过程属于无监督的学习行为。

输入层神经元只参与图像信息编码,向下一层神经元发放脉冲,并不参与计算;其它层神经元在接收到输入信号,细胞膜电位将会发生变化,其大小由后突触兴奋强度和权值大小共同决定,srm神经元数学模型为:

其中,uj(t)表示后神经元j的细胞膜电势,n表示连接到后神经元j的输入脉冲数,wij是前神经元i和后神经元j的连接突触,fpsp(t)是输入脉冲所引起的后突触电位兴奋强度,分别为前后神经元发放的脉冲序列。当后神经元j发放脉冲之后将进入耐火期,膜电势由η(t)表示。

参见图4,硬件平台的神经元结构主要由加法器、乘法器、memory、fifo以及寄存器组等组成,数据格式为8位无符号整数;stdp非监督学习算法,包括以下步骤:

步骤1:输入图像信息进行脉冲编码。对于二值图像黑色像素点,输入层神经元根据时钟频率产生有规律的脉冲序列,二白色像素点则不会引起输入层神经元电位状态变化。经过编码产生的脉冲信号都会带有时间信息,通过突触进入到隐藏层。

步骤2:主要进行突触权值的读取、更新及存储,包括读\写使能信号端口、数据输入\输出端口、时钟信号及复位信号,突触权值存储在fifo。当神经元没有开火,读使能置位,突触权值大小不断被读取出来,流向神经元中;当神经元开火,网络进入学习模式,写使能置位,更新后的突触权值被写入fifo。突触权值的更新是整个神经网络训练的目的。

步骤3:神经元模型采用了脉冲响应模型srm,包括脉冲输入\输出端口、突触权值输入端口、配置信息输入端口、乘法器、加法器、比较器、时钟信号及复位信号。输入脉冲引起的后突触电位兴奋强度存储在一块memory中,输入脉冲所编码的时间信息作为读取地址。根据神经元数学模型,突触权值和后突触电位兴奋将会送入到乘法器,然后经过加法器、移位寄存器计算出细胞膜电势与阈值θ比较。一旦超过了阈值θ,神经元会发放脉冲,进入到耐火期。

步骤4:stdp非监督学习算法对本脉冲神经网络训练的主要作用即更新突触权值;在神经元耐火期,网络将进行基于stdp非监督学习算法的学习以更新突触权值,包括突触权值输入\输出端口、使能信号、时间信息输入端口、时钟信号及复位信号。更新的突触权值δw预先存储在一块memory中,前后脉冲时间δt差作为地址读取数据,然后与原突触权值相加即完成了一次网络训练。根据前后脉冲时间差的特点对突触权值训练,输出数据流向突触,是本发明的关键技术。

步骤5:输出层神经元的分类结果未达到预期,重复步骤1-步骤4,直至其能够实现精时间开火,网络训练结束。

本发明完全依赖数字硬件电路平台进行脉冲神经网络的模型设计,并且创新性的将stdp非监督学习算法用于该脉冲神经网络模型的学习训练中,能够实现特定功能。该硬件平台脉冲神经网络模型具有较高的稳定性,能够在占用较少硬件资源的条件下拥有较快的速度,加上网络结构并行连接的特点,其拓展性也大大提高,对于实现超大规模的脉冲神经网络也提供了新的思路。

本发明利用stdp非监督学习算法很好地实现了脉冲神经网络在数字硬件电路平台的设计,具有较高拓展性和较快的处理速度,同时也为脉冲神经网络与数字硬件电路平台的结合提供了新的思路与尝试。

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1