CN113449864A - 用于图像数据分类的反馈型脉冲神经网络模型训练方法 - Google Patents
用于图像数据分类的反馈型脉冲神经网络模型训练方法 Download PDFInfo
- Publication number
- CN113449864A CN113449864A CN202110827709.9A CN202110827709A CN113449864A CN 113449864 A CN113449864 A CN 113449864A CN 202110827709 A CN202110827709 A CN 202110827709A CN 113449864 A CN113449864 A CN 113449864A
- Authority
- CN
- China
- Prior art keywords
- neural network
- model
- layer
- hidden layer
- hidden
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 96
- 238000012549 training Methods 0.000 title claims abstract description 74
- 238000003062 neural network model Methods 0.000 title claims abstract description 46
- 238000013528 artificial neural network Methods 0.000 claims abstract description 102
- 210000002569 neuron Anatomy 0.000 claims abstract description 90
- 230000003595 spectral effect Effects 0.000 claims abstract description 29
- 238000010606 normalization Methods 0.000 claims abstract description 24
- 230000004069 differentiation Effects 0.000 claims abstract description 23
- 230000004913 activation Effects 0.000 claims abstract description 9
- 230000000007 visual effect Effects 0.000 claims abstract description 9
- 238000004134 energy conservation Methods 0.000 claims abstract description 4
- 238000012545 processing Methods 0.000 claims abstract description 3
- 230000006870 function Effects 0.000 claims description 31
- 239000012528 membrane Substances 0.000 claims description 27
- 239000013598 vector Substances 0.000 claims description 26
- 238000010304 firing Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 12
- 238000013459 approach Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 5
- 238000012935 Averaging Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 4
- 238000001228 spectrum Methods 0.000 claims description 4
- 238000012421 spiking Methods 0.000 claims description 4
- 238000013135 deep learning Methods 0.000 claims description 3
- 230000001537 neural effect Effects 0.000 claims description 3
- 230000002123 temporal effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 239000006185 dispersion Substances 0.000 claims description 2
- 230000000877 morphologic effect Effects 0.000 claims description 2
- 238000005457 optimization Methods 0.000 claims 2
- 210000004027 cell Anatomy 0.000 claims 1
- 210000005036 nerve Anatomy 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 8
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 5
- 241000208340 Araliaceae Species 0.000 description 4
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 4
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 4
- 235000003140 Panax quinquefolius Nutrition 0.000 description 4
- 238000009795 derivation Methods 0.000 description 4
- 235000008434 ginseng Nutrition 0.000 description 4
- 229910052744 lithium Inorganic materials 0.000 description 4
- 102100030688 Histone H2B type 1-A Human genes 0.000 description 3
- 101001084688 Homo sapiens Histone H2B type 1-A Proteins 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 230000004438 eyesight Effects 0.000 description 2
- 238000011423 initialization method Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000017105 transposition Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000003925 brain function Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
- 238000010792 warming Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
本发明公布了一种用于图像数据分类的反馈型脉冲神经网络模型训练方法,构建反馈型脉冲神经网络模型并通过均衡态的隐式微分对模型进行训练,包括基于整合激活模型IF和泄露整合激活模型LIF两种脉冲神经元模型、以及单隐层和多隐层两种神经网络结构的反馈型脉冲神经网络模型,采用重参数化方法对反馈连接权重的谱范数进行约束,采用改进方法进行批归一化;本发明能够避免脉冲神经网络模型常见的训练困难问题,用于高性能且高效节能地进行计算机图像数据与神经形态图像视觉数据的分类处理,能够以更少的神经元数量、更小的参数量、和更少的时间步长取得更高的分类正确率。
Description
技术领域
本发明属于模式识别、机器学习、人工智能、图像处理及神经形态计算技术领域,涉及计算机图像数据分类方法和神经形态的图像视觉数据分类方法,具体涉及一种用于图像及神经形态数据分类的反馈型脉冲神经网络模型训练方法。
背景技术
在最近几年,脉冲神经网络(SNN)模型在图像数据分类的任务中由于计算上的节能性质受到了越来越多的关注。受启发于人脑中真实的神经元,拥有生物可行性的SNN模型的神经元之间通过发放脉冲信号进行信息传递,从而支持基于事件的计算方式,这能够在神经形态芯片上通过更少的能量消耗来实现。SNN模型可以处理计算机图像数据,同时也可以高效地处理神经形态的图像视觉数据(neuromorphic vision data)。神经形态数据是模仿人类的视觉感知的一种基于脉冲事件的数据,可以通过神经形态照相机生成。然而,SNN的直接监督训练仍是一个困难的任务,这妨碍了SNN模型在实际任务中的应用。由于复杂的脉冲神经元模型在计算上是不连续的、不可微的,因此适用于训练人工神经网络(ANN)模型的反向传播算法无法直接用于训练SNN模型。
脉冲神经网络常用的神经元模型包括整合激活模型(IF)和泄漏整合激活模型(LIF)。IF和LIF神经元模型分别通过一个微分方程维护一个膜电位、整合输入的电流,两个模型对于膜电位的动态由以下的微分方程进行描述:
其中u是膜电位,I是输入的电流,Vth是神经元脉冲发放的阈值,R和τm分别是电阻和时间常数。一旦膜电位u在时刻tf达到阈值Vth,神经元将发放一个脉冲信号,而膜电位将重置为静息电位u=urest,静息电位一般取为0。神经元发放的脉冲序列可由狄拉克δ函数表示为我们考虑简单的电流模型Ii(t)=∑jwijsj(t)+b,其中wij是神经元j到神经元i之间连接的权重,这和人工神经网络是一样的。上述微分方程经过离散化后,IF和LIF模型的通用的计算形式可表示为:
其中H(x)是Heaviside阶跃函数,si[t]是神经元i的二值的脉冲序列,对于IF模型λ是1,对于LIF模型λ<1是一个和常数τm与离散时间步长相关的泄漏项。常数R,τm和时间步长被融合进权重wij和偏置b。我们考虑减去阈值的形式作为膜电位重置操作。
为了训练得到高性能的SNN模型,大多数已有工作模仿ANN模型的前馈网络架构和沿时间反向传播(BPTT)计算梯度的框架,即沿着从时间上展开的计算图进行误差反向传播,并使用替代导数估计梯度的方法或者通过计算关于脉冲发放时间的梯度的方法来处理不可微的问题。例如Wu等人(Spatio-temporal backpropagation for training high-performance spiking neural networks)提出了四种替代脉冲发放二值函数的导数的连续函数,在前馈SNN的计算图上进行可微的误差反向传播以近似梯度,许多工作也都采用类似的方法对梯度进行估计和近似。另有一些工作通过针对脉冲发放的时刻计算关于脉冲发放时间的梯度,如Zhang和Li提出的TSSL-BP算法(Temporal spike sequence learningvia backpropagation for deep spiking neural networks)直接使用脉冲发放时间的梯度训练SNN模型,以及Kim等人提出结合替代导数和对于脉冲发放时间的梯度的方法训练SNN模型(Unifying activation-and timing-based learning rules for spikingneural networks)。然而,替代导数的方法受限于沿时间步长累积的近似误差,而基于脉冲发放时间的方法受限于“死亡神经元”的问题,即如果没有发放脉冲的神经元,学习将不会进行,这使得上述方法不能取得理想的结果;此外,这些方法都需要保存所有前向计算过程中各时间步长的中间变量,并在训练过程中沿这些变量进行反向传播,因此这需要占用大量的内存。现有技术尚未出现不同于沿计算图反向传播的方法而能够训练得到高性能的SNN模型的方法。
在另一方面,大多数近期的SNN模型简单地模仿ANN的前馈架构,而忽视了可能的反馈连接。有神经科学的证据表明反馈连接对人类视觉系统的物体识别有着重要的作用(Evidence that recurrent circuits are critical to the ventral stream’sexecution of core object recognition behaviour)。同时Kubilius等人(Brain-likeobject recognition with high-performing shallow recurrent ANNs)的研究表明带有反馈连接的浅层ANN在取得高性能的同时具有更高的和人脑功能的相似度。因此引入反馈连接可以让神经网络更浅、更高效、更类脑。反馈连接曾流行于早期的SNN模型中,如液体状态机(Liquid State Machine),且SNN天然地将计算多个时间步长,自然地支持反馈连接的计算。因此反馈型脉冲神经网络(FSNN)也是处理视觉任务一个自然的选择。对于FSNN模型,Zhang和Li提出了ST-RSBP监督训练算法(Spike-train level backpropagation fortraining deep recurrent spiking neural networks),其基于脉冲序列层面进行反向传播。然而他们简单地假设神经元的激活函数是线性的,且模型需要大量的时间步长才能在简单的任务上取得较好的结果。
发明内容
为了克服上述现有技术的不足,本发明提供一种用于图像数据分类的反馈型脉冲神经网络模型训练方法,通过构建反馈型脉冲神经网络,推导网络的均衡态,并使用均衡态不动点方程的隐式微分对模型进行训练,方法取名为IDE(Implicit Differentiation onthe Equilibrium state),通过本发明提供的训练方法训练得到的模型可用于高性能且高效节能地进行计算机图像数据和神经形态图像视觉数据(本发明中的图像数据即包括这两种数据类型)的分类与识别等视觉任务。
本发明中涉及的神经形态数据可通过神经形态照相机将计算机图像数据转换而生成。神经形态数据的像素点是使用脉冲序列,即值为0或1的时间序列来表示。本发明针对脉冲神经网络常用的神经元模型:整合激活模型(IF)和泄漏整合激活模型(LIF),构建了反馈型脉冲神经网络模型,它的输入为图像数据(计算机图像数据或者神经形态图像视觉数据),输出为预测的分类结果;通过推导构建的脉冲神经网络整体的放电频率的均衡态的不动点方程,利用不动点方程的隐式微分计算模型参数的梯度,构建的模型可以进行有效的训练。
为方便起见,本发明定义如下术语名称及参数:
u(t):连续情况下,一组脉冲神经元在时刻t的膜电位向量;
s(t):连续情况下,一组脉冲神经元在时刻t的脉冲信号向量;
x(t):连续情况下,时刻t的输入向量;
a(t):连续情况下,一组脉冲神经元在时刻t的平均放电频率向量;
κ(τ):连续情况下,LIF模型的响应核函数;
τm:连续情况下,LIF模型的时间常数;
u[t]:离散情况下,一组脉冲神经元在t个时间步长时的膜电位向量;
s[t]:离散情况下,一组脉冲神经元在t个时间步长时的脉冲信号向量;
x[t]:离散情况下,在t个时间步长时的输入向量;
a[t]:离散情况下,一组脉冲神经元在t个时间步长时的平均放电频率向量;
x*:平均或加权平均输入的均衡态;
a*:平均或加权平均放电频率的均衡态;
λ:离散情况下,LIF脉冲神经元的泄漏项参数;
Vth:神经元发放脉冲的阈值;
L:多隐层反馈型脉冲神经网络模型中隐层的数量;
l:多隐层反馈型脉冲神经网络模型中隐层的标号,可作为上标,如al[t]表示第l隐层的平均放电频率向量等;
i:一组神经元中神经元的标号,可作为下标,如ui[t]表示第i个神经元在t个时间步长时的膜电位等;
F:输入到隐层或隐层到隐层前馈连接的权重,加入上标Fl表示多隐层模型中第(l-1)层隐层到第l层隐层神经元的连接的权重矩阵(l>1)或者输入层到第1层隐层神经元的连接的权重矩阵(l=1);
W:隐层到隐层反馈连接的权重,加入上标W1表示多隐层模型中第L层隐层到第1层隐层神经元的反馈连接的权重矩阵;
b:偏置向量;
Wo:隐层和输出层全连接的权重矩阵;
o:输出层输出的向量;
y:数据样本的标签向量;
||W||2:矩阵W的谱范数;
本发明提供的技术方案是:
一种用于图像数据分类的反馈型脉冲神经网络模型训练方法,利用构建的反馈型SNN模型并通过均衡态的隐式微分对模型进行训练,可用于高性能且高效节能地进行计算机图像数据与神经形态图像视觉数据的分类,包括以下步骤:
1)将图像或神经形态数据分为训练样本和测试样本;
2)对训练样本进行预处理,进行标准数据增强:
21)对于图像数据,预处理可采用常用技术,如减去图像数据集的像素值的均值并除以标准差;数据增强可采用标准增强技术,如在图像每边增加4个零值像素,再进行随机裁剪;对图像进行随机水平翻转;对图像进行随机中心旋转;
22)对于神经形态数据,预处理可采用常用技术,如累积一段时间(如3ms)的脉冲数据以减小时间分辨率;
本发明中,通过神经形态照相机将计算机图像数据转换生成神经形态数据。神经形态数据的像素点使用脉冲序列(即值为0或1的时间序列)来表示。
3)构建反馈型脉冲神经网络:
本发明考虑IF和LIF两种脉冲神经元模型,以及单隐层和多隐层两种神经网络结构,构建基于IF模型的单隐层反馈型脉冲神经网络、基于IF模型的多隐层反馈型脉冲神经网络、基于LIF模型的单隐层反馈型脉冲神经网络和和基于LIF的多隐层反馈型脉冲神经网络模型,同时采用重参数化的方法对反馈连接权重的谱范数进行约束,以及采用改进的批归一化技术,步骤如下:
31)构建网络的输入层:
网络的输入层的输入是二值的神经形态数据或者实值的计算机图像。
32)构建带有反馈连接的网络的隐层:
对于单隐层反馈型脉冲神经网络,构建一组带有反馈连接的脉冲神经元作为隐层,输入层与隐层具有前馈连接,隐层与输出层具有前馈连接,隐层与自身具有反馈连接,见附图1的左图所示。
对于多隐层反馈型脉冲神经网络,构建多组(L组)脉冲神经元作为不同的隐层,输入层与第1层隐层具有前馈连接,第(l-1)层隐层与第l层隐层具有前馈连接,最后第L层隐层与输出层具有前馈连接,第L层隐层与第1层隐层具有反馈连接,见附图1的右图所示。其中输入层与隐层、隐层与隐层、隐层与输出层之间的连接均代表任意的线性操作,可以包括全连接的神经网络层、卷积神经网络层等等。
33)构建网络编码信息的方式:
对于基于IF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,本发明定义隐层神经元的平均放电率为:
平均输入为:
在离散情况下定义隐层神经元的平均放电率为:
平均输入为:
且u[0]=0,s[0]=0。
本发明使用平均放电率作为IF模型下脉冲神经网络编码信息的方式。
对于基于LIF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,定义隐层神经元的加权平均放电率为
加权平均输入为:
在离散情况下,定义隐层神经元的加权平均放电率为
加权平均输入为:
本发明使用加权平均放电率作为LIF模型下脉冲神经网络编码信息的方式。
34)构建网络的输出层:
网络的输出层采用一组不会发放脉冲和重置膜电位的神经元,这可以通过将脉冲神经元的脉冲发放阈值设为无穷大的方式实现,其数量和分类的类别数相同,并使用累积的膜电位的大小作为分类的标准。对于单隐层模型,隐层与输出层之间采用全连接的形式;对于多隐层模型,第L层隐层与输出层之间采用全连接的形式。输出层即为网络最后的分类层。在IF和LIF模型中,网络最后用于分类的输出都等价于对隐层的(加权)平均放电率进行一个线性变换,即o=Woa[T],其中Wo是隐层和输出层全连接的权重矩阵。
35)采用重参数化的方法对反馈连接权重的谱范数进行约束:
在上述步骤3)构建的反馈型脉冲神经网络的基础上,引入对反馈连接权重的重参数化,从而对谱范数进行约束,保证网络到均衡态的收敛性。重参数化方法表示为:
其中,α是一个可学习的参数,并通过裁剪的方式被约束在[-c,c]的范围内(c是一个常数),而权重的谱范数||W||2采用和谱归一化技术(Spectral normalization forgenerative adversarial networks)相同的计算方式进行计算。
36)采用改进的批归一化技术:
本发明改进的批归一化技术在网络前向计算时固定均值和方差统计量为累积的统计量,这样批归一化可视作一个简单的线性操作,可以被整合进入线性层的运算中而不影响网络到均衡态的收敛性质;而在步骤4)中使用均衡态的不动点方程的隐式微分进行网络训练时,批归一化技术中的统计量采用常规的计算方式,即使用这一批次样本的统计量,同时使用动量累积的方式更新累积的统计量。本发明对所有前馈连接的权重施加上述改进的批归一化技术
4)通过均衡态不动点方程的隐式微分训练反馈型脉冲神经网络:
基于步骤3)中构建的单隐层或多隐层反馈型脉冲神经网络,通过推导网络的均衡态的不动点方程,并基于该方程的隐式微分计算损失函数关于权重的梯度,对网络进行训练,包括如下步骤:
41)推导单隐层和多隐层网络在IF和LIF模型下的均衡态及服从的不动点方程:
411)对基于IF模型的单隐层反馈型脉冲神经网络,在连续情况下可以证明:当平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率将收敛到一个均衡态a(t)→a*,且均衡态服从不动点方程(其中ReLU(x)=max(x,0)),表示为:
在离散情况下,可以证明当平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率将收敛到一个均衡态a[t]→a*,且均衡态服从不动点方程,表示为:
412)对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况下可以证明当加权平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率将以有界的随机误差逼近一个均衡态,且均衡态服从和式3相同的不动点方程。在离散情况下,可以证明当加权平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率将以有界的随机误差逼近一个均衡态,且均衡态服从和式4相同的不动点方程。
413)对多隐层反馈型脉冲神经网络,可以推出在IF模型、离散情况下,当平均输入收敛到一个均衡点且网络连接的权重的谱范数被约束为时,IF模型下多隐层反馈型脉冲神经网络各层的平均放电率在离散情况下将收敛到均衡态且均衡态服从不动点方程:
42)基于不动点方程的隐式微分训练网络:
基于步骤41)中的推导,可近似地认为经过T个时间步长后的平均或加权平均放电率a[T]收敛到了均衡态并服从均衡态的不动点方程,进而可以利用不动点方程的隐式微分计算损失函数关于参数的梯度,步骤如下:
422)基于步骤41)中推导的均衡态不动点方程式4或式5(方便起见,此处统一将方程记为a=fθ(a),其中θ表示网络的参数),通过隐式微分可求解梯度。记为关于均衡态a*的损失函数,其可通过和o=Woa[T]进行表示,并记gθ(a)=fθ(a)-a。不动点方程上的隐式微分满足则关于参数的微分可基于隐式微分计算,表示为:
其中是gθ在a*处的雅克比矩阵的逆。为了计算上述微分,本发明遵从Bai等人(Deep equilibrium models,Multiscale deep equilibrium models)的方法求解一个线性系统可以使用二阶拟牛顿法Broyden’s方法(Deepequilibrium models,Multiscale deep equilibrium models)求解这个方程,或者也可以使用不动点迭代的更新方式等方法进行求解。
423)根据步骤422)中求解得到的损失函数关于参数的梯度,可基于训练数据集使用常用的基于梯度的方法对网络进行优化训练,如随机梯度下降算法(SGD)及其变体等。
具体实施时,本发明中使用带Nesterov动量的随机梯度下降算法进行模型的训练,动量为0.9,权重衰减因子为0.0005。训练过程迭代100轮,批大小为128,即每128个样本为一个批次。网络参数的初始化遵从Wu等人提出的初始化方法(Spatio-temporalbackpropagation for training high-performance spiking neural networks)。此外,训练过程中将在每层采用变分丢弃法(variational dropout)(Deep equilibriummodels,Multiscale deep equilibrium models),丢弃率取为0.2。该反馈型脉冲神经网络的构建和训练可以在深度学习框架PyTorch下实现。
5)利用步骤3)和步骤4)构建并训练好的反馈型脉冲神经网络模型,对测试图像或神经形态数据样本进行识别,得到预测的数据分类标签,由此实现图像数据分类,其中测试样本无需经过数据增强。
本发明的有益效果是:
本发明提供了一种用于图像数据分类的反馈型脉冲神经网络模型训练方法。本发明构建了基于IF和LIF神经元模型的单隐层和多隐层反馈型脉冲神经网络,推导了构建的网络的整体的放电频率的均衡态的不动点方程,并利用不动点方程的隐式微分计算模型参数的梯度从而对模型进行训练与优化,新型的训练方法称为IDE。
本发明提出的模型和训练算法能够避免脉冲神经网络模型常见的训练困难问题,包括计算过程不可微导致无法准确求出梯度、沿计算图反向传播需要大量的内存消耗等,从而得以训练得到高性能且低耗能的脉冲神经网络模型。在图像识别任务数据集MNIST,Fashion-MNIST,CIFAR-10和CIFAR-100上,以及神经形态数据分类任务数据集N-MNIST上,本发明与现有的脉冲神经网络模型相比,能够以更少的神经元数量、更小的参数量、和更少的时间步长取得类似或显著更好的效果。
附图说明
图1是本发明构建的单隐层和多隐层反馈型脉冲神经网络架构的示意图:
其中左图为单隐层反馈型脉冲神经网络架构,右图为多隐层反馈型脉冲神经网络架构。
图2是本发明实现通过均衡态不动点方程的隐式微分训练构建的反馈型脉冲神经网络的流程框图。
图3是本发明实现的反馈型脉冲神经网络模型的平均放电率的均衡态收敛性的示意图:
其中(a)为在MNIST数据集上单隐层反馈型脉冲神经网络的收敛性示意,(b)为在Fashion-MNIST数据集上单隐层反馈型脉冲神经网络的收敛性示意,(c)为在CIFAT-10数据集上多隐层反馈型脉冲神经网络的收敛性示意。
具体实施方式
下面结合附图,通过实施例进一步描述本发明,但不以任何方式限制本发明的范围。
本发明提供了一种用于图像数据分类的反馈型脉冲神经网络模型训练方法,通过构建反馈型脉冲神经网络,推导网络的均衡态,并使用均衡态不动点方程的隐式微分对模型进行训练,训练得到的模型可用于高性能且高效节能地进行计算机图像数据和神经形态图像视觉数据分类与识别等视觉任务。包括以下步骤:
步骤1:将图像数据分为训练样本和测试样本,本实施例所有数据集为MNIST,Fashion-MNIST,CIFAR-10,CIFAR-100和N-MNIST数据集,其中MNIST和Fashion-MNIST数据集均由70,000张大小为2S×28的灰度图像组成,其中训练数据60,000张,测试数据10,000张,类别均为10类;CIFAR-10和CIFAR-100均由60,000张大小为32×32的RGB彩色图像组成,其中训练数据50,000张,测试数据10,000张,类别分别为10类和100类;N-MNIST由70,000个神经形态数据组成,空间分辨率大小为34×34,具有ON和OFF事件脉冲两个通道,时长300ms,分辨率1μs,类别为10类。
步骤2:对训练样本进行预处理和数据增强。对图像数据,预处理包括:减去图像数据集的像素值的均值并除以标准差;数据增强操作仅对CIFAR-10和CIFAR-100数据集实施,包括:在图片每边增加4个零值像素,然后进行随机裁剪;对图片进行随机水平翻转。对神经形态数据,预处理包括:累积3ms的脉冲数据以降低时间分辨率。
步骤3:构建反馈型脉冲神经网络。本发明考虑IF和LIF两种脉冲神经元模型,以及单隐层和多隐层两种神经网络结构,构建基于IF模型的单隐层反馈型脉冲神经网络、基于IF模型的多隐层反馈型脉冲神经网络、基于LIF模型的单隐层反馈型脉冲神经网络和和基于LIF的多隐层反馈型脉冲神经网络模型,同时采用重参数化的方法对反馈连接权重的谱范数进行约束,以及采用改进的批归一化技术,步骤如下:
1)构建网络的输入层:
对于图像数据,网络的输入层的输入在各个时刻都是实值的图像数据,可以视作隐层神经元输入的电流信号;对于神经形态数据,网络的输入层的输入是二值的神经形态脉冲信号,可以视作输入的脉冲信号。
2)构建带有反馈连接的网络的隐层:
21)单隐层反馈型脉冲神经网络构建一组带有反馈连接的脉冲神经元作为隐层,输入层与隐层具有前馈连接,隐层与输出层具有前馈连接,隐层与自身具有反馈连接,见附图1的左图所示。在IF模型下,膜电位的微分方程及其离散形式可表示为:
u[t+1]=u[t]+Ws[t]+Fx[t]+b-Vths[t+1], 式8
其中Δtd是反馈连接的时间延迟,在离散情况下本发明简单地考虑延迟在一个离散的时间步长内。W和F代表任意的线性操作,可以包括全连接的神经网络层、卷积神经网络层等等。
而在LIF模型下,膜电位的微分方程及其离散形式可表示为:
u[t+1]=λu[t]+Ws[t]+Fx[t]+b-Vths[t+1] 式10
22)多隐层反馈型脉冲神经网络构建多组(L组)脉冲神经元作为不同的隐层,输入层与第1层隐层具有前馈连接,第(l-1)层隐层与第l层隐层具有前馈连接,最后第L层隐层与输出层具有前馈连接,第L层隐层与第1层隐层具有反馈连接,见附图1的右图所示。在IF模型和LIF模型下,膜电位的微分方程的通用的离散形式可表示为:
本发明同样简单地考虑延迟在一个离散的时间步长内。W1和Fl代表任意的线性操作,可以包括全连接的神经网络层、卷积神经网络层等等。
3)构建网络编码信息的方式:
对于基于IF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,本发明定义隐层神经元的平均放电率为:
平均输入为:
在离散情况下定义隐层神经元的平均放电率为:
平均输入为:
且u[0]=0,s[0]=0。
本发明使用平均放电率作为IF模型下脉冲神经网络编码信息的方式。
对于基于LIF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,定义隐层神经元的加权平均放电率为:
加权平均输入为:
在离散情况下,定义隐层神经元的加权平均放电率为:
加权平均输入为:
本发明使用加权平均放电率作为LIF模型下脉冲神经网络编码信息的方式。
4)构建网络的输出层:
网络的输出层采用一组不会发放脉冲和重置膜电位的神经元,这可以通过将脉冲神经元的脉冲发放阈值设为无穷大的方式实现,其数量和分类的类别数相同,并使用累积的膜电位的大小作为分类的标准。对于单隐层模型,隐层与输出层之间采用全连接的形式;对于多隐层模型,第L层隐层与输出层之间采用全连接的形式。输出层即为网络最后的分类层。在IF和LIF模型中,网络最后用于分类的输出都等价于对隐层的(加权)平均放电率进行一个线性变换,即o=Woa[T],其中Wo是隐层和输出层全连接的权重矩阵。
5)采用重参数化的方法对反馈连接权重的谱范数进行约束:
在上述步骤2构建的反馈型脉冲神经网络的基础上,引入对反馈连接权重的重参数化,从而对谱范数进行约束,保证网络到均衡态的收敛性。重参数化方法表示为:
其中α是一个可学习的参数,并通过裁剪的方式被约束在[-c,c]的范围内(c是一个常数),而权重的谱范数||W||2将采用和谱归一化技术(Spectral normalization forgenerative adversarial networks)相同的计算方式进行计算。对单隐层的网络,本发明即对隐层的反馈连接施加重参数化;对多隐层网络,本发明仅对第N层隐层到第1层隐层神经元的反馈连接施加重参数化。
6)采用改进的批归一化技术:
批归一化技术(Batch normalization:Accelerating deep network trainingby reducing internal covariate shift)在人工神经网络中被广泛用于加速网络训练并提升性能。本发明对批归一化的计算方式进行一定的改进以适用于本发明中的反馈型神经网络。对一个d维的数据x=(x(1)...x(d)),批归一化对数据进行如下的变换:
其中E[x(k)]和Var[x(k)]是整个数据集的均值和方差的统计量,γ(k),β(k)是可学习的参数。改进的批归一化技术在网络前向计算时固定统计量为累积的统计量,这样批归一化可视作一个简单的线性操作,可以被整合进入线性层的运算中而将不影响网络到均衡态的收敛性质;而在使用均衡态的不动点方程的隐式微分进行训练时,批归一化技术中的统计量将采用常规的计算方式,即使用这一批次样本的统计量,同时使用动量累积的方式更新累积的统计量。本发明对所有前馈连接的权重施加上述修改的批归一化技术。
本实施例中,对于MNIST,Fashion-MNIST和N-MNIST数据集,本发明构建单隐层反馈型脉冲神经网络:对于MNIST和N-MNIST,输入层到隐层的前馈连接是卷积核大小为5,输出通道数为64的卷积运算,隐层到自身的反馈连接也是卷积核大小为5,输出通道数为64的卷积运算,隐层到输出层的前馈连接是输出维度为10的全连接层;对于Fashion-MNIST,输入层到隐层的前馈连接是输出维度为400的全连接层,隐层到自身的反馈连接也是输出维度为400的全连接层,隐层到输出层的前馈连接是输出维度为10的全连接层。对于CIFAR-10和CIFAR-100数据集,本发明构建多隐层反馈型脉冲神经网络,并基于Wu等人(Directtraining for spiking neural networks:Faster,larger,better)使用的AlexNet和CIFARNet架构进行修改改为反馈型网络:修改后的AlexNet-F架构具有5个隐层,前馈连接均为卷积运算,其中卷积核大小均为3,输出通道数依次为96,256,384,384,256,第一个和第三个卷积运算的空间步长为2,最后一层隐层到第一层隐层的反馈连接为转置卷积运算,卷积核大小为3,输出通道数为96,空间上采样步长为2,最后一层隐层到输出层的前馈连接是输出维度为10的全连接层;修改后的CIFARNet-F架构具有5个隐层,前馈连接均为卷积运算,其中卷积核大小均为3,输出通道数依次为128,256,512,1024,512,第一个和第三个卷积运算的空间步长为2,最后一层隐层到第一层隐层的反馈连接为转置卷积运算,卷积核大小为3,输出通道数为128,空间上采样步长为2,最后一层隐层到输出层的前馈连接是输出维度为10的全连接层。本发明对连接权重谱范数的约束取为c=1。
步骤4:将预处理和数据增强过的训练样本在构建的反馈型脉冲神经网络上通过均衡态不动点方程的隐式微分进行训练。基于步骤3中构建的单隐层或多隐层反馈型脉冲神经网络,本发明将通过推导网络的均衡态的不动点方程,并基于该方程的隐式微分计算损失函数关于权重的梯度,对网络进行训练,包括如下步骤:
1)推导单隐层和多隐层网络在IF和LIF模型下的均衡态及服从的不动点方程:
11)对基于IF模型的单隐层反馈型脉冲神经网络,在连续情况下,根据步骤3中定义的平均放电率和平均输入,通过对式7进行积分,可得关于平均放电率的迭代式:
由于神经元在累积的膜电位为负时,神经元不会放电,因此若 神经元不会放电,其累积的膜电位将仍剩余在最终的膜电位中,则最终的膜电位可被分解为其中是累积的负数项,而是累积的正数项,正数项通常被限制在0到阈值Vth之间。通过这个分解,式12可转化为一个具有逐元素施加ReLU函数(ReLU(x)=max(x,0))和有界的的表达式:
基于式13,可以证明当平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率在连续情况下将收敛到一个均衡态a(t)→a*,且均衡态服从不动点方程
在离散情况下,根据步骤3中定义的平均放电率和平均输入,通过对式8进行累和,可得关于平均放电率的迭代式:
与连续情况不同,a[t]是被约束在[0,1]之间的,因为离散的t个时间步长最多有t个脉冲信号。则累积的超过t个阈值的膜电位也将剩余在最终的膜电位中。膜电位可类似地被分解为其中是剩余的负数项或超过t个阈值的正数项,而是一个有界的项。通过这个分解可得表达式:
其中基于式13,可以证明当平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率在离散情况下将收敛到一个均衡态a[t]→a*,且均衡态服从不动点方程
以上推导得到了单隐层的基于IF模型的反馈型脉冲神经网络的均衡态及不动点方程。
12)对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况下,根据步骤3中定义的加权平均放电率和加权平均输入,通过对式9进行积分,可得关于加权平均放电率的迭代式:
与IF模型的严格收敛到均衡态的情况不同,由于因此LIF模型的情况下存在由导致的随机误差,其不会随时间趋于0。这个情况下,我们可以视作加权平均放电率以一定有界的随机误差不断逼近一个均衡态。基于式17,可以证明当加权平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率在连续情况下将以一定有界的随机误差逼近一个均衡态,且均衡态服从不动点方程
在离散情况下,类似地可以得到当加权平均输入收敛到一个均衡点且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率在离散情况下将以一定有界的随机误差逼近一个均衡态,且均衡态服从不动点方程
以上推导得到了单隐层的基于LIF模型的反馈型脉冲神经网络的均衡态及不动点方程。不动点方程和IF模型的是一致的。
13)对多隐层反馈型脉冲神经网络,采用类似的方法可以推出,在IF模型、离散情况下,当平均输入收敛到一个均衡点且网络连接的权重的谱范数被约束为时,IF模型下多隐层反馈型脉冲神经网络各层的平均放电率在离散情况下将收敛到均衡态且均衡态服从不动点方程其中 而在LIF模型、离散情况下,同样可以推出当加权平均输入收敛到一个均衡点且网络连接的权重满足上述约束时,加权平均放电率以一定有界的随机误差不断逼近一个均衡态,且均衡态的不动点方程和IF模型的是一致的。以上得到了多隐层的基于IF和LIF模型的反馈型脉冲神经网络的均衡态及不动点方程。
2)基于不动点方程的隐式微分训练网络:
基于1)中的推导,可近似地认为经过T个时间步长后的(加权)平均放电率a[T]收敛到了均衡态并服从均衡态的不动点方程,进而可以利用不动点方程的隐式微分计算损失函数关于参数的梯度,步骤如下:
22)基于1)中推导的均衡态不动点方程式4或式5(方便起见,此处统一将方程记为a=fθ(a),其中θ表示网络的参数),通过隐式微分可求解梯度。记为关于均衡态a*的损失函数,其可通过和o=Woa[T]进行表示,并记gθ(a)=fθ(a)-a。不动点方程上的隐式微分满足则关于参数的微分可基于隐式微分计算,表示为:
其中是gθ在a*处的雅克比矩阵的逆。为了计算上述微分,本发明遵从Bai等人(Deep equilibrium models,Multiscale deep equilibrium models)的方法求解一个线性系统可以使用二阶拟牛顿法Broyden’s方法(Deepequilibrium models,Multiscale deep equilibrium models)求解这个方程,或者也可以使用不动点迭代的更新方式等方法进行求解。然后,基于求得的解与可以计算损失函数关于所有参数的梯度。以上求偏微分的部分可由自动微分实现。
本实施例中,对于MNIST,Fashion-MNIST,CIFAR-10和CIFAR-100数据集,使用Broyden’s方法求解上述的线性系统,阈值设为30;对于N-MNIST数据集,使用不动点迭代的方式求解上述的线性系统,并通过的修改形式以加速收敛,迭代次数设为30。
23)根据22)中求解得到的损失函数关于参数的梯度,可基于训练数据集使用常用的基于梯度的方法对网络进行优化训练,如随机梯度下降算法(SGD)及其变体等。
本实施例中使用带Nesterov动量的随机梯度下降算法进行模型的训练,动量为0.9,权重衰减因子为0.0005。训练过程迭代100轮,批大小为128,即每128个样本为一个批次。对于MNIST,Fashion-MNIST和N-MNIST数据集,学习速率初始值为0.05,在31至60轮学习速率为0.005,在61至90轮学习速率为0.0005,在91至100轮学习速率为0.00005;对于CIFAR-10和CIFAR-100数据集,学习速率初始值为0.05,在最初400次迭代中使用线性学习率热身,在51至75轮学习速率为0.005,在76至100轮学习速率为0.0005。网络参数的初始化遵从Wu等人提出的初始化方法(Spatio-temporal backpropagation for training high-performance spiking neural networks)。此外,训练过程中将在每层采用变分丢弃法(variational dropout)(Deep equilibrium models,Multiscale deep equilibriummodels),丢弃率取为0.2。脉冲神经元的超参数设为Vth=2,对于LIF模型的泄漏项,在MNIST,Fashion-MNIST和N-MNIST数据集上设为λ=0.95,在CIFAR-10和CIFAR-100数据集上设为λ=0.99。该反馈型脉冲神经网络的构建和训练可以在深度学习框架PyTorch下实现。
步骤5:利用步骤3和步骤4构建并训练好的反馈型脉冲神经网络模型,对测试图像或神经形态数据样本进行识别,得到预测的数据分类标签,由此实现图像数据分类,其中测试样本无需经过数据增强。
表1,表2,表3,表4,表5分别给出了本发明训练的基于IF和LIF神经元模型的反馈型脉冲神经网络模型IDE-IF和IDE-LIF和其他脉冲神经网络模型在MNIST,Fashion-MNIST,N-MNIST,CIFAR-10和CIFAR-100数据集上的分类正确率比较:
表1 MNIST数据集上的比较结果
模型训练方法 | 网络架构 | 时间步长 | 正确率 | 神经元数量 | 参数量 |
BP | 20C5-P2-50C5-P2-200 | >200 | 99.31% | 33K | 518K |
STBP | 15C5-P2-40C5-P2-300 | 30 | 99.42% | 26K | 607K |
SLAYER | 12C5-P2-64C5-P2 | 300 | 99.41% | 28K | 51K |
HM2BP | 15C5-P2-40C5-P2-300 | 400 | 99.49% | 26K | 607K |
ST-RSBP | 15C5-P2-40C5-P2-300 | 400 | 99.62% | 26K | 607K |
TSSL-BP | 15C5-P2-40C5-P2-300 | 5 | 99.53% | 26K | 607K |
IDE-IF | 64C5s(F64C5) | 30 | 99.55% | 13K | 229K |
IDE-LIF | 64C5s(F64C5) | 30 | 99.59% | 13K | 229K |
表2 Fashion-MNIST数据集上的比较结果
模型训练方法 | 网络架构 | 时间步长 | 正确率 | 神经元数量 | 参数量 |
ANN | 512-512 | / | 89.01% | 1.8K | 670K |
HM2BP | 400-400 | 400 | 88.99% | 1.6K | 478K |
TSSL-BP | 400-400 | 5 | 89.80% | 1.6K | 478K |
ST-RSBP | 400(F400) | 400 | 90.13% | 1.2K | 478K |
IDE-IF | 400(F400) | 5 | 90.14% | 1.2K | 478K |
IDE-LIF | 400(F400) | 5 | 90.25% | 1.2K | 478K |
表3 N-MNIST数据集上的比较结果
表4 CIFAR-10数据集上的比较结果
模型训练方法 | 网络架构 | 时间步长 | 正确率 | 神经元数量 | 参数量 |
ANN-SNN | CIFARNet | 400-600 | 90.61% | 726K | 45M |
ANN-SNN | VGG-16 | 2500 | 91.55% | 311K | 15M |
ANN-SNN | VGG-16 | 400-600 | 92.26% | 318K | 40M |
Hybrid Training | VGG-16 | 100 | 91.13% | 318K | 40M |
STBP | AlexNet | 12 | 85.24% | 595K | 21M |
TSSL-BP | AlexNet | 5 | 89.22% | 595K | 21M |
STBP | CIFARNet | 12 | 90.53% | 726K | 45M |
TSSL-BP | CIFARNet | 5 | 91.41% | 726K | 45M |
Surrogate gradient | VGG-9 | 100 | 90.45% | 274K | 5.9M |
ASF-BP | VGG-7 | 400 | 91.35% | >240K | >30M |
IDE-LIF | AlexNet-F | 30 | 91.92% | 159K | 3.7M |
IDE-LIF | AlexNet-F | 100 | 92.15% | 159K | 3.7M |
IDE-LIF | CIFARNet-F | 30 | 92.23% | 232K | 11.8M |
IDE-LIF | CIFARNet-F | 100 | 92.82% | 232K | 11.8M |
表5 CIFAR-100数据集上的比较结果
模型训练方法 | 网络架构 | 时间步长 | 正确率 | 神经元数量 | 参数量 |
ANN | VGG-16 | / | 71.22% | 311K | 15M |
ANN-SNN | VGG-16 | 2500 | 70.77% | 311K | 15M |
ANN-SNN | VGG-16 | 400-600 | 70.55% | 318K | 40M |
ANN-SNN | VGG-* | 300 | 71.84% | 540K | 9.7M |
IDE-LIF | CIFARNet-F | 30 | 72.10% | 232K | 14.8M |
IDE-LIF | AlexNet-F | 100 | 72.23% | 159K | 5.2M |
IDE-LIF | CIFARNet-F | 100 | 73.43% | 232K | 14.8M |
从表中可以看出,和其他的脉冲神经网络模型相比,本发明的方法训练的反馈型脉冲神经网络模型在各个数据集上可以以更少的神经元数量、更小的参数量、和更小的时间步长取得类似或者显著更好的结果。特别的,在Fashion-MNIST数据集上,本发明的模型可以仅用5个时间步长取得更好的结果。在复杂的CIFAR-100数据集上,本发明的模型仅用30个时间步长就可以超过现有的结果最好的方法(300个时间步长),且如果使用100个时间步长,本发明的分类正确率可以提升1.59%。这说明了本发明提出的模型和训练方法的有效性,训练得到的模型可用于高性能且高效节能地进行图像数据的分类识别等任务。
需要注意的是,公布实施例的目的在于帮助进一步理解本发明,但是本领域的技术人员可以理解:在不脱离本发明及所附权利要求的范围内,各种替换和修改都是可能的。因此,本发明不应局限于实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。
Claims (10)
1.一种用于图像数据分类的反馈型脉冲神经网络模型训练方法,构建反馈型脉冲神经网络模型并通过均衡态的隐式微分对模型进行训练,用于高性能且高效节能地进行计算机图像数据与神经形态图像视觉数据的分类处理,包括以下步骤:
1)将图像或神经形态数据分为训练样本和测试样本;
2)对训练样本进行标准数据增强预处理:
3)构建反馈型脉冲神经网络:基于整合激活模型IF和泄漏整合激活模型LIF两种脉冲神经元模型,以及单隐层和多隐层两种神经网络结构,构建基于IF模型的单隐层反馈型脉冲神经网络、基于IF模型的多隐层反馈型脉冲神经网络、基于LIF模型的单隐层反馈型脉冲神经网络和和基于LIF的多隐层反馈型脉冲神经网络模型,采用重参数化方法对反馈连接权重的谱范数进行约束,采用改进方法进行批归一化;
定义如下参数:
u(t):连续情况下,一组脉冲神经元在时刻t的膜电位向量;
s(t):连续情况下,一组脉冲神经元在时刻t的脉冲信号向量;
x(t):连续情况下,时刻t的输入向量;
a(t):连续情况下,一组脉冲神经元在时刻t的平均放电频率向量;
k(τ):连续情况下,LIF模型的响应核函数;
τm:连续情况下,LIF模型的时间常数;
u[t]:离散情况下,一组脉冲神经元在t个时间步长时的膜电位向量;
s[t]:离散情况下,一组脉冲神经元在t个时间步长时的脉冲信号向量;
x[t]:离散情况下,在t个时间步长时的输入向量;
a[t]:离散情况下,一组脉冲神经元在t个时间步长时的平均放电频率向量;
x*:平均或加权平均输入的均衡态;
α*:平均或加权平均放电频率的均衡态;
λ:离散情况下,LIF脉冲神经元的泄漏项参数;
Vth:神经元发放脉冲的阈值;
L:多隐层反馈型脉冲神经网络模型中隐层的数量;
构建反馈型脉冲神经网络具体如下:
31)构建网络的输入层;网络的输入层的输入是二值的神经形态数据或者实值的计算机图像;
32)构建带有反馈连接的网络的隐层:
对于单隐层反馈型脉冲神经网络,构建一组带有反馈连接的脉冲神经元作为隐层,输入层与隐层具有前馈连接,隐层与输出层具有前馈连接,隐层与自身具有反馈连接;
对于多隐层反馈型脉冲神经网络,构建L组脉冲神经元作为不同的隐层,输入层与第1层隐层具有前馈连接,第(l-1)层隐层与第l层隐层具有前馈连接,最后的第L层隐层与输出层具有前馈连接,第L层隐层与第1层隐层具有反馈连接;其中输入层与隐层、隐层与隐层、隐层与输出层之间的连接均代表任意的线性操作,包括全连接的神经网络层、卷积神经网络层;
33)构建网络编码信息的方式:
对于基于IF的单隐层反馈型脉冲神经网络模型:
使用平均放电率作为单隐层反馈型脉冲神经网络模型下的脉冲神经网络编码信息的方式;
对于基于LIF的单隐层反馈型脉冲神经网络模型:
使用加权平均放电率作为LIF模型下脉冲神经网络编码信息的方式;
34)构建网络的输出层:
网络的输出层采用一组不会发放脉冲和重置膜电位的神经元,其数量和分类的类别数相同;对于单隐层模型,隐层与输出层之间采用全连接的形式;对于多隐层模型,第L层隐层与输出层之间采用全连接的形式;输出层即为网络最后的分类层;
输出均等价于对隐层的平均或加权平均放电率进行线性变换,即o=Woa[T],其中Wo是隐层和输出层全连接的权重矩阵;
35)采用重参数化的方法对反馈连接权重的谱范数进行约束:
在步骤3)构建的反馈型脉冲神经网络中引入对反馈连接权重的重参数化,从而对谱范数进行约束,保证网络到均衡态的收敛性;重参数化方法表示为:
其中,α是一个可学习的参数,并通过裁剪的方式被约束在[-c,c]的范围内;c是一个常数;权重的谱范数||W||2采用和谱归一化方法进行计算;
36)采用改进的批归一化方法,在网络前向计算时固定均值和方差统计量为累积的统计量;
4)通过均衡态不动点方程的隐式微分训练反馈型脉冲神经网络:
对步骤3)中构建的单隐层或多隐层反馈型脉冲神经网络模型,通过推导网络的均衡态的不动点方程,并基于该方程的隐式微分计算损失函数关于权重的梯度,对网络模型进行训练,包括如下步骤:
41)推导单隐层和多隐层网络在IF和LIF模型下的均衡态及服从的不动点方程:
411)对基于IF模型的单隐层反馈型脉冲神经网络,在连续情况下服从的均衡态不动点方程表示为:
其中,ReLU(x)=max(x,0);x*为均衡点;a*为均衡态;F为输入到隐层或隐层到隐层前馈连接的权重;b为偏置向量;
在离散情况下,均衡态服从不动点方程表示为:
412)对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况下均衡态服从和式3相同的不动点方程;在离散情况下,均衡态服从和式4相同的不动点方程;
413)对多隐层反馈型脉冲神经网络,
在IF模型、离散情况下,均衡态服从不动点方程:
在LIF模型、离散情况下,加权平均放电率以有界的随机误差不断逼近一个均衡态,且均衡态的不动点方程和式5相同;
42)基于不动点方程的隐式微分计算损失函数关于参数的梯度,对网络模型进行训练,步骤如下:
421)首先构建训练的损失函数:
422)统一将基于步骤41)中的均衡态不动点方程式4或式5记为a=fθ(a),其中θ表示网络的参数;通过隐式微分求解梯度;
423)根据步骤422)中求解得到的损失函数关于参数的梯度,基于训练数据集使用基于梯度的方法对网络进行优化训练;
5)利用步骤3)和步骤4)构建并训练好的反馈型脉冲神经网络模型,对测试图像或神经形态数据样本进行识别,得到预测的数据分类标签,由此实现图像数据分类,其中测试样本无需经过数据增强。
2.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤2)对训练样本进行预处理,包括:
21)对于图像数据,进行预处理包括:采用标准增强技术进行数据增强、裁剪、水平翻转或旋转;
22)通过神经形态照相机将计算机图像数据转换生成神经形态数据;对于神经形态数据,预处理包括累积一段时间的脉冲数据以减小时间分辨率。
6.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤422)中,具体使用二阶拟牛顿法Broyden’s方法,或使用不动点迭代的更新方式求解线性系统方程。
7.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤423)采用随机梯度下降算法SGD及其变体算法进行优化训练,具体使用带Nesterov动量的随机梯度下降算法进行模型训练。
8.如权利要求7所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,所述带Nesterov动量的随机梯度下降算法具体采用:动量为0.9,权重衰减因子为0.0005;训练过程迭代轮数为100轮,批大小为128。
9.如权利要求7所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,进行网络参数的初始化;在训练过程中,每层采用变分丢弃法,丢弃率取为0.2。
10.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,采用深度学习框架PyTorch实现所述反馈型脉冲神经网络模型的构建和训练。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110827709.9A CN113449864B (zh) | 2021-07-21 | 2021-07-21 | 用于图像数据分类的反馈型脉冲神经网络模型训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110827709.9A CN113449864B (zh) | 2021-07-21 | 2021-07-21 | 用于图像数据分类的反馈型脉冲神经网络模型训练方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113449864A true CN113449864A (zh) | 2021-09-28 |
CN113449864B CN113449864B (zh) | 2023-08-25 |
Family
ID=77817016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110827709.9A Active CN113449864B (zh) | 2021-07-21 | 2021-07-21 | 用于图像数据分类的反馈型脉冲神经网络模型训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113449864B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113628615A (zh) * | 2021-10-12 | 2021-11-09 | 中国科学院自动化研究所 | 语音识别方法、装置、电子设备及存储介质 |
CN113902106A (zh) * | 2021-12-06 | 2022-01-07 | 成都时识科技有限公司 | 脉冲事件决策装置、方法、芯片及电子设备 |
CN114065806A (zh) * | 2021-10-28 | 2022-02-18 | 贵州大学 | 基于脉冲神经网络的机械手触觉数据分类方法 |
CN114332545A (zh) * | 2022-03-17 | 2022-04-12 | 之江实验室 | 一种基于低比特脉冲神经网络的图像数据分类方法和装置 |
CN114998659A (zh) * | 2022-06-17 | 2022-09-02 | 北京大学 | 随时间在线训练脉冲神经网络模型的图像数据分类方法 |
CN115048979A (zh) * | 2022-04-29 | 2022-09-13 | 贵州大学 | 一种基于正则化的机器人触觉脉冲数据分类方法 |
CN116056285A (zh) * | 2023-03-23 | 2023-05-02 | 浙江芯源交通电子有限公司 | 一种基于神经元电路的信号灯控制系统及电子设备 |
CN116503671A (zh) * | 2023-06-25 | 2023-07-28 | 电子科技大学 | 基于有效秩张量近似的残差网络压缩的图像分类方法 |
WO2023212857A1 (zh) * | 2022-05-05 | 2023-11-09 | 中国科学院深圳先进技术研究院 | 一种基于类脑智能的脑机接口系统及设备 |
CN117493955A (zh) * | 2023-11-01 | 2024-02-02 | 北京大学 | 一种癫痫患者的脑电信号分类模型的训练方法 |
CN117709417A (zh) * | 2022-10-09 | 2024-03-15 | 航天科工集团智能科技研究院有限公司 | 一种基于膜电位分布约束的脉冲神经网络训练方法及设备 |
CN117709418A (zh) * | 2022-10-09 | 2024-03-15 | 航天科工集团智能科技研究院有限公司 | 基于实值放电的脉冲神经网络训练方法、识别系统及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106502983A (zh) * | 2016-10-17 | 2017-03-15 | 清华大学 | 隐式狄利克雷模型的事件驱动的坍缩吉布斯采样方法 |
CN106875005A (zh) * | 2017-01-20 | 2017-06-20 | 清华大学 | 自适应阈值神经元信息处理方法和系统 |
CN106875003A (zh) * | 2017-01-20 | 2017-06-20 | 清华大学 | 自适应泄漏值神经元信息处理方法和系统 |
CN110826437A (zh) * | 2019-10-23 | 2020-02-21 | 中国科学院自动化研究所 | 基于生物神经网络的智能机器人控制方法、系统、装置 |
CN112348163A (zh) * | 2019-08-06 | 2021-02-09 | 罗伯特·博世有限公司 | 具有平衡求解器的深度神经网络 |
CN112633497A (zh) * | 2020-12-21 | 2021-04-09 | 中山大学 | 一种基于重加权膜电压的卷积脉冲神经网络的训练方法 |
-
2021
- 2021-07-21 CN CN202110827709.9A patent/CN113449864B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106502983A (zh) * | 2016-10-17 | 2017-03-15 | 清华大学 | 隐式狄利克雷模型的事件驱动的坍缩吉布斯采样方法 |
CN106875005A (zh) * | 2017-01-20 | 2017-06-20 | 清华大学 | 自适应阈值神经元信息处理方法和系统 |
CN106875003A (zh) * | 2017-01-20 | 2017-06-20 | 清华大学 | 自适应泄漏值神经元信息处理方法和系统 |
CN112348163A (zh) * | 2019-08-06 | 2021-02-09 | 罗伯特·博世有限公司 | 具有平衡求解器的深度神经网络 |
CN110826437A (zh) * | 2019-10-23 | 2020-02-21 | 中国科学院自动化研究所 | 基于生物神经网络的智能机器人控制方法、系统、装置 |
CN112633497A (zh) * | 2020-12-21 | 2021-04-09 | 中山大学 | 一种基于重加权膜电压的卷积脉冲神经网络的训练方法 |
Non-Patent Citations (2)
Title |
---|
TIMO C. WUNDERLICH 等: "Event‑based backpropagation can compute exact gradients for spiking neural networks", 《SCIENTIFIC REPORTS》, pages 1 - 17 * |
张铁林 等: "脉冲神经网络研究脉冲神经网络研究脉冲神经网络研究脉冲神经网络研究现状及展", 《计算机学报》, pages 1 - 21 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113628615A (zh) * | 2021-10-12 | 2021-11-09 | 中国科学院自动化研究所 | 语音识别方法、装置、电子设备及存储介质 |
CN114065806A (zh) * | 2021-10-28 | 2022-02-18 | 贵州大学 | 基于脉冲神经网络的机械手触觉数据分类方法 |
CN114065806B (zh) * | 2021-10-28 | 2022-12-20 | 贵州大学 | 基于脉冲神经网络的机械手触觉数据分类方法 |
CN113902106A (zh) * | 2021-12-06 | 2022-01-07 | 成都时识科技有限公司 | 脉冲事件决策装置、方法、芯片及电子设备 |
CN114332545A (zh) * | 2022-03-17 | 2022-04-12 | 之江实验室 | 一种基于低比特脉冲神经网络的图像数据分类方法和装置 |
CN115048979A (zh) * | 2022-04-29 | 2022-09-13 | 贵州大学 | 一种基于正则化的机器人触觉脉冲数据分类方法 |
WO2023212857A1 (zh) * | 2022-05-05 | 2023-11-09 | 中国科学院深圳先进技术研究院 | 一种基于类脑智能的脑机接口系统及设备 |
CN114998659A (zh) * | 2022-06-17 | 2022-09-02 | 北京大学 | 随时间在线训练脉冲神经网络模型的图像数据分类方法 |
CN114998659B (zh) * | 2022-06-17 | 2024-05-24 | 北京大学 | 随时间在线训练脉冲神经网络模型的图像数据分类方法 |
CN117709417A (zh) * | 2022-10-09 | 2024-03-15 | 航天科工集团智能科技研究院有限公司 | 一种基于膜电位分布约束的脉冲神经网络训练方法及设备 |
CN117709418A (zh) * | 2022-10-09 | 2024-03-15 | 航天科工集团智能科技研究院有限公司 | 基于实值放电的脉冲神经网络训练方法、识别系统及设备 |
CN116056285A (zh) * | 2023-03-23 | 2023-05-02 | 浙江芯源交通电子有限公司 | 一种基于神经元电路的信号灯控制系统及电子设备 |
CN116503671B (zh) * | 2023-06-25 | 2023-08-29 | 电子科技大学 | 基于有效秩张量近似的残差网络压缩的图像分类方法 |
CN116503671A (zh) * | 2023-06-25 | 2023-07-28 | 电子科技大学 | 基于有效秩张量近似的残差网络压缩的图像分类方法 |
CN117493955A (zh) * | 2023-11-01 | 2024-02-02 | 北京大学 | 一种癫痫患者的脑电信号分类模型的训练方法 |
CN117493955B (zh) * | 2023-11-01 | 2024-06-07 | 北京大学 | 一种癫痫患者的脑电信号分类模型的训练方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113449864B (zh) | 2023-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113449864B (zh) | 用于图像数据分类的反馈型脉冲神经网络模型训练方法 | |
Li et al. | A free lunch from ANN: Towards efficient, accurate spiking neural networks calibration | |
US20240055072A1 (en) | Splicing site classification using neural networks | |
Guo et al. | Depthwise convolution is all you need for learning multiple visual domains | |
CN107358626B (zh) | 一种利用条件生成对抗网络计算视差的方法 | |
CN108133188B (zh) | 一种基于运动历史图像与卷积神经网络的行为识别方法 | |
Chen et al. | Pruning of deep spiking neural networks through gradient rewiring | |
CN109902546A (zh) | 人脸识别方法、装置及计算机可读介质 | |
CN114998659B (zh) | 随时间在线训练脉冲神经网络模型的图像数据分类方法 | |
CN107992938B (zh) | 基于正反卷积神经网络的时空大数据预测方法和系统 | |
Gandhi et al. | Extending the forward forward algorithm | |
Usmanova et al. | Federated continual learning through distillation in pervasive computing | |
CN111160161A (zh) | 一种基于噪声剔除的自步学习人脸年龄估计方法 | |
TWI781000B (zh) | 機器學習裝置以及方法 | |
Dao | Image classification using convolutional neural networks | |
CN115965078A (zh) | 分类预测模型训练方法、分类预测方法、设备及存储介质 | |
JP7336710B2 (ja) | ニューラルネットワークシステム、学習方法およびプログラム | |
McClure et al. | Robustly representing uncertainty through sampling in deep neural networks | |
WO2022077345A1 (en) | Method and apparatus for neural network based on energy-based latent variable models | |
Shen et al. | Exploiting nonlinear dendritic adaptive computation in training deep Spiking Neural Networks | |
Hakim et al. | Optimization of the Backpropagation Method with Nguyen-widrow in Face Image Classification | |
Palomo et al. | A new self-organizing neural gas model based on Bregman divergences | |
Vicol et al. | Real-time classification of LIDAR data using discrete-time Recurrent Spiking Neural Networks | |
Kepesiova et al. | Comparison of Optimization Techniques for Process Recognition Using Deep Neural Network | |
Drost | Uncertainty estimation in deep neural networks for 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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |