Nothing Special   »   [go: up one dir, main page]

CN108304913A - 一种利用脉冲神经元阵列来实现卷积功能的方法 - Google Patents

一种利用脉冲神经元阵列来实现卷积功能的方法 Download PDF

Info

Publication number
CN108304913A
CN108304913A CN201711488549.XA CN201711488549A CN108304913A CN 108304913 A CN108304913 A CN 108304913A CN 201711488549 A CN201711488549 A CN 201711488549A CN 108304913 A CN108304913 A CN 108304913A
Authority
CN
China
Prior art keywords
convolution
pulse
picture
function
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711488549.XA
Other languages
English (en)
Inventor
杨旭
朱奕檬
刘志林
邓松高筠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201711488549.XA priority Critical patent/CN108304913A/zh
Publication of CN108304913A publication Critical patent/CN108304913A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Complex Calculations (AREA)
  • Image Analysis (AREA)

Abstract

一种利用脉冲神经元阵列来实现卷积功能的方法,步骤如下:输入图片,并对图片进行预处理;根据实际情况设计卷积核;利用设计的卷积核,在图像上做卷积。本发明根据脉冲神经网络特征来设计具有卷积功能的结构,由脉冲神经元组成的脉冲阵列来实现卷积功能。与现有的根据传统神经网络设计的卷积核来实现卷积相比,基于脉冲神经网络的卷积会更接近地模拟生物神经元,计算功耗也会大大降低。

Description

一种利用脉冲神经元阵列来实现卷积功能的方法
技术领域
本发明属于计算科学、人工智能技术领域,特别涉及一种利用脉冲神经元阵列来实现卷积功能的方法。
背景技术
卷积神经网络独特的网络结构可以有效地降低反馈神经网络的复杂性。卷积在数据处理中用于平滑,对信号进行滤波、降噪,并通过设计不同卷积核来进行特征提取,进而在图像上进行卷积。
由于目前较多的一般是为传统神经网络而设计的卷积核,而动物的神经网络大多为脉冲神经网络,常见的设计的卷积核与之不匹配,相比之下,脉冲神经网络比传统的神经网络更接近地模仿生物神经元。脉冲神经网络诞生于反向传播算法,它还未能通过传统神经网络处理过的现实数据广泛试验。目前已有不少论文对脉冲神经网络和传统神经网络性能进行了比对,有的已表明脉冲神经网络适用于更复杂的非线性数据集。基于非脉冲神经网络目前的通用性大于脉冲神经网络,现在已出现了不少基于脉冲神经网络的各项研究。在此基础上,将脉冲神经网络通用地用于各种数据不会太久。
目前也有一些工作是在把例如CNN、DBN等传统的人工神经网络转化为SNN的工作。但是脉冲神经网络暂时并没有找到一个完美的训练算法,尤其是需要训练深层网络的时候。而传统人工神经网络借助统计与优化等数学工具得到充分发展,训练得到的效果目前比脉冲神经网络要更好。因此该项提议也仅仅是针对脉冲神经网络作卷积提出的改进。总的来说,脉冲神经网络有更强的生物学基础,潜在的能力更强大,但尚待开发;而传统人工神经网络充分利用统计学与优化等数学工具,现在取得的效果更好。
如图3所示为非脉冲神经元中的神经元大致计算模型。与之相比,在脉冲神经网络中,神经元传递的是一个个脉冲。由于每个神经元有一个膜电位(membrane voltage),当一个神经元接收输入脉冲时,会导致其膜电位发生变化,在达到一个阈值时,则会发送一个脉冲,这个脉冲再向后传递。因此我们可以将其定义为,脉冲神经网络传递的是一个个脉冲,它们组成了一个脉冲序列,脉冲序列中蕴含了时间信息(temporal information),至于单个脉冲之间的时间间隔是不一定的,这是传统的人工神经网络所不能表达的。除此之外,脉冲神经网络中的每个神经元只有接收到一个脉冲时才需要进行计算,功耗更低,计算更快;而传统人工神经网络需要一层层的计算,计算量相比之下要大很多。此外,传统的神经网络和脉冲神经网络都是基于神经脉冲的频率进行编码,而脉冲神经网络的模拟神经元更加接近实际。
2016年,发表在IEEE的论文Towards an Spiking Deep Belief Network forFace Recognition Application提到,脉冲速率和时间是生物模型中数据传输的决定参数。这篇论文使用Brain模拟器来模拟脉冲神经网络,由于Matlab中的数字精度和Brian模拟器重新加载的不同,Python中的权重矩阵导致了精度的小幅下降,Brian模拟器模型的准确性降低到了92.4%。
2017年,发表在IEEE的论文Multi-Layer Unsupervised Learning in a SpikingConvolutional Neural Network,提出了脉冲神经网络(SNN)相对于传统的非脉冲神经网络在生物真实性、低功耗硬件实现的可能性以及理论计算方面具有优势。然而多层次的学习网络难以训练,且大多数卷积神经网络是通过反向传播算法训练,不能在本地进行计算。本文虽然实现了在权重上用生物学可信的本地学习来训练基于脉冲的卷积神经网络,但依然是用传统卷积核来实现卷积,且是先将网络训练成卷积神经网络,在训练之后转换为脉冲网络。
发明内容
为了克服上述现有技术的缺点,基于这几项分析基础,在针对性、生物真实性、潜在的低功耗硬件实现和和理论计算能力的改进方面上,本发明提供一种利用脉冲神经元阵列来实现卷积功能的方法,根据脉冲神经网络特征来设计具有卷积功能的结构,由脉冲神经元组成的脉冲阵列来实现卷积功能。
为了实现上述目的,本发明采用的技术方案是:
一种利用脉冲神经元阵列来实现卷积功能的方法,包括如下步骤:
输入图片,并对图片进行预处理;
根据实际情况设计卷积核;
利用设计的卷积核,在图像上做卷积。
优选地,所述对输入图片,并对图片进行预处理的步骤,包括:
输入图片,第一层输入神经元接收图像,将图片转换成像素矩阵(假设为N*N),并将每一个像素值都减去所有像素平均值,再除以所有图片像素的标准差,使像素值都处于0-1之间;
优选地,所述根据实际情况设计卷积核的步骤,包括:
卷积操作的目的为提取图像特征,具体到本发明中,设计卷积核为r*r的规模,一共s种,根据实际情况(图像规模等)来确定;
优选地,所述利用设计的卷积核,在图像上做卷积的步骤,包括:
根据设计的r*r卷积核,在N*N的图像上对图像的每一块进行点对点的连接,其中每块的规模与卷积核大小相同,为r*r,连接的部分视为通路,为权值连接,不连接的部分视为掩模被过滤,不同形状的连接视为实现了不同卷积功能,即使用不同的卷积核进行连接时视为使用了不同的函数;卷积核在图像上滚动与之进行连接,每一块完成后移动一个步长,继续与下一块做点对点连接。
卷积核在图像上进行点对点连接后,采用利用发送脉冲的时序快慢来替代卷积值大小的方式来替代原有的使用卷积值完成卷积的方式,且卷积参数体现在神经元之间的连接上,即权值weight,具体实现方式如下:
通过点对点连接,权值大小体现在卷积核与图片的连接上。对于每一次的卷积操作,都设置一个时间窗来体现发脉冲的时序先后。权值非0的部分视为发送脉冲,若权值较大时,在时间窗上的体现为脉冲发送较紧密,特征比较明显,反之脉冲体现较为稀疏,关联性不大,特征不明显,值越小。
与现有的根据传统神经网络设计的卷积核来实现卷积相比,基于脉冲神经网络的卷积会更接近地模拟生物神经元,计算功耗也会大大降低。
附图说明
图1是本发明实例的利用脉冲神经元阵列来实现卷积功能的流程示意图。
图2是本发明实例中对提取的特征设计卷积核,在图像上做卷积的过程示意图。
图3是非脉冲神经网络中神经元的大致计算模型。
图4是脉冲神经网络中神经元膜电位随输入脉冲时间变化图。
图5是卷积过程的示意图。
图6是本发明实例中卷积方式的示意图。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式。
图1是本发明实例的利用脉冲神经元阵列来实现卷积功能的流程示意图,该方法包括:
S1输入图片,并对图片进行预处理;
S2根据实际情况设计卷积核;
S3利用设计的卷积核,在图像上做卷积。
在S1中,通过第一层输入神经元接收输入图片,然后将图片转换成像素矩阵(假设为N*N),通过如上所述的预处理方式使像素值都处于0-1之间,简化计算量,还能避免过拟合;
在S2中,设计卷积核为r*r的规模,一共s种,根据实际情况(图像规模等)来确定,具体到本实例中,设计卷积核的大小为3*3,一共4种,分别体现为矩阵r0,r1,r2,r3如下所示:
进一步地,如图2所示,S3包括:
S31,用r*r的卷积核,在N*N的图像上按顺序进行点对点连接;
S32,通过点对点连接,权值大小体现在卷积核与图片的连接上。对于每一次的卷积操作,都对相应的接收神经元设置一个时间窗来体现发脉冲的时序先后。当一个神经元接收输入脉冲时,若在该时刻达到了神经元膜电位的阈值,则该神经元被激发,会发送一个脉冲,向后传递给接收神经元,此时刻接收神经元的时间窗上会体现有一个脉冲。权值weight非0的部分视为发送了脉冲。
S33,在时间窗上描述出脉冲的发送(脉冲发送越紧凑表示卷积值越大,特征越明显,连接权值为0时,视为不发送脉冲),通过脉冲时序快慢来表示卷积值的大小。若接收神经元时间窗上的体现为脉冲发送较多较紧密,则表明该特征比较明显,反之,当时间窗上的脉冲体现较为稀疏,则表明关联性不大,该特征不明显,等同于在传统卷积方式上的卷积值越小。
图3中input为输入,x1到xi为输入图片的像素矩阵,wi为连接权重,f为激活函数,a为神经元输出,即有被激发的神经元。因此卷积层计算公式为:
a=f(z)
其中z为输入图片像素值分别于卷积核做卷积操作后的总和,即:
图4为一个时间窗,在不同的时间给神经元输入脉冲,阈值为3。当输入的脉冲足以使神经元膜电压大于阈值时,神经元被激发,进行放电操作,一段时间后恢复至平衡电压。
图5是卷积过程的示意图,其中Image为输入图像的像素矩阵,假设为5*5,Convoluted Feature为特征提取后设计的不同特征卷积核,假设为3*3,用该卷积核在图像上做卷积,传统的卷积方式为在图像的第一块上进行点对点的相乘后进行相加,则第一块的卷积值为1*1+1*0+1*1+0*0+1*1+1*0+0*1+0*0+1*1=4。接下来将卷积核移动一个步长,继续对下一块做卷积。当整张图片都做完卷积操作时,接收神经元呈现为一个3*3的神经元矩阵,用于继续完成下一步的池化。
图6是本发明实例的利用脉冲神经元阵列来实现卷积功能的卷积方式示意图,如图6所示,包括:
图中第一层为输入图像的像素矩阵,假设为N*N,卷积核为3*3的卷积核,一共四种。对第一层图像的每一块进行点对点连接,连接部分视为有权值weight,第二层为接收神经元。与传统的卷积方式不同,在这里使用脉冲时序来替代卷积值的大小。例如,当使用第一个卷积核时,由于图像与之做点对点连接,尤其的,与传统方式不同之处在于,卷积参数体现在神经元之间的连接上,即权值weight,无连接的部分视为0,对于每一次的卷积操作,都对接收神经元设置一个时间窗来体现脉冲发送的时序先后。权值非0的部分视为发送脉冲,若接收神经元时间窗上的体现为脉冲发送较多较紧密,则表明该特征比较明显,反之,当时间窗上的脉冲体现较为稀疏,则表明关联性不大,该特征不明显,等同于在传统卷积方式上的卷积值越小。我们假定做完一次卷积操作的时间为t,即单个时间窗内描述的时间长度为t,则当整张图片都做完卷积操作时消耗的时间为9t,接收神经元一共得到9个时间窗,每个时间窗上呈现了脉冲发送的时序,通过脉冲时序快慢来体现该特征是否明显,替代了传统方式中的卷积值。这九个接收神经元组成一个脉冲神经元阵列,实现了本发明中所述利用脉冲神经元阵列来实现卷积功能。

Claims (5)

1.一种利用脉冲神经元阵列来实现卷积功能的方法,其特征在于,包括如下步骤:
1)输入图片,并对图片进行预处理;
2)设计卷积核;
3)利用设计的卷积核,在图像上做卷积。
2.根据权利要求1所述利用脉冲神经元阵列来实现卷积功能的方法,其特征在于,所述步骤1)输入图片,并对图片进行预处理,包括:
输入图片,第一层输入神经元接收图像,将图片转换成像素矩阵,并将每一个像素值都减去所有图片像素的平均值,再除以所有图片像素的标准差,使像素值都处于0-1之间。
3.根据权利要求1所述利用脉冲神经元阵列来实现卷积功能的方法,其特征在于,所述步骤2)设计卷积核,包括:
设计卷积核为r*r的规模,一共s种。
4.根据权利要求1所述利用脉冲神经元阵列来实现卷积功能的方法,其特征在于,所述步骤3)利用设计的卷积核,在图像上做卷积,包括:
根据设计的r*r卷积核,在N*N的图像上对图像的每一块进行点对点的连接,其中每块的规模与卷积核大小相同,为r*r,连接的部分视为通路,为权值连接,不连接的部分视为掩模被过滤,不同形状的连接视为实现了不同卷积功能,卷积核在图像上滚动与之进行连接,每一块完成后移动一个步长,继续与下一块做点对点连接。
5.根据权利要求4所述利用脉冲神经元阵列来实现卷积功能的方法,其特征在于,所述卷积核在图像上进行点对点连接后,利用脉冲时序快慢替代卷积值大小,具体实现方式如下:
通过点对点连接,权值大小weight体现在卷积核与图片的连接上,对于每一次的卷积操作,都对下一层的接收神经元设置一个时间窗,用于表示在某一时间的卷积操作是否发送了脉冲,时间窗体现发脉冲的时序先后,权值非0的部分视为发送脉冲,权值越大,在时间窗上体现为脉冲发送越紧密,特征越明显,权值越小,在时间窗上体现为脉冲发送越稀疏,特征越不明显,最终在时间窗上描述出脉冲的发送,通过脉冲时序来表示卷积值的大小。
CN201711488549.XA 2017-12-30 2017-12-30 一种利用脉冲神经元阵列来实现卷积功能的方法 Pending CN108304913A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711488549.XA CN108304913A (zh) 2017-12-30 2017-12-30 一种利用脉冲神经元阵列来实现卷积功能的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711488549.XA CN108304913A (zh) 2017-12-30 2017-12-30 一种利用脉冲神经元阵列来实现卷积功能的方法

Publications (1)

Publication Number Publication Date
CN108304913A true CN108304913A (zh) 2018-07-20

Family

ID=62868382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711488549.XA Pending CN108304913A (zh) 2017-12-30 2017-12-30 一种利用脉冲神经元阵列来实现卷积功能的方法

Country Status (1)

Country Link
CN (1) CN108304913A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110046695A (zh) * 2019-04-09 2019-07-23 中国科学技术大学 一种可配置的高并行度脉冲神经元阵列
US20210357726A1 (en) * 2019-01-29 2021-11-18 Tsinghua University Fusion structure and method of convolutional neural network and spiking neural network
WO2023284142A1 (zh) * 2021-07-16 2023-01-19 成都时识科技有限公司 脉冲神经网络中神经元的信号处理方法及该网络训练方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103279958A (zh) * 2013-05-31 2013-09-04 电子科技大学 一种基于Spiking神经网络的图像分割方法
CN104933722A (zh) * 2015-06-29 2015-09-23 电子科技大学 一种基于Spiking-卷积网络模型的图像边缘检测方法
CN104991239A (zh) * 2015-06-29 2015-10-21 中国科学院空间科学与应用研究中心 一种基于脉冲压缩雷达的距离旁瓣抑制方法
CN105760930A (zh) * 2016-02-18 2016-07-13 天津大学 用于aer的多层脉冲神经网络识别系统
US20160358069A1 (en) * 2015-06-03 2016-12-08 Samsung Electronics Co., Ltd. Neural network suppression
EP3121767A1 (en) * 2015-07-23 2017-01-25 Applied Brain Research Inc. Methods and systems for implementing deep spiking neural networks
CN106407990A (zh) * 2016-09-10 2017-02-15 天津大学 基于事件驱动的仿生目标识别系统
CN106446937A (zh) * 2016-09-08 2017-02-22 天津大学 用于aer图像传感器的多层卷积识别系统
CN106841216A (zh) * 2017-02-28 2017-06-13 浙江工业大学 基于全景图像cnn的隧道病害自动识别装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103279958A (zh) * 2013-05-31 2013-09-04 电子科技大学 一种基于Spiking神经网络的图像分割方法
US20160358069A1 (en) * 2015-06-03 2016-12-08 Samsung Electronics Co., Ltd. Neural network suppression
CN104933722A (zh) * 2015-06-29 2015-09-23 电子科技大学 一种基于Spiking-卷积网络模型的图像边缘检测方法
CN104991239A (zh) * 2015-06-29 2015-10-21 中国科学院空间科学与应用研究中心 一种基于脉冲压缩雷达的距离旁瓣抑制方法
EP3121767A1 (en) * 2015-07-23 2017-01-25 Applied Brain Research Inc. Methods and systems for implementing deep spiking neural networks
CN105760930A (zh) * 2016-02-18 2016-07-13 天津大学 用于aer的多层脉冲神经网络识别系统
CN106446937A (zh) * 2016-09-08 2017-02-22 天津大学 用于aer图像传感器的多层卷积识别系统
CN106407990A (zh) * 2016-09-10 2017-02-15 天津大学 基于事件驱动的仿生目标识别系统
CN106841216A (zh) * 2017-02-28 2017-06-13 浙江工业大学 基于全景图像cnn的隧道病害自动识别装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210357726A1 (en) * 2019-01-29 2021-11-18 Tsinghua University Fusion structure and method of convolutional neural network and spiking neural network
CN110046695A (zh) * 2019-04-09 2019-07-23 中国科学技术大学 一种可配置的高并行度脉冲神经元阵列
CN110046695B (zh) * 2019-04-09 2021-04-23 中国科学技术大学 一种可配置的高并行度脉冲神经元阵列
WO2023284142A1 (zh) * 2021-07-16 2023-01-19 成都时识科技有限公司 脉冲神经网络中神经元的信号处理方法及该网络训练方法

Similar Documents

Publication Publication Date Title
Deng et al. Optimal conversion of conventional artificial neural networks to spiking neural networks
CN112633497B (zh) 一种基于重加权膜电压的卷积脉冲神经网络的训练方法
CN107092959B (zh) 基于stdp非监督学习算法的脉冲神经网络模型构建方法
Louizos et al. Bayesian compression for deep learning
Gregor et al. Deep autoregressive networks
CN110188794B (zh) 一种深度学习模型的训练方法、装置、设备及存储介质
CN108805270A (zh) 一种基于存储器的卷积神经网络系统
CN111858989A (zh) 一种基于注意力机制的脉冲卷积神经网络的图像分类方法
CN112699958A (zh) 一种基于剪枝和知识蒸馏的目标检测模型压缩与加速方法
CN112906828A (zh) 一种基于时域编码和脉冲神经网络的图像分类方法
Srinivasan et al. Training deep spiking neural networks for energy-efficient neuromorphic computing
CN110223785A (zh) 一种基于深度学习的传染病传播网络重构方法
CN109086802A (zh) 一种基于八元数卷积神经网络的图像分类方法
CN114186672A (zh) 一种用于脉冲神经网络的高效高精度训练算法
CN114998659B (zh) 随时间在线训练脉冲神经网络模型的图像数据分类方法
CN108304913A (zh) 一种利用脉冲神经元阵列来实现卷积功能的方法
CN110659730A (zh) 基于脉冲神经网络的端到端功能性脉冲模型的实现方法
WO2020196066A1 (ja) ニューラルネットワークの学習方法、ニューラルネットワークの生成方法、学習済装置、携帯端末装置、学習処理装置及びコンピュータプログラム
CN112712170B (zh) 基于输入加权脉冲神经网络的神经形态视觉目标分类系统
CN114091659A (zh) 基于空时信息的超低延时脉冲神经网络及学习方法
Wu et al. A structure–time parallel implementation of spike-based deep learning
CN114926737A (zh) 一种基于卷积脉冲神经网络的低功耗目标检测方法
Tareen et al. Convolutional neural networks for beginners
CN111382840B (zh) 一种面向自然语言处理的基于循环学习单元的htm设计方法
Bras Langevin algorithms for very deep neural networks with application to image classification

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180720