CN113449864A - 用于图像数据分类的反馈型脉冲神经网络模型训练方法 - Google Patents

用于图像数据分类的反馈型脉冲神经网络模型训练方法 Download PDF

Info

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
Application number
CN202110827709.9A
Other languages
English (en)
Other versions
CN113449864B (zh
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.)
Peking University
Original Assignee
Peking University
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 Peking University filed Critical Peking University
Priority to CN202110827709.9A priority Critical patent/CN113449864B/zh
Publication of CN113449864A publication Critical patent/CN113449864A/zh
Application granted granted Critical
Publication of CN113449864B publication Critical patent/CN113449864B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • 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
    • 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/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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神经元模型分别通过一个微分方程维护一个膜电位、整合输入的电流,两个模型对于膜电位的动态由以下的微分方程进行描述:
Figure BDA0003172694570000011
其中u是膜电位,I是输入的电流,Vth是神经元脉冲发放的阈值,R和τm分别是电阻和时间常数。一旦膜电位u在时刻tf达到阈值Vth,神经元将发放一个脉冲信号,而膜电位将重置为静息电位u=urest,静息电位一般取为0。神经元发放的脉冲序列可由狄拉克δ函数表示为
Figure BDA0003172694570000012
我们考虑简单的电流模型Ii(t)=∑jwijsj(t)+b,其中wij是神经元j到神经元i之间连接的权重,这和人工神经网络是一样的。上述微分方程经过离散化后,IF和LIF模型的通用的计算形式可表示为:
Figure BDA0003172694570000021
其中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的平均放电频率向量;
Figure BDA0003172694570000041
连续情况下,时刻t的平均输入;
Figure BDA0003172694570000042
连续情况下,一组LIF脉冲神经元在时刻t的加权平均放电频率向量;
Figure BDA0003172694570000043
连续情况下,时刻t的加权平均输入;
κ(τ):连续情况下,LIF模型的响应核函数;
τm:连续情况下,LIF模型的时间常数;
u[t]:离散情况下,一组脉冲神经元在t个时间步长时的膜电位向量;
s[t]:离散情况下,一组脉冲神经元在t个时间步长时的脉冲信号向量;
x[t]:离散情况下,在t个时间步长时的输入向量;
a[t]:离散情况下,一组脉冲神经元在t个时间步长时的平均放电频率向量;
Figure BDA0003172694570000044
离散情况下,在t个时间步长时的平均输入;
Figure BDA0003172694570000045
离散情况下,一组LIF脉冲神经元在t个时间步长时的加权平均放电频率向量;
Figure BDA0003172694570000046
离散情况下,在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:数据样本的标签向量;
Figure BDA0003172694570000051
模型输出与样本标签之间的损失函数;
||W||2:矩阵W的谱范数;
Figure BDA0003172694570000052
:函数gθ在a*处的雅克比矩阵。
本发明提供的技术方案是:
一种用于图像数据分类的反馈型脉冲神经网络模型训练方法,利用构建的反馈型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模型的单隐层反馈型脉冲神经网络模型,在连续情况下,本发明定义隐层神经元的平均放电率为:
Figure BDA0003172694570000061
平均输入为:
Figure BDA0003172694570000071
在离散情况下定义隐层神经元的平均放电率为:
Figure BDA0003172694570000072
平均输入为:
Figure BDA0003172694570000073
且u[0]=0,s[0]=0。
本发明使用平均放电率作为IF模型下脉冲神经网络编码信息的方式。
对于基于LIF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,定义隐层神经元的加权平均放电率为
Figure BDA0003172694570000074
加权平均输入为:
Figure BDA0003172694570000075
其中,
Figure BDA0003172694570000076
是LIF模型的响应核函数;
在离散情况下,定义隐层神经元的加权平均放电率为
Figure BDA0003172694570000077
加权平均输入为:
Figure BDA0003172694570000078
本发明使用加权平均放电率作为LIF模型下脉冲神经网络编码信息的方式。
多隐层反馈型脉冲神经网络模型的情况下,基于IF或LIF模型的网络分别使用相同的方法定义第l层隐层神经元的平均放电率为al[t]或加权平均放电率
Figure BDA0003172694570000079
34)构建网络的输出层:
网络的输出层采用一组不会发放脉冲和重置膜电位的神经元,这可以通过将脉冲神经元的脉冲发放阈值设为无穷大的方式实现,其数量和分类的类别数相同,并使用累积的膜电位的大小作为分类的标准。对于单隐层模型,隐层与输出层之间采用全连接的形式;对于多隐层模型,第L层隐层与输出层之间采用全连接的形式。输出层即为网络最后的分类层。在IF和LIF模型中,网络最后用于分类的输出都等价于对隐层的(加权)平均放电率进行一个线性变换,即o=Woa[T],其中Wo是隐层和输出层全连接的权重矩阵。
35)采用重参数化的方法对反馈连接权重的谱范数进行约束:
在上述步骤3)构建的反馈型脉冲神经网络的基础上,引入对反馈连接权重的重参数化,从而对谱范数进行约束,保证网络到均衡态的收敛性。重参数化方法表示为:
Figure BDA0003172694570000081
其中,α是一个可学习的参数,并通过裁剪的方式被约束在[-c,c]的范围内(c是一个常数),而权重的谱范数||W||2采用和谱归一化技术(Spectral normalization forgenerative adversarial networks)相同的计算方式进行计算。
36)采用改进的批归一化技术:
本发明改进的批归一化技术在网络前向计算时固定均值和方差统计量为累积的统计量,这样批归一化可视作一个简单的线性操作,可以被整合进入线性层的运算中而不影响网络到均衡态的收敛性质;而在步骤4)中使用均衡态的不动点方程的隐式微分进行网络训练时,批归一化技术中的统计量采用常规的计算方式,即使用这一批次样本的统计量,同时使用动量累积的方式更新累积的统计量。本发明对所有前馈连接的权重施加上述改进的批归一化技术
4)通过均衡态不动点方程的隐式微分训练反馈型脉冲神经网络:
基于步骤3)中构建的单隐层或多隐层反馈型脉冲神经网络,通过推导网络的均衡态的不动点方程,并基于该方程的隐式微分计算损失函数关于权重的梯度,对网络进行训练,包括如下步骤:
41)推导单隐层和多隐层网络在IF和LIF模型下的均衡态及服从的不动点方程:
411)对基于IF模型的单隐层反馈型脉冲神经网络,在连续情况下可以证明:当平均输入收敛到一个均衡点
Figure BDA0003172694570000082
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率将收敛到一个均衡态a(t)→a*,且均衡态服从不动点方程(其中ReLU(x)=max(x,0)),表示为:
Figure BDA0003172694570000091
在离散情况下,可以证明当平均输入收敛到一个均衡点
Figure BDA00031726945700000911
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率将收敛到一个均衡态a[t]→a*,且均衡态服从不动点方程,表示为:
Figure BDA0003172694570000092
其中
Figure BDA0003172694570000093
412)对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况下可以证明当加权平均输入收敛到一个均衡点
Figure BDA0003172694570000094
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率将以有界的随机误差逼近一个均衡态,且均衡态服从和式3相同的不动点方程。在离散情况下,可以证明当加权平均输入收敛到一个均衡点
Figure BDA0003172694570000095
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率将以有界的随机误差逼近一个均衡态,且均衡态服从和式4相同的不动点方程。
413)对多隐层反馈型脉冲神经网络,可以推出在IF模型、离散情况下,当平均输入收敛到一个均衡点
Figure BDA0003172694570000096
且网络连接的权重的谱范数被约束为
Figure BDA0003172694570000097
时,IF模型下多隐层反馈型脉冲神经网络各层的平均放电率在离散情况下将收敛到均衡态
Figure BDA00031726945700000912
且均衡态服从不动点方程:
Figure BDA0003172694570000098
其中
Figure BDA0003172694570000099
在LIF模型、离散情况下,同样可以推出当加权平均输入收敛到一个均衡点
Figure BDA00031726945700000910
且网络连接的权重满足上述约束时,加权平均放电率以有界的随机误差不断逼近一个均衡态,且均衡态的不动点方程和式5相同。
42)基于不动点方程的隐式微分训练网络:
基于步骤41)中的推导,可近似地认为经过T个时间步长后的平均或加权平均放电率a[T]收敛到了均衡态并服从均衡态的不动点方程,进而可以利用不动点方程的隐式微分计算损失函数关于参数的梯度,步骤如下:
421)首先构建训练的损失函数。在分类任务中,损失函数是定义在步骤3)中构建的网络输出o和样本的标签y之间的
Figure BDA0003172694570000101
本发明采用常用的交叉熵损失函数。
422)基于步骤41)中推导的均衡态不动点方程式4或式5(方便起见,此处统一将方程记为a=fθ(a),其中θ表示网络的参数),通过隐式微分可求解梯度。记
Figure BDA0003172694570000102
为关于均衡态a*的损失函数,其可通过
Figure BDA0003172694570000103
和o=Woa[T]进行表示,并记gθ(a)=fθ(a)-a。不动点方程上的隐式微分满足
Figure BDA0003172694570000104
Figure BDA0003172694570000105
关于参数的微分可基于隐式微分计算,表示为:
Figure BDA0003172694570000106
其中
Figure BDA0003172694570000107
是gθ在a*处的雅克比矩阵的逆。为了计算上述微分,本发明遵从Bai等人(Deep equilibrium models,Multiscale deep equilibrium models)的方法求解一个线性系统
Figure BDA0003172694570000108
可以使用二阶拟牛顿法Broyden’s方法(Deepequilibrium models,Multiscale deep equilibrium models)求解这个方程,或者也可以使用不动点迭代的更新方式
Figure BDA0003172694570000109
等方法进行求解。
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模型下,膜电位的微分方程及其离散形式可表示为:
Figure BDA0003172694570000131
u[t+1]=u[t]+Ws[t]+Fx[t]+b-Vths[t+1], 式8
其中Δtd是反馈连接的时间延迟,在离散情况下本发明简单地考虑延迟在一个离散的时间步长内。W和F代表任意的线性操作,可以包括全连接的神经网络层、卷积神经网络层等等。
而在LIF模型下,膜电位的微分方程及其离散形式可表示为:
Figure BDA0003172694570000132
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模型下,膜电位的微分方程的通用的离散形式可表示为:
Figure BDA0003172694570000133
本发明同样简单地考虑延迟在一个离散的时间步长内。W1和Fl代表任意的线性操作,可以包括全连接的神经网络层、卷积神经网络层等等。
3)构建网络编码信息的方式:
对于基于IF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,本发明定义隐层神经元的平均放电率为:
Figure BDA0003172694570000134
平均输入为:
Figure BDA0003172694570000135
在离散情况下定义隐层神经元的平均放电率为:
Figure BDA0003172694570000141
平均输入为:
Figure BDA0003172694570000142
且u[0]=0,s[0]=0。
本发明使用平均放电率作为IF模型下脉冲神经网络编码信息的方式。
对于基于LIF模型的单隐层反馈型脉冲神经网络模型,在连续情况下,定义隐层神经元的加权平均放电率为:
Figure BDA0003172694570000143
加权平均输入为:
Figure BDA0003172694570000144
其中,
Figure BDA0003172694570000145
是LIF模型的响应核函数;
在离散情况下,定义隐层神经元的加权平均放电率为:
Figure BDA0003172694570000146
加权平均输入为:
Figure BDA0003172694570000147
本发明使用加权平均放电率作为LIF模型下脉冲神经网络编码信息的方式。
多隐层反馈型脉冲神经网络模型的情况下,基于IF或LIF模型的网络分别使用相同的方法定义第l层隐层神经元的平均放电率为al[t]或加权平均放电率
Figure BDA0003172694570000148
4)构建网络的输出层:
网络的输出层采用一组不会发放脉冲和重置膜电位的神经元,这可以通过将脉冲神经元的脉冲发放阈值设为无穷大的方式实现,其数量和分类的类别数相同,并使用累积的膜电位的大小作为分类的标准。对于单隐层模型,隐层与输出层之间采用全连接的形式;对于多隐层模型,第L层隐层与输出层之间采用全连接的形式。输出层即为网络最后的分类层。在IF和LIF模型中,网络最后用于分类的输出都等价于对隐层的(加权)平均放电率进行一个线性变换,即o=Woa[T],其中Wo是隐层和输出层全连接的权重矩阵。
5)采用重参数化的方法对反馈连接权重的谱范数进行约束:
在上述步骤2构建的反馈型脉冲神经网络的基础上,引入对反馈连接权重的重参数化,从而对谱范数进行约束,保证网络到均衡态的收敛性。重参数化方法表示为:
Figure BDA0003172694570000151
其中α是一个可学习的参数,并通过裁剪的方式被约束在[-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)),批归一化对数据进行如下的变换:
Figure BDA0003172694570000152
其中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进行积分,可得关于平均放电率的迭代式:
Figure BDA0003172694570000161
由于神经元在累积的膜电位为负时,神经元不会放电,因此若
Figure BDA0003172694570000162
Figure BDA0003172694570000171
神经元不会放电,其累积的膜电位将仍剩余在最终的膜电位中,则最终的膜电位可被分解为
Figure BDA0003172694570000172
其中
Figure BDA0003172694570000173
是累积的负数项,而
Figure BDA0003172694570000174
是累积的正数项,正数项通常被限制在0到阈值Vth之间。通过这个分解,式12可转化为一个具有逐元素施加ReLU函数(ReLU(x)=max(x,0))和有界的
Figure BDA0003172694570000175
的表达式:
Figure BDA0003172694570000176
基于式13,可以证明当平均输入收敛到一个均衡点
Figure BDA0003172694570000177
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率在连续情况下将收敛到一个均衡态a(t)→a*,且均衡态服从不动点方程
Figure BDA0003172694570000178
在离散情况下,根据步骤3中定义的平均放电率和平均输入,通过对式8进行累和,可得关于平均放电率的迭代式:
Figure BDA0003172694570000179
与连续情况不同,a[t]是被约束在[0,1]之间的,因为离散的t个时间步长最多有t个脉冲信号。则累积的超过t个阈值的膜电位也将剩余在最终的膜电位中。膜电位可类似地被分解为
Figure BDA00031726945700001710
其中
Figure BDA00031726945700001712
是剩余的负数项或超过t个阈值的正数项,而
Figure BDA00031726945700001713
是一个有界的项。通过这个分解可得表达式:
Figure BDA00031726945700001714
其中
Figure BDA00031726945700001715
基于式13,可以证明当平均输入收敛到一个均衡点
Figure BDA00031726945700001716
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,IF模型下单隐层反馈型脉冲神经网络的平均放电率在离散情况下将收敛到一个均衡态a[t]→a*,且均衡态服从不动点方程
Figure BDA0003172694570000181
以上推导得到了单隐层的基于IF模型的反馈型脉冲神经网络的均衡态及不动点方程。
12)对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况下,根据步骤3中定义的加权平均放电率和加权平均输入,通过对式9进行积分,可得关于加权平均放电率的迭代式:
Figure BDA0003172694570000182
与上述IF模型的情况相同,膜电位可被分解为
Figure BDA0003172694570000183
式16转化为:
Figure BDA0003172694570000184
与IF模型的严格收敛到均衡态的情况不同,由于
Figure BDA0003172694570000185
因此LIF模型的情况下存在由
Figure BDA0003172694570000186
导致的随机误差,其不会随时间趋于0。这个情况下,我们可以视作加权平均放电率以一定有界的随机误差不断逼近一个均衡态。基于式17,可以证明当加权平均输入收敛到一个均衡点
Figure BDA0003172694570000187
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率在连续情况下将以一定有界的随机误差逼近一个均衡态,且均衡态服从不动点方程
Figure BDA0003172694570000188
在离散情况下,类似地可以得到当加权平均输入收敛到一个均衡点
Figure BDA0003172694570000189
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1)时,LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率在离散情况下将以一定有界的随机误差逼近一个均衡态,且均衡态服从不动点方程
Figure BDA00031726945700001810
以上推导得到了单隐层的基于LIF模型的反馈型脉冲神经网络的均衡态及不动点方程。不动点方程和IF模型的是一致的。
13)对多隐层反馈型脉冲神经网络,采用类似的方法可以推出,在IF模型、离散情况下,当平均输入收敛到一个均衡点
Figure BDA00031726945700001811
且网络连接的权重的谱范数被约束为
Figure BDA0003172694570000191
时,IF模型下多隐层反馈型脉冲神经网络各层的平均放电率在离散情况下将收敛到均衡态
Figure BDA00031726945700001914
且均衡态服从不动点方程
Figure BDA0003172694570000192
其中
Figure BDA0003172694570000193
Figure BDA0003172694570000194
而在LIF模型、离散情况下,同样可以推出当加权平均输入收敛到一个均衡点
Figure BDA0003172694570000195
且网络连接的权重满足上述约束时,加权平均放电率以一定有界的随机误差不断逼近一个均衡态,且均衡态的不动点方程和IF模型的是一致的。以上得到了多隐层的基于IF和LIF模型的反馈型脉冲神经网络的均衡态及不动点方程。
2)基于不动点方程的隐式微分训练网络:
基于1)中的推导,可近似地认为经过T个时间步长后的(加权)平均放电率a[T]收敛到了均衡态并服从均衡态的不动点方程,进而可以利用不动点方程的隐式微分计算损失函数关于参数的梯度,步骤如下:
21)首先构建训练的损失函数。在分类任务中,损失函数是定义在步骤3)中构建的网络输出o和样本的标签y之间的
Figure BDA0003172694570000196
本发明采用常用的交叉熵损失函数。
22)基于1)中推导的均衡态不动点方程式4或式5(方便起见,此处统一将方程记为a=fθ(a),其中θ表示网络的参数),通过隐式微分可求解梯度。记
Figure BDA0003172694570000197
为关于均衡态a*的损失函数,其可通过
Figure BDA0003172694570000198
和o=Woa[T]进行表示,并记gθ(a)=fθ(a)-a。不动点方程上的隐式微分满足
Figure BDA0003172694570000199
Figure BDA00031726945700001910
关于参数的微分可基于隐式微分计算,表示为:
Figure BDA00031726945700001911
其中
Figure BDA00031726945700001912
是gθ在a*处的雅克比矩阵的逆。为了计算上述微分,本发明遵从Bai等人(Deep equilibrium models,Multiscale deep equilibrium models)的方法求解一个线性系统
Figure BDA00031726945700001913
可以使用二阶拟牛顿法Broyden’s方法(Deepequilibrium models,Multiscale deep equilibrium models)求解这个方程,或者也可以使用不动点迭代的更新方式
Figure BDA0003172694570000201
等方法进行求解。然后,基于求得的解与
Figure BDA0003172694570000202
可以计算损失函数关于所有参数的梯度。以上求偏微分的部分可由自动微分实现。
本实施例中,对于MNIST,Fashion-MNIST,CIFAR-10和CIFAR-100数据集,使用Broyden’s方法求解上述的线性系统,阈值设为30;对于N-MNIST数据集,使用不动点迭代的方式求解上述的线性系统,并通过
Figure BDA0003172694570000203
的修改形式以加速收敛,迭代次数设为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数据集上的比较结果
Figure BDA0003172694570000211
Figure BDA0003172694570000221
表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的平均放电频率向量;
Figure FDA0003172694560000011
连续情况下,时刻t的平均输入;
Figure FDA0003172694560000012
连续情况下,一组LIF脉冲神经元在时刻t的加权平均放电频率向量;
Figure FDA0003172694560000013
连续情况下,时刻t的加权平均输入;
k(τ):连续情况下,LIF模型的响应核函数;
τm:连续情况下,LIF模型的时间常数;
u[t]:离散情况下,一组脉冲神经元在t个时间步长时的膜电位向量;
s[t]:离散情况下,一组脉冲神经元在t个时间步长时的脉冲信号向量;
x[t]:离散情况下,在t个时间步长时的输入向量;
a[t]:离散情况下,一组脉冲神经元在t个时间步长时的平均放电频率向量;
Figure FDA0003172694560000014
离散情况下,在t个时间步长时的平均输入;
Figure FDA0003172694560000021
离散情况下,一组LIF脉冲神经元在t个时间步长时的加权平均放电频率向量;
Figure FDA0003172694560000022
离散情况下,在t个时间步长时的加权平均输入;
x*:平均或加权平均输入的均衡态;
α*:平均或加权平均放电频率的均衡态;
λ:离散情况下,LIF脉冲神经元的泄漏项参数;
Vth:神经元发放脉冲的阈值;
L:多隐层反馈型脉冲神经网络模型中隐层的数量;
构建反馈型脉冲神经网络具体如下:
31)构建网络的输入层;网络的输入层的输入是二值的神经形态数据或者实值的计算机图像;
32)构建带有反馈连接的网络的隐层:
对于单隐层反馈型脉冲神经网络,构建一组带有反馈连接的脉冲神经元作为隐层,输入层与隐层具有前馈连接,隐层与输出层具有前馈连接,隐层与自身具有反馈连接;
对于多隐层反馈型脉冲神经网络,构建L组脉冲神经元作为不同的隐层,输入层与第1层隐层具有前馈连接,第(l-1)层隐层与第l层隐层具有前馈连接,最后的第L层隐层与输出层具有前馈连接,第L层隐层与第1层隐层具有反馈连接;其中输入层与隐层、隐层与隐层、隐层与输出层之间的连接均代表任意的线性操作,包括全连接的神经网络层、卷积神经网络层;
33)构建网络编码信息的方式:
对于基于IF的单隐层反馈型脉冲神经网络模型:
在连续情况下,定义隐层神经元的平均放电率为:
Figure FDA0003172694560000023
平均输入为:
Figure FDA0003172694560000024
在离散情况下定义隐层神经元的平均放电率为:
Figure FDA0003172694560000025
平均输入为:
Figure FDA0003172694560000026
且u[0]=0,s[0]=0;
使用平均放电率作为单隐层反馈型脉冲神经网络模型下的脉冲神经网络编码信息的方式;
对于基于LIF的单隐层反馈型脉冲神经网络模型:
在连续情况下,定义隐层神经元的加权平均放电率为
Figure FDA0003172694560000031
加权平均输入为:
Figure FDA0003172694560000032
其中,
Figure FDA0003172694560000033
是LIF模型的响应核函数;
在离散情况下,定义隐层神经元的加权平均放电率为
Figure FDA0003172694560000034
加权平均输入为:
Figure FDA0003172694560000035
使用加权平均放电率作为LIF模型下脉冲神经网络编码信息的方式;
同理定义多隐层的IF和LIF的平均放电率或加权平均放电率(对应LIF);对应IF的第l层隐层神经元的平均放电率记为al[t],对应LIF的第l层隐层神经元的加权平均放电率记为
Figure FDA0003172694560000036
34)构建网络的输出层:
网络的输出层采用一组不会发放脉冲和重置膜电位的神经元,其数量和分类的类别数相同;对于单隐层模型,隐层与输出层之间采用全连接的形式;对于多隐层模型,第L层隐层与输出层之间采用全连接的形式;输出层即为网络最后的分类层;
输出均等价于对隐层的平均或加权平均放电率进行线性变换,即o=Woa[T],其中Wo是隐层和输出层全连接的权重矩阵;
35)采用重参数化的方法对反馈连接权重的谱范数进行约束:
在步骤3)构建的反馈型脉冲神经网络中引入对反馈连接权重的重参数化,从而对谱范数进行约束,保证网络到均衡态的收敛性;重参数化方法表示为:
Figure FDA0003172694560000037
其中,α是一个可学习的参数,并通过裁剪的方式被约束在[-c,c]的范围内;c是一个常数;权重的谱范数||W||2采用和谱归一化方法进行计算;
36)采用改进的批归一化方法,在网络前向计算时固定均值和方差统计量为累积的统计量;
4)通过均衡态不动点方程的隐式微分训练反馈型脉冲神经网络:
对步骤3)中构建的单隐层或多隐层反馈型脉冲神经网络模型,通过推导网络的均衡态的不动点方程,并基于该方程的隐式微分计算损失函数关于权重的梯度,对网络模型进行训练,包括如下步骤:
41)推导单隐层和多隐层网络在IF和LIF模型下的均衡态及服从的不动点方程:
411)对基于IF模型的单隐层反馈型脉冲神经网络,在连续情况下服从的均衡态不动点方程表示为:
Figure FDA0003172694560000041
其中,ReLU(x)=max(x,0);x*为均衡点;a*为均衡态;F为输入到隐层或隐层到隐层前馈连接的权重;b为偏置向量;
在离散情况下,均衡态服从不动点方程表示为:
Figure FDA0003172694560000042
其中
Figure FDA0003172694560000043
Vth为神经元发放脉冲的阈值;
412)对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况下均衡态服从和式3相同的不动点方程;在离散情况下,均衡态服从和式4相同的不动点方程;
413)对多隐层反馈型脉冲神经网络,
在IF模型、离散情况下,均衡态服从不动点方程:
Figure FDA0003172694560000044
其中
Figure FDA0003172694560000045
在LIF模型、离散情况下,加权平均放电率以有界的随机误差不断逼近一个均衡态,且均衡态的不动点方程和式5相同;
42)基于不动点方程的隐式微分计算损失函数关于参数的梯度,对网络模型进行训练,步骤如下:
421)首先构建训练的损失函数:
定义分类任务中的损失函数为:在步骤3)中构建的网络输出o和样本的标签y之间的
Figure FDA0003172694560000046
具体采用交叉熵损失函数;
422)统一将基于步骤41)中的均衡态不动点方程式4或式5记为a=fθ(a),其中θ表示网络的参数;通过隐式微分求解梯度;
Figure FDA0003172694560000051
为关于均衡态a*的损失函数,通过
Figure FDA0003172694560000052
和o=Woa[T]进行表示,并记gθ(a)=fθ(a)-a;不动点方程上的隐式微分满足
Figure FDA0003172694560000053
Figure FDA0003172694560000054
关于参数的微分可基于隐式微分计算表示为:
Figure FDA0003172694560000055
其中,
Figure FDA0003172694560000056
是gθ在a*处的雅克比矩阵的逆;通过求解线性系统
Figure FDA0003172694560000057
Figure FDA0003172694560000058
计算上述微分;
423)根据步骤422)中求解得到的损失函数关于参数的梯度,基于训练数据集使用基于梯度的方法对网络进行优化训练;
5)利用步骤3)和步骤4)构建并训练好的反馈型脉冲神经网络模型,对测试图像或神经形态数据样本进行识别,得到预测的数据分类标签,由此实现图像数据分类,其中测试样本无需经过数据增强。
2.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤2)对训练样本进行预处理,包括:
21)对于图像数据,进行预处理包括:采用标准增强技术进行数据增强、裁剪、水平翻转或旋转;
22)通过神经形态照相机将计算机图像数据转换生成神经形态数据;对于神经形态数据,预处理包括累积一段时间的脉冲数据以减小时间分辨率。
3.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤411)中,对基于IF模型的单隐层反馈型脉冲神经网络,在连续情况或离散情况下的均衡态均指的是:平均输入收敛到一个均衡点
Figure FDA0003172694560000059
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1),IF模型下单隐层反馈型脉冲神经网络的平均放电率收敛到的均衡态a(t)→a*
4.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤412)中,对基于LIF模型的单隐层反馈型脉冲神经网络,在连续情况或离散情况下的均衡态均指的是:加权平均输入收敛到一个均衡点
Figure FDA0003172694560000061
且反馈连接的权重的谱范数被约束为||W||2≤γVth(γ<1),LIF模型下单隐层反馈型脉冲神经网络的加权平均放电率以有界的随机误差逼近的一个均衡态。
5.如权利要求1所述用于图像数据分类的反馈型脉冲神经网络模型训练方法,其特征是,步骤413)中,对多隐层反馈型脉冲神经网络,在IF模型的离散情况下,均衡态指当平均输入收敛到一个均衡点
Figure FDA0003172694560000062
且网络连接的权重的谱范数被约束为
Figure FDA0003172694560000063
时,IF模型下多隐层反馈型脉冲神经网络各层的平均放电率在离散情况下将收敛到均衡态
Figure FDA0003172694560000064
在LIF模型、离散情况下,当加权平均输入收敛到一个均衡点
Figure FDA0003172694560000065
且网络连接的权重满足约束时,加权平均放电率以有界的随机误差不断逼近均衡态。
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实现所述反馈型脉冲神经网络模型的构建和训练。
CN202110827709.9A 2021-07-21 2021-07-21 用于图像数据分类的反馈型脉冲神经网络模型训练方法 Active CN113449864B (zh)

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)

* Cited by examiner, † Cited by third party
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 北京大学 一种癫痫患者的脑电信号分类模型的训练方法
CN117709418A (zh) * 2022-10-09 2024-03-15 航天科工集团智能科技研究院有限公司 基于实值放电的脉冲神经网络训练方法、识别系统及设备
CN117709417A (zh) * 2022-10-09 2024-03-15 航天科工集团智能科技研究院有限公司 一种基于膜电位分布约束的脉冲神经网络训练方法及设备

Citations (6)

* Cited by examiner, † Cited by third party
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 中山大学 一种基于重加权膜电压的卷积脉冲神经网络的训练方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 北京大学 随时间在线训练脉冲神经网络模型的图像数据分类方法
CN117709418A (zh) * 2022-10-09 2024-03-15 航天科工集团智能科技研究院有限公司 基于实值放电的脉冲神经网络训练方法、识别系统及设备
CN117709417A (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) 一种利用条件生成对抗网络计算视差的方法
Chen et al. Pruning of deep spiking neural networks through gradient rewiring
CN109902546A (zh) 人脸识别方法、装置及计算机可读介质
CN114998659B (zh) 随时间在线训练脉冲神经网络模型的图像数据分类方法
Perrone et al. Poisson random fields for dynamic feature models
Li et al. Application of semi-supervised learning in image classification: Research on fusion of labeled and unlabeled data
Li et al. Adaptive dropout method based on biological principles
CN114842542A (zh) 基于自适应注意力与时空关联的面部动作单元识别方法及装置
CN111160161B (zh) 一种基于噪声剔除的自步学习人脸年龄估计方法
Usmanova et al. Federated continual learning through distillation in pervasive computing
TWI781000B (zh) 機器學習裝置以及方法
Laleh et al. Chaotic continual learning
Lee et al. Efficient ensemble model generation for uncertainty estimation with Bayesian approximation in segmentation
CN112613405B (zh) 任意视角动作识别方法
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
Hakim et al. Optimization of the Backpropagation Method with Nguyen-widrow in Face Image Classification
Gandhi et al. Extending the forward forward algorithm
Kepesiova et al. Comparison of Optimization Techniques for Process Recognition Using Deep Neural Network
Drost Uncertainty estimation in deep neural networks for image classification
Nakashika Deep relational model: A joint probabilistic model with a hierarchical structure for bidirectional estimation of image and labels

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