CN114239405A - 一种脉冲神经网络神经元膜电压计算方法 - Google Patents
一种脉冲神经网络神经元膜电压计算方法 Download PDFInfo
- Publication number
- CN114239405A CN114239405A CN202111559869.6A CN202111559869A CN114239405A CN 114239405 A CN114239405 A CN 114239405A CN 202111559869 A CN202111559869 A CN 202111559869A CN 114239405 A CN114239405 A CN 114239405A
- Authority
- CN
- China
- Prior art keywords
- neuron
- pulse
- membrane voltage
- time
- neural network
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/02—Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Abstract
本发明提供一种脉冲神经网络神经元膜电压计算方法,涉及脉冲神经网络技术领域,首先采用时间编码方法将输入信号转换为脉冲序列,选取Spike Response Model神经元模型做为脉冲神经网络神经元非不应期时间段的膜电压计算模型,再建立突触后神经元不应期时段突触前神经元的脉冲累积生成的膜电压模型,最后建立脉冲神经网络神经元膜电压计算模型,实现突触后神经元膜电压的计算;本发明通过计算不应期突出前神经元输入脉冲的累积,弥补了输入信息的丢失,将本发明方法应用于图像处理,减少了信息的损失,提高了输入信息的利用率。
Description
技术领域
本发明涉及脉冲神经网络技术领域,具体涉及一种脉冲神经网络神经元膜电压计算方法。
背景技术
深度学习推动了人工智能技术的发展,在很多领域成果显著。但是,在具有较多不确定性、时空关联性以及泛化通用性的任务中,如语义理解、自适应学习、联想记忆、多模态信息处理等,深度学习还远远不如人脑。因此深度学习虽然代表了目前人工智能领域的先进技术,但这与理想的类脑通用智能目标仍有较大差距,还有许多其难以解决的智能问题。另外,深度学习模型在长期学习时会出现灾难性遗忘现象,如何在动态的环境中像人一样具备长期学习的能力成为了学术界关注的热点。
类脑计算模拟生物神经网络的结构和信息加工过程,它在软件层面的尝试之一是脉冲神经网络(SNN),神经元之间是神经脉冲,信息的表达和处理通过神经脉冲发送来实现,就像我们的大脑中,有大量神经脉冲在不停传递和流转,因此在表达和处理信息时,比深度学习的时间性更突出,更加适合进行高效的时空信息处理,可应用于诸多复杂问题的求解中,如语言建模、手写数字识别以及语音识别等。通过学习大脑的信息处理机制,建立更强大和更通用的机器智能,类脑计算应用前景广阔,有望为人工智能未来发展提供强大的技术基础。
脉冲神经网络神经元具有强大的信息处理机制,具有计算效率高、能耗低等优点,一直是重要的研究方向,提出了Hodgkin–Huxley(H-H模型)、Intergrate-and-Fire(IF模型)、Izhikevich和Spike Response Model(SRM)等神经元模型,在人脑神经元脉冲编码的放电模式、计算模型、算法和计算架构等方面取得了令人欣喜的成果。脉冲神经网络神经元通过脉冲进行信息处理和传递,如何建立输入信号与神经元之间的映射关系,如何将输入转换为等价的Spiking神经元模型的外部刺激信号转换为脉冲序列,如何对神经元脉冲编码,是脉冲神经网络应用中必须要解决的问题。目前的一些脉冲神经网络神经元模型,如SRM等,考虑了神经元的不应期。神经元脉冲发放后进入不应期,神经元不应期期间不接收突触前神经元发出的脉冲,这就造成输入脉冲的丢失,即信息的丢失,在实际应用中,这将导致输入信息的不完整,可能影响应用的效果。
发明内容
神经元脉冲发放后进入不应期,神经元不应期期间不接受突触前神经元发出的脉冲,这就造成输入脉冲的丢失,即信息的丢失。本发明的目的是提供一种脉冲神经网络神经元膜电压计算方法,有效解决信息丢失问题。
为实现上述技术效果,本发明提出了一种脉冲神经网络神经元膜电压计算方法,包括:
步骤1:建立输入信号与神经元之间的映射关系,将输入信号转换为脉冲序列;
步骤2:建立脉冲神经网络神经元模电压分布计算模型;
步骤3:计算突触后神经元膜电压,生成突触后神经元脉冲序列。
所述步骤1包括:
步骤1.1:采用首脉冲编码、时序脉冲编码或延时编码计算输入信号编码值;
步骤1.2:根据编码值得到神经元脉冲发放时间,生成突触前神经元发放的脉冲序列。
所述步骤2包括:
步骤2.1:选取Spike Response Model神经元模型做为脉冲神经网络神经元非不应期时间段的膜电压计算模型;
步骤2.2:建立突触后神经元不应期时段突触前神经元的脉冲累积生成的膜电压模型。
进一步地,所述步骤2.1中的脉冲神经网络神经元非不应期时间段的膜电压计算模型为:
式中,vjc(t)表示突触后神经元非不应期时段接收突触前神经元的脉冲累积生成的膜电压;ti表示突触前神经元i在到时间段内发放的脉冲;Δt为突触后神经元j脉冲发放后的不应期时间长度;wij表示突触前神经元i与突触后神经元j之间的连接权值;表示突触后神经元j发放脉冲时间;t表示到时间段内的时间;表示突触后神经元j发放的前一个脉冲的时间;
ε(x)为spike响应核函数:
式中τ表示时间延迟常量;
η(x)为不应期核函数:
式中η0、τr分别为学习率、不应期常量。
进一步地,所述步骤2.2中的突触后神经元不应期时段突触前神经元的脉冲累积生成的膜电压模型为:
ε(x)为脉冲响应核函数:
式中,vjn(t)表示突触后神经元j发放脉冲后进入不应期期间,突触前神经元i的脉冲累积生成的膜电压;ti表示突触前神经元i在到时间段内发放的脉冲;Δt为突触后神经元j脉冲发放后的不应期时间长度;wij表示突触前神经元i与突触后神经元j之间的连接权值;表示突触后神经元j发放脉冲时间;t表示到时间段内的时间;τ表示时间延迟常量。
所述步骤3包括:
步骤3.1:构建脉冲神经网络神经元膜电压计算模型:
突触后神经元j在t时刻的膜电压vj(t):
式中,vj(t)表示突触后神经元j在t时刻的膜电压,θ表示脉冲发放的阈值;
步骤3.2:根据输入的脉冲计算每一时刻的神经元j膜电压vj(t),生成突触后神经元脉冲序列。
所述步骤3.2包括:
步骤3.2.1:判断是否计算结束或时间大于等于总脉冲时间T,是则跳转到步骤3.2.6;
步骤3.2.2:突触后神经元j接收输入脉冲,计算其膜电压vj(t);
步骤3.2.3:判断vj(t)是否大于等于设定阈值θ;
步骤3.2.4:当vj(t)<θ时,转到步骤3.2.1;
步骤3.2.5:当vj(t)≥θ时,突触后神经元j发放一个脉冲,发放时间记为tjf,并加入突触后神经元j发放的脉冲序列,随后突触后神经元进入不应期,不应期时间长度为Δt,计算膜电压vjn(t),置vj(t)和vjc(t)值为0,跳转到步骤3.2.1;
步骤3.2.6:结束计算。
本发明的有益效果是:
1)本发明针对脉冲神经网络神经元发放脉冲后进入不应期,不应期期间不再接收突触前神经元发放的脉冲,出现输入脉冲丢失,即信息丢失,提出了一种脉冲神经网络神经元膜电压计算方法,能很好地解决输入脉冲丢失问题;
2)本发明将神经元膜电压计算分成两部分,一是非不应期时间突出前神经元输入脉冲的累积计算,二是不应期突出前神经元输入脉冲的累积计算,两部分之和作为神经元膜电压。通过计算不应期突出前神经元输入脉冲的累积,弥补了输入信息的丢失;
3)本发明用于解决应用问题,可减少输入信息的损失,提高输入信息的利用率。
附图说明
图1为本发明中脉冲神经网络神经元膜电压计算流程图;
图2为本发明中神经元发放脉冲过程图;
图3为本发明中神经元膜电压计算过程图;
图4为本发明中图片灰度图;
图5为本发明中脉冲编码时间图;
图6为本发明中对应的脉冲序列图。
具体实施方式
本发明的目的是提供一种脉冲神经网络神经元膜电压计算方法,有效解决信息丢失问题,
神经元是一个多输入单输出的单元,若干突触前神经元作用于突触后神经元。突触后神经元接收来自突触前的神经元脉冲信息,经过一定的累积后,突触后神经元的膜电位值达到阈值发放脉冲,然后膜电位值重置为静息电位,突触后神经元进入不应期,过程原理图如图3所示。突触后神经元处于绝对不应期状态时,对突触前神经元脉冲输入没有反应,即不接收脉冲输入,直到一段时间过后突触后神经元才对输入的刺激给予反应,如图2所示。不断重复上述的脉冲发放过程,实现信息的处理和传递。
由于神经元脉冲发放后存在不应期,突触后神经元发放脉冲后不接收突触前神经元脉冲输入,造成输入脉冲丢失。对于脉冲神经网络应用而言,存在信息丢失现象。为了避免输入信息的丢失,本发明将突触后神经元的膜电位计算分为两部分:
一是突触后神经元在非不应期时间段接收来自突触前神经元的脉冲信息,经累积计算得到的突触后神经元的膜电位,记为vjc;
二是突触后神经元的膜电位超过阈值,发放脉冲后处于不应期。此时突触前神经元仍在发放脉冲,由于突触后神经元处于不应期,对突触前神经元的脉冲信息没有反应,造成输入信息丢失。本发明对突触后神经元不应期期间突触前神经元发放的脉冲进行累积,计算不应期期间的膜电压,记为vjn,这部分膜电压参与下一个时间段突触后神经元膜电位的计算。
某一时刻,突触后神经元的膜电位等于vjc和vjn之和:
v=vjc+vjn
对于首次计算突触后神经元的膜电位,vnc膜电压值设为0。
下面结合附图和具体实施实例对发明做进一步说明。
以图像处理为例,采用首脉冲编码和Spike Response Model(SRM)神经元模型,描述本方法,一种脉冲神经网络神经元膜电压计算方法,包括:
步骤1:建立输入信号与神经元之间的映射关系,将输入信号转换为脉冲序列;包括:
步骤1.1:采用首脉冲编码、时序脉冲编码或延时编码计算输入信号编码值;
给定一张灰度图,把它划分成m*n块,每块看作是一个神经元。每块像素点的灰度值用pij(i:1..m,j:1..n)表示,像素点最大灰度值为pmax,最小灰度值为pmin,总脉冲时间为T。灰度图中灰度值为pij的像素点的编码值tij计算如下:
式中,pij表示灰度图中每个像素点的灰度值,pmin表示最小灰度值,pmax表示像素点最大灰度值,T表示总脉冲时间;
假定给定一张3*3区域的灰度图,T取为300,如图4所示,从图可以得到pmax=230,pmin=20,根据上述公式可以计算出对应的每块的编码值,如图5所示。
步骤1.2:根据编码值得到神经元脉冲发放时间,生成突触前神经元发放的脉冲序列;如图5对应的脉冲序列如图6所示(按行)。
步骤2:建立脉冲神经网络神经元模电压分布计算模型;包括:
步骤2.1:选取Spike Response Model神经元模型做为脉冲神经网络神经元非不应期时间段的膜电压计算模型;
本实施例的脉冲神经网络神经元是一个多输入单输出的结构,若干突触前神经元作用于突触后神经元。在不考虑外部额外输入电流的情况下,选取Spike Response Model(SRM)时间编码脉冲神经网络神经元模型。
假定突触后神经元j接收来自N个突触前神经元i(i=1,...,N)的脉冲信息,突触前神经元i(i=1,...,N)和突触后神经元j连接的权值为wij,神经元阈值为θ,突触后神经元j发放脉冲时间为采用首脉冲时间编码,得到脉冲神经网络神经元非不应期时间段的膜电压计算模型为:
vjc(t)表示突触后神经元非不应期时段接收突触前神经元的脉冲累积生成的膜电压;ti表示突触前神经元i在到时间段内发放的脉冲;Δt为突触后神经元j脉冲发放后的不应期时间长度;wij表示突触前神经元i与突触后神经元j之间的连接权值;表示突触后神经元j发放脉冲时间;t表示到时间段内的时间;表示突触后神经元j发放的前一个脉冲的时间;
ε是用于描述突触后电位的spike响应核函数,ε(x)描述如下:
式中,τ表示时间延迟常量;
η是不应期核函数,η(x)描述如下:
式中,η0、τr分别为学习率、不应期常量;
步骤2.2:建立突触后神经元不应期时段突触前神经元的脉冲累积生成的膜电压模型;
设N个突触前神经元i(i=1,…,N)作用于突触后神经元j,与其连接的权值为wij,突触后神经元j发放脉冲时间为tf,其不应期时间为Δt。突触后神经元j发放脉冲后进入不应期期间,突触后神经元j对突触前神经元脉冲输入没有反应,即不接收脉冲输入。突触前神经元i(i=1,…,N)的脉冲累积生成的膜电压vjn(t)计算公式如下:
式中,ti表示突触前神经元i在到时间段内发放的脉冲;Δt为突触后神经元j脉冲发放后的不应期时间长度;wij表示突触前神经元i与突触后神经元j之间的连接权值;表示突触后神经元j发放脉冲时间;t表示到时间段内的时间;τ表示时间延迟常量;
ε是用于描述突触后电位的spike响应核函数,ε(x)表达式如下:
其中,τ表示时间延迟常量。
步骤3:计算突触后神经元膜电压,生成突触后神经元脉冲序列;包括:
步骤3.1:构建脉冲神经网络神经元膜电压计算模型;
设N个突触前神经元i(i=1,...,N)作用于突触后神经元j,突触后神经元j接收来自突触前的神经元脉冲信息,其连接的权值为wij。突触后神经元j发放脉冲时间为不应期时间长度为出,突触后神经元j在t时刻的膜电压vj(t)计算公式如下:
式中,θ表示脉冲发放的阈值;
步骤3.2:根据输入的脉冲计算每一时刻的神经元j膜电压vj(t),生成突触后神经元脉冲序列;包括:
步骤3.2.1:判断是否计算结束或时间大于等于总脉冲时间T,是则跳转到步骤3.2.6;
步骤3.2.2:突触后神经元j接收输入脉冲,计算其膜电压vj(t);
步骤3.2.3:判断vj(t)是否大于等于设定阈值θ;
步骤3.2.4:当vj(t)<θ时,转到步骤3.2.1;
步骤3.2.5:当vj(t)≥θ时,突触后神经元j发放一个脉冲,发放时间记为并加入突触后神经元j发放的脉冲序列,随后突触后神经元进入不应期,不应期时间长度为Δt,计算膜电压vin(t),置vj(t)和vjc(t)值为0,跳转到步骤3.2.1;
步骤3.2.6:结束计算。
计算过程如图1所示,首次计算vjn(t)值置为0,脉冲总时间T、静息电位执行前设定,阈值θ可以执行前设定或动态调整,在本实例中采用执行前设定。
在神经元膜电压计算过程中,突触后神经元每接收一个输入脉冲,就计算vj(t)和vjc(t),判断vj(t)是否大于等于阈值,如果小于阈值,就继续接收输入脉冲,计算vj(t)和vjc(t);如果大于等于阈值,突触后神经元就发放一个脉冲,发放时间记为即确定了值,随后突触后神经元进入不应期。突触后神经元进入不应期,不再接收输入脉冲,膜电压vj(t)逐步降为静息电位(通常取0),不应期时间长度为Δt。此时,可以计算vjn(t),即计算时间段内突触前神经元发放的脉冲相对于突触后神经元j所产生的膜电压,然后置vj(t)和vjc(t)的置为0。重复这样的过程,直到计算结束或达到脉冲总时间T,最后得到突触后神经元发放的脉冲序列。
Claims (7)
1.一种脉冲神经网络神经元膜电压计算方法,其特征在于,包括:
步骤1:建立输入信号与神经元之间的映射关系,将输入信号转换为脉冲序列;
步骤2:建立脉冲神经网络神经元模电压分布计算模型;
步骤3:计算突触后神经元膜电压,生成突触后神经元脉冲序列。
2.根据权利要求1所述的一种脉冲神经网络神经元膜电压计算方法,其特征在于,所述步骤1包括:
步骤1.1:采用首脉冲编码、时序脉冲编码或延时编码计算输入信号编码值;
步骤1.2:根据编码值得到神经元脉冲发放时间,生成突触前神经元发放的脉冲序列。
3.根据权利要求1所述的一种脉冲神经网络神经元膜电压计算方法,其特征在于,所述步骤2包括:
步骤2.1:选取Spike Response Model神经元模型做为脉冲神经网络神经元非不应期时间段的膜电压计算模型;
步骤2.2:建立突触后神经元不应期时段突触前神经元的脉冲累积生成的膜电压模型。
4.根据权利要求3所述的一种脉冲神经网络神经元膜电压计算方法,其特征在于,所述步骤2.1中的脉冲神经网络神经元非不应期时间段的膜电压计算模型为:
式中,vjc(t)表示突触后神经元非不应期时段接收突触前神经元的脉冲累积生成的膜电压;ti表示突触前神经元i在到时间段内发放的脉冲;Δt为突触后神经元j脉冲发放后的不应期时间长度;wij表示突触前神经元i与突触后神经元j之间的连接权值;表示突触后神经元j发放脉冲时间;t表示到时间段内的时间;表示突触后神经元j发放的前一个脉冲的时间;
ε(x)为spike响应核函数:
式中,τ表示时间延迟常量;
η(x)为不应期核函数:
式中η0、τr分别为学习率、不应期常量。
7.根据权利要求6所述的一种脉冲神经网络神经元膜电压计算方法,其特征在于,所述步骤3.2包括:
步骤3.2.1:判断是否计算结束或时间大于等于总脉冲时间T,是则跳转到步骤3.2.6;
步骤3.2.2:突触后神经元j接收输入脉冲,计算其膜电压vj(t);
步骤3.2.3:判断vj(t)是否大于等于设定阈值θ;
步骤3.2.4:当vj(t)<θ时,转到步骤3.2.1;
步骤3.2.5:当vj(t)≥θ时,突触后神经元j发放一个脉冲,发放时间记为并加入突触后神经元j发放的脉冲序列,随后突触后神经元进入不应期,不应期时间长度为Δt,计算膜电压vjn(t),置vj(t)和vjc(t)值为0,跳转到步骤3.2.1;
步骤3.2.6:结束计算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111559869.6A CN114239405A (zh) | 2021-12-20 | 2021-12-20 | 一种脉冲神经网络神经元膜电压计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111559869.6A CN114239405A (zh) | 2021-12-20 | 2021-12-20 | 一种脉冲神经网络神经元膜电压计算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114239405A true CN114239405A (zh) | 2022-03-25 |
Family
ID=80758923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111559869.6A Pending CN114239405A (zh) | 2021-12-20 | 2021-12-20 | 一种脉冲神经网络神经元膜电压计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114239405A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114611686A (zh) * | 2022-05-12 | 2022-06-10 | 之江实验室 | 基于可编程神经拟态核的突触延时实现系统及方法 |
-
2021
- 2021-12-20 CN CN202111559869.6A patent/CN114239405A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114611686A (zh) * | 2022-05-12 | 2022-06-10 | 之江实验室 | 基于可编程神经拟态核的突触延时实现系统及方法 |
CN114611686B (zh) * | 2022-05-12 | 2022-08-30 | 之江实验室 | 基于可编程神经拟态核的突触延时实现系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kim et al. | Deep neural networks with weighted spikes | |
CN108805270B (zh) | 一种基于存储器的卷积神经网络系统 | |
US10671912B2 (en) | Spatio-temporal spiking neural networks in neuromorphic hardware systems | |
Zheng et al. | Online supervised learning for hardware-based multilayer spiking neural networks through the modulation of weight-dependent spike-timing-dependent plasticity | |
CN112633497A (zh) | 一种基于重加权膜电压的卷积脉冲神经网络的训练方法 | |
CN109165730B (zh) | 交叉阵列神经形态硬件中状态量化网络实现方法 | |
CN111612136B (zh) | 一种神经形态视觉目标分类方法及系统 | |
CN108304912B (zh) | 一种运用抑制信号实现脉冲神经网络监督学习的系统和方法 | |
CN112529176A (zh) | 一种加速脉冲神经网络的训练方法、终端及存储介质 | |
CN109635938B (zh) | 一种自主学习脉冲神经网络权值量化方法 | |
CN112712170B (zh) | 基于输入加权脉冲神经网络的神经形态视觉目标分类系统 | |
CN114266351A (zh) | 基于无监督学习时间编码的脉冲神经网络训练方法及系统 | |
CN112101535A (zh) | 脉冲神经元的信号处理方法及相关装置 | |
CN111291861A (zh) | 一种应用于脉冲神经网络的输入脉冲编码方法 | |
CN114239405A (zh) | 一种脉冲神经网络神经元膜电压计算方法 | |
CN114662644A (zh) | 基于动态阈值神经元的深度脉冲神经网络的图像识别方法 | |
CN117372843A (zh) | 基于首脉冲编码的图片分类模型训练方法、图片分类方法 | |
KR102191346B1 (ko) | 버스트 스파이크에 기반한 스파이킹 신경망 생성 방법 및 스파이킹 신경망 기반 추론 장치 | |
CN110991602A (zh) | 基于单指数核的事件驱动脉冲神经元仿真算法 | |
Lan et al. | Pc-snn: Supervised learning with local hebbian synaptic plasticity based on predictive coding in spiking neural networks | |
KR102535635B1 (ko) | 뉴로모픽 컴퓨팅 장치 | |
Mohapatra et al. | Exploring deep spiking neural networks for automated driving applications | |
CN114372563A (zh) | 基于混合脉冲强化学习网络结构的机器人控制方法及系统 | |
Humaidi et al. | Recognition of arabic characters using spiking neural networks | |
CN110717590A (zh) | 基于单指数核及神经膜电位状态的高效多脉冲算法 |
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 |