CN115600669A - 基于局部分类器的高效深层脉冲神经网络学习方法 - Google Patents

基于局部分类器的高效深层脉冲神经网络学习方法 Download PDF

Info

Publication number
CN115600669A
CN115600669A CN202211271313.1A CN202211271313A CN115600669A CN 115600669 A CN115600669 A CN 115600669A CN 202211271313 A CN202211271313 A CN 202211271313A CN 115600669 A CN115600669 A CN 115600669A
Authority
CN
China
Prior art keywords
pulse
snn
learning
neural network
classifier
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
CN202211271313.1A
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.)
Tianjin University
Zhejiang Lab
Original Assignee
Tianjin University
Zhejiang Lab
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 Tianjin University, Zhejiang Lab filed Critical Tianjin University
Priority to CN202211271313.1A priority Critical patent/CN115600669A/zh
Publication of CN115600669A publication Critical patent/CN115600669A/zh
Pending legal-status Critical Current

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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

本发明属于类脑计算、深度学习领域,公开了基于局部分类器的高效深层脉冲神经网络学习方法。主要步骤包括:使用脉冲神经元模型构造深度脉冲神经网络;将训练数据输入到SNN中,并记录相应的脉冲神经元状态值,更新参数;使用基于局部分类器的高效SNN学习方法对网络的参数进行调整;重复前两步,直到SNN学习完成。因此,本发明大幅度提升在局部学习模式下深层SNN在实际任务上的准确率,同时能够实现并行高效地网络学习训练。

Description

基于局部分类器的高效深层脉冲神经网络学习方法
技术领域
本发明属于类脑计算、深度学习领域,具体为一种基于局部分类器的高效深层脉冲神经网络学习方法,尤其是有关提高深层脉冲神经网络在实际任务上的效率及精度的学习方法。
背景技术
作为脑启发的新一代神经网络,脉冲神经网络(Spiking Neural Networks,SNNs)以脉冲作为信息表示和传输的载体,能够实现基于事件驱动的稀疏及异步计算,具有高效、低功耗的潜在计算优势。
但是,由于脉冲神经元模型的高复杂性以及脉冲函数的不可微分性,训练深度脉冲神经网络是一项具有挑战性的任务。一些基于转换的技术通过先训练传统人工神经网络(Artificial Neural Networks,ANNs),然后利用ANN的预训练权重构造与之相同网络结构的SNN。这种方法虽然能够达到与ANN相似的精度,但是需要大量的脉冲及时延以满足无损失的要求,这极大影响了SNN的高效性应用。一些方法尝试利用反向传播算法直接训练SNN。但是,反向传播需要将梯度从输出层向后逐层传播到整个网络。在反传过程完成之前,隐藏层的权重不能被更新。这种权重的更新方式阻碍了训练过程的有效并行化,导致对计算资源的要求较高,同时也难以在神经拟态的硬件上实现。
生物神经元只需要通过获得局部可用的信息,以高度并行的方式调节突触权重。此局部学习的方案能够独立地更新每一层的权重,从而可以高效地训练深度SNN。然而,与基于反向传播的学习规则相比,目前的局部学习方法训练的SNN在实际任务的精度方面仍有极大差距。
发明内容
本发明的目的在于针对现有局部学习技术的不足,提供一种基于局部分类器的高效深层脉冲神经网络学习方法。
本发明的目的是通过以下技术方案来实现的:基于局部分类器的高效深层脉冲神经网络学习方法,包括以下步骤:
步骤一:使用脉冲神经元模型构造深度脉冲神经网络,层与层之间的脉冲神经元通过全连接或卷积的方式连接;
步骤二:将训练数据输入到SNN中,并记录相应的脉冲神经元状态值,以用来更新参数;
步骤三:使用基于局部分类器的高效SNN学习方法对网络的参数进行调整;
所述步骤三通过以下技术方案实现:
第l个隐藏层不断接收来自其前一层的输入脉冲,然后通过输出的脉冲传输信息;
在训练阶段,输出脉冲也被传送到局部分类器中;
采用均方误差作为层级损失函数来衡量每个时间步长的实际输出和期望输出之间的差异,即:
Figure BDA0003894228110000027
其中:L表示损失函数,Nt表示整个时间区间,上标a用于表示辅助分类器,其在时间步长t的输出由oa[t]表示,y[t]表示期望输出;
定义E-trace包含wa对ua[t]的影响,即
Figure BDA0003894228110000021
以正向方式递归计算:
Figure BDA0003894228110000022
因此,分类器在当前时间点t的权重更新可以被计算为:
Figure BDA0003894228110000023
同样,公式(2)也可以推广到隐藏层,即
Figure BDA0003894228110000024
结合E-trace,隐藏层的权重更新可以计算为:
Figure BDA0003894228110000025
其中:η表示学习,
上述两个计算公式都依赖于输出脉冲相对于相应膜电位的梯度,由于这个梯度是不存在的,因此使用公式(5)作为替代导数:
Figure BDA0003894228110000026
借助替代导数,公式(3)和公式(4)中的权重变化可以在每个时间步中立即得到,因此,每个权重可以在训练阶段以高效地并行方式进行修改。
步骤四:重复步骤二与步骤三,直到SNN学习完成;
进一步,SNN恰当拟合训练数据,并在测试数据中达到目标效果。
有益效果
本发明大幅度提升在局部学习模式下深层SNN在实际任务上的准确率,同时能够实现并行高效地网络学习训练。
该方法改善以脉冲为基础的学习性能,为类脑的神经形态计算体系提供一种高效可行的训练深层SNN的方法。
该方法引入逐层的辅助分类器,使每层神经元参数可以独立学习。此外,该方法通过前向过程累积在时间维度的梯度,以实现在线学习,即在每一时刻皆可调整脉冲神经网络的参数。
本发明用多种主流的数据集评估了该方法的性能。
该方法提高深层脉冲神经网络在实际任务上的效率及精度。
本发明将有助于提高基于脉冲的局部学习性能,这将对神经形态计算有很大的价值,同时对未来低功耗的片上学习和信息处理有极其重要的推动意义。
附图说明
图1是本发明提出的基于局部分类器的高效深层脉冲神经网络学习方法的示例图。
图2是本发明提出的基于局部分类器的高效深层脉冲神经网络学习方法的系统框架图。
具体实施方式
下面对本发明的使用进行详细说明。
如图1、2所示,基于局部分类器的高效深层脉冲神经网络学习方法,包括以下步骤:
步骤一:使用脉冲神经元模型构造深层脉冲神经网络,层与层之间的脉冲神经元通过全连接或卷积的方式连接;
步骤二:将训练数据输入到SNN中,并记录相应的脉冲神经元状态值,以用来更新参数;
步骤三:使用基于局部分类器的高效SNN学习方法对网络的参数进行调整;
进一步地,为详述步骤三中的学习方法,本发明先介绍步骤一中的脉冲神经元模型。本发明的学习方法可适用多种脉冲神经元模型。
对于LIF脉冲神经元模型,第l层的脉冲神经元i不断地将来自传入神经元的输入电流整合到其膜电位中。每达到发射条件时,神经元就会产生一个输出脉冲,然后在膜电位上复位,即:
Figure BDA0003894228110000031
其中,
Figure BDA0003894228110000032
表示神经元在时间步长t的膜电位,
Figure BDA0003894228110000033
表示神经元i和神经元j之间的突触权重。
Figure BDA0003894228110000041
Figure BDA0003894228110000042
分别为来自第j个传入神经元的第k个输入脉冲和第k个输出脉冲的时间,Ml-1表示前一层的神经元数量,
Figure BDA0003894228110000043
表示发射阈值。
考虑到单指数核在处理和学习方面的效率较高,因此采用
Figure BDA0003894228110000044
虽然基于连续时间的脉冲模型可以准确捕捉神经元的动态,但离散时间更适合于深度脉冲网络的学习模拟。
因此,通过设置仿真时间步长为1个单位,公式(1)被离散化为:
Figure BDA0003894228110000045
Figure BDA0003894228110000046
其中,τ是时间常数,控制着膜电位的衰减率;
Figure BDA0003894228110000047
表示神经元的输出状态,用1表示发放脉冲,0表示不发放脉冲。
对于IF脉冲神经元模型,模电压累积和脉冲发放的公式则为:
Figure BDA0003894228110000048
Figure BDA0003894228110000049
下面通过举例说明隐藏层l来详细解释步骤三中基于局部分类器的高效SNN学习方法。
第l个隐藏层不断接收来自其前一层的输入脉冲,然后用输出脉冲传输信息。
在训练阶段,输出脉冲也被传送到局部分类器中。
本发明采用均方误差作为层级损失函数来衡量每个时间步长的实际输出和期望输出之间的差异,即:
Figure BDA00038942281100000410
其中,L表示总损失,Nt表示整个时间区间,上标a用于表示辅助分类器,其在时间步长t的输出由oa[t]表示,y[t]表示期望输出。
定义E-trace包含wa对ua[t]的影响,即
Figure BDA00038942281100000411
以正向方式递归计算:
Figure BDA0003894228110000051
因此,分类器在当前时间点t的权重更新可以被计算为:
Figure BDA0003894228110000052
同样,公式(7)也可以推广到隐藏层,即
Figure BDA0003894228110000053
E-trace,隐藏层的权重更新可以计算为:
Figure BDA0003894228110000054
其中η表示学习率,这两个计算公式都依赖于输出脉冲相对于相应膜电位的梯度,这个梯度是不存在的,通常采用替代导数。
本发明使用公式(10)作为替代导数:
Figure BDA0003894228110000055
借助替代导数,公式(8)和公式(9)中的权重变化可以在每个时间步中立即得到。
因此,每个权重可以在训练阶段以有效的并行方式进行修改。
步骤四:重复步骤二与步骤三,直到SNN学习完成;
SNN恰当拟合训练数据,并在测试数据中达到目标效果。
本发明通过局部分层分类器,能够用训练标签对每个隐藏层进行局部训练。
此外,本发明可以在每个时间步骤中不断调整权重。
在推理过程中,辅助分类器将被丢弃,输入脉冲通过网络传播直接获得用于决策的输出脉冲。
这里,本发明采用表1中三种数据集进行实验:
1)使用脉冲神经元模型构造深层SNN;
2)将训练数据输入到深层SNN中,并记录相应的用于更新参数的脉冲神经元状态值;
3)使用本发明提出的基于局部分类器的高效SNN学习方法对网络的参数进行调整;
4)重复2)与3),使深层SNN恰当拟合训练数据,并在测试数据中达到目标效果,
5)最后得到已训练的深层SNN。
表1
Figure BDA0003894228110000061
表1展示了本发明与当前最新的脉冲神经网络模型的对比,表中的准确率是基于主流的MNIST、CIFAR10和TIDIGITS数据集得到的。

Claims (2)

1.基于局部分类器的高效深层脉冲神经网络学习方法,其特征在于,包括以下步骤:
步骤一:使用脉冲神经元模型构造深度脉冲神经网络,层与层之间的脉冲神经元通过全连接或卷积的方式连接;
步骤二:将训练数据输入到SNN中,并记录相应的脉冲神经元状态值,以用来更新参数;
步骤三:使用基于局部分类器的高效SNN学习方法对网络的参数进行调整;
所述步骤三具体如下:
第l个隐藏层不断接收来自其前一层的输入脉冲,然后通过输出的脉冲传输信息;
在训练阶段,输出脉冲也被传送到局部分类器中;
采用均方误差作为层级损失函数来衡量每个时间步长的实际输出和期望输出之间的差异,即:
Figure FDA0003894228100000011
其中:L表示损失函数,Nt表示整个时间区间,上标a用于表示辅助分类器,其在时间步长t的输出由oa[t]表示,y[t]表示期望输出;
定义E-trace包含wa对ua[t]的影响,即
Figure FDA0003894228100000012
以正向方式递归计算:
Figure FDA0003894228100000013
因此,分类器在当前时间点t的权重更新被计算为:
Figure FDA0003894228100000014
同样,公式(2)推广到隐藏层,即
Figure FDA0003894228100000015
结合E-trace,隐藏层的权重更新计算为:
Figure FDA0003894228100000016
其中:η表示学习,
上述两个计算公式都依赖于输出脉冲相对于相应膜电位的梯度,由于这个梯度是不存在的,因此使用公式(5)作为替代导数:
Figure FDA0003894228100000021
借助替代导数,公式(3)和公式(4)中的权重变化在每个时间步中立即得到,因此,每个权重可在训练阶段以高效地并行方式进行修改;
步骤四:重复步骤二与步骤三,直到SNN学习完成。
2.根据权利要求1所述的基于局部分类器的高效深层脉冲神经网络学习方法,其特征在于,SNN恰当拟合训练数据,并在测试数据中达到目标效果。
CN202211271313.1A 2022-10-17 2022-10-17 基于局部分类器的高效深层脉冲神经网络学习方法 Pending CN115600669A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211271313.1A CN115600669A (zh) 2022-10-17 2022-10-17 基于局部分类器的高效深层脉冲神经网络学习方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211271313.1A CN115600669A (zh) 2022-10-17 2022-10-17 基于局部分类器的高效深层脉冲神经网络学习方法

Publications (1)

Publication Number Publication Date
CN115600669A true CN115600669A (zh) 2023-01-13

Family

ID=84846475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211271313.1A Pending CN115600669A (zh) 2022-10-17 2022-10-17 基于局部分类器的高效深层脉冲神经网络学习方法

Country Status (1)

Country Link
CN (1) CN115600669A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116797851A (zh) * 2023-07-28 2023-09-22 中国科学院自动化研究所 图像分类模型的类脑连续学习方法、图像分类方法和装置
CN117493955A (zh) * 2023-11-01 2024-02-02 北京大学 一种癫痫患者的脑电信号分类模型的训练方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116797851A (zh) * 2023-07-28 2023-09-22 中国科学院自动化研究所 图像分类模型的类脑连续学习方法、图像分类方法和装置
CN116797851B (zh) * 2023-07-28 2024-02-13 中国科学院自动化研究所 图像分类模型的类脑连续学习方法、图像分类方法和装置
CN117493955A (zh) * 2023-11-01 2024-02-02 北京大学 一种癫痫患者的脑电信号分类模型的训练方法

Similar Documents

Publication Publication Date Title
CN115600669A (zh) 基于局部分类器的高效深层脉冲神经网络学习方法
CN107092959B (zh) 基于stdp非监督学习算法的脉冲神经网络模型构建方法
Huang et al. Recurrent graph convolutional network-based multi-task transient stability assessment framework in power system
CN107169527B (zh) 基于协同深度学习的医学图像分类方法
CN111047085B (zh) 一种基于元学习的混合动力车辆工况预测方法
CN111445010B (zh) 一种基于证据理论融合量子网络的配网电压趋势预警方法
CN110007652A (zh) 一种水电机组劣化趋势区间预测方法与系统
CN111639754A (zh) 一种神经网络的构建、训练、识别方法和系统、存储介质
CN111190429B (zh) 一种基于强化学习的无人机主动容错控制方法
CN111860787A (zh) 一种含有缺失数据的耦合有向图结构流量数据的短期预测方法及装置
CN112288080A (zh) 面向脉冲神经网络的自适应模型转化方法及系统
WO2022078334A1 (zh) 利用神经元模型及网络处理信号的处理方法、介质、设备
CN114118375A (zh) 一种基于时序图Transformer的连续动态网络表征学习方法
CN112651519A (zh) 一种基于深度学习理论的二次设备故障定位方法及系统
CN111638648A (zh) 一种具有比例延迟复杂动态网络的分布式脉冲准同步方法
CN117131979A (zh) 基于有向超图及注意力机制的交通流速度预测方法及系统
CN108873705A (zh) 一种基于非线性pid的hh神经元同步控制方法
CN111582470B (zh) 基于stdp的自适应非监督学习图像识别方法及系统
CN114384931A (zh) 一种基于策略梯度的无人机多目标最优控制方法和设备
CN114399041A (zh) 一种脉冲神经网络训练方法、装置及芯片
CN113837443A (zh) 基于深度BiLSTM的变电站线路负载预测方法
CN113033695A (zh) 一种电子器件故障的预测方法
CN111445005A (zh) 基于强化学习的神经网络控制方法及强化学习系统
Zhang et al. Pretrain soft q-learning with imperfect demonstrations
CN111709140B (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