CN113537455B - 突触权重训练方法、电子设备和计算机可读介质 - Google Patents
突触权重训练方法、电子设备和计算机可读介质 Download PDFInfo
- Publication number
- CN113537455B CN113537455B CN202110624652.2A CN202110624652A CN113537455B CN 113537455 B CN113537455 B CN 113537455B CN 202110624652 A CN202110624652 A CN 202110624652A CN 113537455 B CN113537455 B CN 113537455B
- Authority
- CN
- China
- Prior art keywords
- weight
- synaptic
- target
- rule
- synaptic weight
- 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.)
- Active
Links
- 230000000946 synaptic effect Effects 0.000 title claims abstract description 200
- 238000012549 training Methods 0.000 title claims abstract description 79
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000013528 artificial neural network Methods 0.000 claims abstract description 42
- 230000003956 synaptic plasticity Effects 0.000 claims abstract description 34
- 239000000872 buffer Substances 0.000 claims description 43
- 230000007774 longterm Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 28
- 210000002569 neuron Anatomy 0.000 claims description 23
- 239000003623 enhancer Substances 0.000 claims description 9
- 230000033228 biological regulation Effects 0.000 claims description 7
- 230000002441 reversible effect Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000036278 prepulse Effects 0.000 claims description 6
- 230000001629 suppression Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 239000012528 membrane Substances 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 238000003062 neural network model Methods 0.000 description 8
- 230000004913 activation Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 6
- 239000011664 nicotinic acid Substances 0.000 description 5
- 230000001419 dependent effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 210000000225 synapse Anatomy 0.000 description 4
- 230000004927 fusion Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000001537 neural effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 210000003050 axon Anatomy 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000003112 inhibitor Substances 0.000 description 2
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 2
- 230000001242 postsynaptic effect Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 240000002627 Cordeauxia edulis Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 230000013632 homeostatic process Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000020796 long term synaptic depression Effects 0.000 description 1
- 230000027928 long-term synaptic potentiation Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000003518 presynaptic effect Effects 0.000 description 1
- 210000005215 presynaptic neuron Anatomy 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 238000012421 spiking Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
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/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供一种突触权重训练方法、电子设备和计算机可读介质,其中方法包括:将训练样本对应的脉冲信号输入待训练的脉冲神经网络;利用反向传播规则对所述脉冲神经网络中的目标突触权重包括的第一突触权重进行学习,得出第一权重;利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重;其中,所述目标突触权重由所述第一突触权重和所述第二突触权重组成;根据所述第一权重和所述第二权重更新所述目标突触权重。
Description
技术领域
本公开涉及计算机技术领域,特别涉及一种突触权重训练方法、电子设备和计算机可读介质。
背景技术
脉冲神经网络(Spiking Neural Network,简称SNN)由于其更贴合实际的仿生设计,通常被应用于低功耗模式识别、图像处理和计算机视觉等多个领域。针对脉冲神经网络的相关技术中,采用反向传播训练方法时训练所需样本多、计算量大;采用仿生训练方法时,难以达到理想精度。因此,单独的训练方案无法同时兼顾训练结果的有效性和训练开销。
发明内容
本公开提供了一种突触权重训练方法、电子设备和计算机可读介质。
根据本公开实施例的第一方面,提供一种突触权重训练方法,所述方法包括:将训练样本对应的脉冲信号输入待训练的脉冲神经网络;利用反向传播规则对所述脉冲神经网络中的目标突触权重包括的第一突触权重进行学习,得出第一权重;利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重;其中,所述目标突触权重由所述第一突触权重和所述第二突触权重组成;根据所述第一权重和所述第二权重更新所述目标突触权重。
在一些实施例中,所述训练样本对应的脉冲信号,包括:事件相机采集得到的脉冲信号。
在一些实施例中,所述根据所述第一权重和所述第二权重更新所述目标突触权重,包括:从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值;根据所述第一权重、所述第二权重和所述目标突触权重的当前值,利用加法器更新所述目标突触权重;输出更新后的目标突触权重,并将更新后的目标突触权重写入所述突触权重存储区。
在一些实施例中,所述从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值,包括:响应于所述第一权重缓冲区和所述第二权重缓冲区均存储有未读取过的权重,从所述第一权重缓冲区中读取所述第一权重,从所述第二权重缓冲区中读取所述第二权重,以及从所述突触权重存储区中读取所述目标突触权重的当前值。
在一些实施例中,所述脉冲神经网络的神经元模型采用LIF模型。
在一些实施例中,所述反向传播规则为基于时间的反向传播规则;所述利用反向传播规则对所述脉冲神经网络中的目标突触权重包括的第一突触权重进行学习,得出第一权重,包括:根据前向输出结果和反向误差,得到所述第一权重。
在一些实施例中,所述利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重,包括:利用所述突触可塑性规则下的长期可塑性子规则对所述目标突触权重包括的第二突触权重进行学习,得出所述第二权重。
在一些实施例中,所述长期可塑性子规则包括:长期抑制子规则和长期增强子规则;所述利用所述突触可塑性规则下的长期可塑性子规则对所述目标突触权重包括的第二突触权重进行学习,得出所述第二权重,包括:根据所述目标突触权重中第二突触权重对应的前脉冲信息和后脉冲信息得到第一权重参数;根据突触可塑性规则的超参和所述目标突触权重中第二突触权重的当前值,得到第二权重参数;根据所述第一权重参数和所述第二权重参数确定与所述长期增强子规则对应的第三权重参数;并根据所述第一权重参数和所述第二权重参数确定与所述长期抑制子规则对应的第四权重参数;根据所述第三权重参数和所述第四权重参数,得出所述第二权重。
在一些实施例中,所述从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值,包括:获取经第一调控器加权后输出的第一权重,以及获取经第二调控器加权后输出的第二权重;其中,所述第一调控器与所述第一权重缓冲区相连接,所述第二调控器与所述第二权重缓冲区相连接;所述根据所述第一权重、所述第二权重和所述目标突触权重的当前值,利用加法器更新所述目标突触权重,包括:将加权后的所述第一权重、加权后的所述第二权重和所述目标突触权重的当前值输入至加法器,并根据加法器的输出结果更新所述目标突触权重。
在一些实施例中,由所述第一调控器根据所述目标突触权重中第一突触权重对应的监督信号的置信度对所述第一权重对应的第一加权系数进行调整。
在一些实施例中,由所述第二调控器根据调控信号对所述第二权重对应的第二加权系数进行调整;其中,所述调控信号基于所述脉冲神经网络中的一层的脉冲信息确定。
根据本公开实施例的第二方面,提供一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现第一方面中任一项所述的突触权重训练方法。
根据本公开实施例的第三方面,提供一种电子设备,包括:多个处理核;以及片上网络,被配置为交互所述多个处理核间的数据和外部数据;一个或多个所述处理核中存储有一个或多个指令,一个或多个所述指令被一个或多个所述处理核执行,以使一个或多个所述处理核能够执行第一方面中任一项所述的突触权重训练方法。
根据本公开实施例的第四方面,提供一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序在被处理器执行时实现第一方面中任一项所述的突触权重训练方法中的步骤。
本公开实施例可以利用反向传播规则训练获得第一权重,利用突触可塑性规则训练获得第二权重,再根据第一权重和第二权重更新目标突触权重。该方式中分别利用反向传播规则和突触可塑性规则的优势进行训练,得到脉冲神经网络的目标突触权重。可以在提高权重训练结果的有效性的同时,快速且资源占用较少地进行突触权重的训练更新,提高突触权重训练效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种突触权重训练方法流程图;
图2是根据一示例性实施例示出的一种突触权重训练系统的结构示意图;
图3是根据一示例性实施例示出的一种目标突触权重更新方法流程图;
图4是根据一示例性实施例示出的一种脉冲神经网络模型的结构示意图;
图5是根据一示例性实施例示出的一种神经元节点的结构示意图;
图6是根据一示例性实施例示出的一种第二权重更新方法流程图;
图7是根据一示例性实施例示出的一种电子设备的组成框图;
图8是根据一示例性实施例示出的另一种脉冲神经网络模型的结构示意图;
图9是根据一示例性实施例示出的另一种电子设备的组成框图;
图10是根据一示例性实施例示出的一种计算机可读介质的组成框图。
具体实施方式
为使本领域的技术人员更好地理解本公开的技术方案,以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/ 或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/ 或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
图1为本公开实施例提供的一种突触权重训练方法流程图。如图1所示,该方法包括:
步骤101,将训练样本对应的脉冲信号输入待训练的脉冲神经网络。
其中,该脉冲信号即训练样本,可为脉冲序列及对应特定编码形式的脉冲信号等。
在一些实施例中,该脉冲神经网络的神经元模型采用LIF(Leaky Integrate-and-Fire)模型。
在一些实施例中,在所述将训练样本对应的脉冲信号输入待训练的脉冲神经网络之前,还包括:将脉冲神经网络的各项参数进行初始化;其中,所述脉冲神经网络的各项参数可以包括但不限制于突触权重、激活阈值等。
步骤102,利用反向传播(Back Propagation,简称BP)规则对所述脉冲神经网络中的目标突触权重包括的第一突触权重进行学习,得出第一权重。
其中,目标突触权重为脉冲神经网络中待训练的突触权重,由第一突触权重和第二突触权重组成。需要说明的是,第一突触权重或第二突触权重在目标突触权重中所占比例,可根据实际应用场景灵活进行分配或设置。
例如,可以在多任务场景或持续学习场景中,配比不同的第一突触权重和第二突触权重的比例,以达到在多个任务上实现部分结构复用,保证学习的有效性。
本步骤可以利用反向传播规则对目标突触权重包括的第一突触权重进行更新,第一权重即反向传播规则对应的更新结果。其中,基于反向传播规则进行训练时训练效果较好,但训练计算量大,需要大量有标记样本。
步骤103,利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重;其中,所述目标突触权重由所述第一突触权重和所述第二突触权重组成。
本步骤可以对目标突触权重包括的第二突触权重利用突触可塑性规则进行更新,第二权重即突触可塑性规则对应的更新结果。其中,突触可塑性规则可采用脉冲时序依赖可塑性(Spike Timing Dependent Plasticity,简称STDP)规则和赫布(Hebb)学习规则等仿生训练规则。
在一些实施例中,脉冲时序依赖可塑性规则可以包括但不限制于:长期可塑性(Long Term Plasticity,简称LT)子规则、短期可塑性(Short Term Plasticity,简称STP)子规则和动态平衡(Homeostasis)子规则等。突触可塑性规则属于无监督学习方法,采用局部更新机制,训练量较小,不需要有标记样本,但训练效果有限。
在一些实施例中,利用反向传播规则进行学习的步骤102和利用突触可塑性规则进行学习的步骤103,可先后执行或并行执行。
步骤104,根据所述第一权重和所述第二权重更新所述目标突触权重。
在一些实施例中,可以通过验证样本对第一权重和第二权重进行验证评价,以从中确定目标突触权重的更新值。或者,在一些实施例中,可以通过将第一权重和第二权重输入预设的融合更新公式进行计算,以得到目标突触权重的更新值。其中,该融合更新公式可基于求平均、求和、加权平均或加权求和等多种整合方式进行设计,本实施例并不限制。
本公开实施例可以利用反向传播规则训练获得第一权重,利用突触可塑性规则训练获得第二权重,再根据第一权重和第二权重更新目标突触权重。该方式中分别利用反向传播规则和突触可塑性规则的优势进行训练,得到脉冲神经网络的目标突触权重。可以在提高权重训练结果的有效性的同时,快速且资源占用较少地进行突触权重的训练更新,提高突触权重训练效率。
在一些实施例中,步骤101中输入脉冲神经网络的脉冲信号包括:事件相机(event-camera)采集得到的脉冲信号。例如,DVS(Dynamic Vision Sensor)相机、DAVIS(Dynamic and Active Pixel Vision Sensor)相机采集得到的脉冲信号。示例性的,脉冲信号可以为DVS相机采集得到的 DVS-Gesture手势识别数据。在一些实施例中,脉冲信号可以为通过相关技术转换到的Event-based数据,或者可以为CIFAR10-DVS、 Neuromorphic-MNIST等。
事件相机采集的脉冲信号作为脉冲神经网络的训练样本,采用本公开实施例提供的基于反向传播和突触可塑性规则的突触权重训练方法,可以训练得到适用于识别事件相机采集图像的脉冲神经网络。
由于事件相机所处环境复杂、以及相机本身硬件因素,事件相机采集得到的脉冲信号中通常含有不同程度噪声。
以DVS相机为例进行说明。在实际应用过程中,DVS相机可能遭受抖动、工频干扰、闪烁噪声、像素量子效应、空间模糊、区域缺失、时间抖动等多种不同干扰源的干扰,最终导致DVS相机采集得到的脉冲信号可能存在时间上的抖动、或存在空间上的干扰等不同噪声。
基于反向传播训练方法训练得到的脉冲神经网络,对不含噪声的干净图片,具有较高的分类或识别精度;但是对于含有噪声的图片,分类或识别效果明显下降,即基于单一反向传播训练方法训练得到的脉冲神经网络,鲁棒性差、抗干扰能力差。
基于仿生训练方法训练得到的脉冲神经网络,由于该方式为局部更新的训练方式,所以对包含噪声的图像具有较好的抗干扰能力、鲁棒性更强。例如,对缺失图像的补全或对模糊图像的识别效果更好。但是,该方式训练得到的脉冲神经网络,对图片的分类或识别效果较差。
上述实施例中,可以将事件相机采集的脉冲信号作为脉冲神经网络的训练样本,基于反向传播规则和突触可塑性规则对脉冲神经网络的目标突触权重进行训练,得到适用对事件相机采集的图像进行分类或识别的脉冲神经网络。
由于上述对脉冲神经网络的训练过程中,兼具反向传播训练方法和仿生训练方法两种方法混合,实现对脉冲神经网络的目标突触权重的训练更新,训练得到的脉冲神经网络对事件相机采集图像可以具备更好的分类精度、鲁棒性更好。
图2为本公开实施例提供的一种突触权重训练系统的结构示意图。如图2所示,该突触权重训练系统包括:与反向传播计算通路连接的第一权重缓冲区、与突触可塑性计算通路连接的第二权重缓冲区、第一调控器、第二调控器、突触权重存储区和加法器。其中,第一调控器与第一权重缓冲区相连接,第二调控器与第二权重缓冲区相连接。
以下将结合图2所示突触权重训练系统的结构示意图,对本公开实施例提供的突触权重训练方法进行进一步说明。
在一些实施例中,在得出第一权重之后还可以将第一权重写入第一权重缓冲区;在得出第二权重之后,还可以将第二权重写入第二权重缓冲区。在将第一权重写入第一权重缓冲区、将第二权重写入第二权重缓冲区的情况下,步骤104的具体实现如图3所示,可以包括如下步骤:
步骤301,从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值。
其中,目标突触权重的当前值,包括目标突触权重中包括的第一突触权重的当前值和目标突触权重中包括的第二突触权重的当前值。
在一些实施例中,步骤301包括:响应于第一权重缓冲区和第二权重缓冲区均存储有未读取过的权重,从第一权重缓冲区中读取第一权重,从第二权重缓冲区中读取第二权重,以及从突触权重存储区中读取目标突触权重的当前值。本实施例中,只有当第一权重缓冲区和第二权重缓冲区中均存储有未读取过的权重的情况下,才会触发步骤301的读取操作,可以有效提高权重读取效率。
步骤302,根据所述第一权重、所述第二权重和所述目标突触权重的当前值,利用加法器更新所述目标突触权重。
步骤303,输出更新后的目标突触权重,并将更新后的目标突触权重写入所述突触权重存储区。
由此,基于相应地突触权重训练系统完成一次目标突触权重的更新。
在一些实施例中,步骤104可以通过对第一权重和第二权重进行加权求和,并根据加权求和结果更新目标突触权重。该方式,可以通过加权求和的方式,对第一权重和第二权重进行整合,实现对目标突触权重的融合更新。
具体的,在图2所示突触权重训练系统的结构示意图基础上,步骤301 的具体实现可以包括:获取经第一调控器加权后输出的第一权重,以及获取经第二调控器加权后输出的第二权重;其中,所述第一调控器与所述第一权重缓冲区相连接,所述第二调控器与所述第二权重缓冲区相连接;步骤302的具体实现可以包括:将加权后的所述第一权重、加权后的所述第二权重和所述目标突触权重的当前值输入至加法器,并根据加法器的输出结果更新所述目标突触权重。
在一些实施例中,步骤104中可以根据目标突触权重中第一突触权重对应的监督信号的置信度对第一权重对应的第一加权系数进行调整。例如,可以在对应的监督信号的置信度较高的情况下,增大第一加权系数或保持第一加权系数不变;在对应的监督信号的置信度较低的情况下,减小第一加权系数。
在一种可能的实现方式中,可以控制第一调控器,由第一调控器根据目标突触权重中第一突触权重对应的监督信号的置信度对第一权重对应的第一加权系数进行调整。
在一些实施例中,步骤104中可以根据调控信号对第二权重对应的第二加权系数进行调整。其中,调控信号基于脉冲神经网络中的一层的脉冲信息确定。例如,该脉冲信息即为该层发放的脉冲序列。在一些实施例中,当该层出现发放过多或发放过少的情况时,可基于调控信号减小第二加权系数。
在一种可能的实现方式中,可以控制第二调控器根据调控信号对第二权重对应的第二加权系数进行调整。
本公开实施例提供了一种突触权重训练方法,该方法可用于利用反向传播规则训练获得第一权重,利用突触可塑性规则训练获得第二权重,根据第一权重和第二权重更新目标突触权重。该方式中分别利用反向传播规则和突触可塑性规则的优势进行训练,得到脉冲神经网络的目标突触权重,实现在保证权重训练结果的有效性的同时,快速且资源占用较少地进行突触权重的训练更新,提高突触权重训练效率。
在一些实施例中,步骤102中利用的反向传播规则为基于时间的反向传播(BackPropagation Through Time,简称BPTT)规则。在所述反向传播规则为基于时间的反向传播规则的情况下,步骤102的具体实现可以包括:根据前向输出结果和反向误差,得到第一权重。
基于前向传播阶段中本层的前向层的输出结果,以及反向传播阶段中本层对应的反向误差,计算得到第一权重。其中,基于时间的反向传播规则实质上是反向传播规则,其针对输入数据为时间序列数据的情况进行设计;前向输出结果由前向层中对应的神经元节点基于其节点函数计算得出并输出;反向误差根据损失函数、实际计算输出和期望输出计算得到。
图4为本公开实施例提供的一种脉冲神经网络模型的结构示意图。如图4所示,具体地,脉冲神经网络的神经元模型采用LIF(Leaky Integrate-and-Fire)模型,该脉冲神经网络为递归网络,该结构示意图为将脉冲神经网络模型通过时域展开后得到的二维时空图。其中,纵向箭头表示脉冲神经网络的各层中时间步长的递进,横向箭头表示数据在各神经元节点所属的多个首尾连接的层中的传输方向,各神经元节点均对应有各自的节点函数,该节点函数基于膜电位和激活函数整合得出,对具体符号标识的解释参见图5。
图5为本公开实施例提供的一种神经元节点的结构示意图。如图5所示,该神经元节点为图4所示脉冲神经网络模型中的一个神经元节点。
对于该神经元节点,首先,针对输入数据,采用如下公式:
It=Xl,t*W
进行突触整合,得出整合附加值It。其中,l表示层标识;t为当前时间步长;Xl,t表示时间步长为t时处于l层的神经元节点对应的激活值;W 表示对应的突触权重;该突触整合过程可通过卷积或全连接等形式实现。
以及,采用如下公式:
计算得出该神经元节点当前对应的膜电位其中,/>表示前一个时间步长对应的膜电位,即相对的静息电位。
在一些实施例中,针对输出数据,通过模拟激活函数f()以及输出时对应的激活值Xl,t+1计算得出。在一些实施例中,该模拟激活函数f()对应如下公式:f(x)=S(x-Vth),其中,S()为阶跃函数,或称赫维赛德(Heaviside) 函数。
再者,针对节点内部,该神经元节点对应的节点函数NF()可通过如下定义式进行描述:
其中,表示该神经元节点在响应脉冲发射后对应的膜电位。
以及,在脉冲发射后对应的膜电位与该神经元节点当前对应的膜电位/>之间的关系函数τ()可通过如下定义式进行描述:
其中,Vth表示重置阈值,Vreset表示复位电位,若当前膜电位大于或等于重置阈值时,该神经元节点发射脉冲,并将膜电位重置至复位电位;α为乘性衰减系数,β为加性衰减系数。
另外,针对反向传播规则,由上式可得,在根据基于时间的反向传播规则进行突触权重计算时,根据链式法则,对于所涉及到的关系函数τ(),在对/>求偏导时有:
其中,δ()为狄拉克δ函数,该函数在除了零点以外的点函数值都等于零,其在整个定义域上的积分等于1。由于该函数在反向传播时不友好,因此为其引入了一个矩形窗口,以函数δ(x)为例,其矩形窗口为:
其中,μ为正数。
需要说明的是,上述对根据前向输出结果和反向误差得到第一权重,以及相应脉冲神经网络模型、神经元节点的描述,仅为本公开实施例提供的一种具体实施方式,其不会对本公开的技术方案产生限制。其他根据相应参数计算得出第一权重的计算方式,以及相应的神经网络模型,同样适用于本公开的技术方案。
在一些实施例中,步骤103中利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重,可以包括:利用所述突触可塑性规则下的长期可塑性(Long Term Plasticity,简称LT)子规则对所述目标突触权重包括的第二突触权重进行学习,得出所述第二权重。
其中,突触可塑性规则采用脉冲时序依赖可塑性规则。由此,基于长期可塑性子规则进行第二突触权重的建模学习。
在一些实施例中,所述长期可塑性子规则包括:长期抑制(Long TermDepression,简称LTD)子规则和长期增强(Long-Term Potentiation,简称 LTP)子规则。在所述长期可塑性子规则包括:长期抑制子规则和长期增强子规则的情况下,所述利用所述突触可塑性规则下的长期可塑性子规则对所述目标突触权重包括的第二突触权重进行学习,得出所述第二权重,如图6所示,具体实现可以包括如下步骤:
步骤601,根据所述目标突触权重中第二突触权重对应的前脉冲信息和后脉冲信息得到第一权重参数。
其中,考虑到突触前后神经元的相互作用,通过前脉冲信息和后脉冲信息计算得到第一权重参数。
具体地,在一些实施例中,可以基于赫布(Hebbian,简称HB)理论,通过局部变量trace跟踪单个神经元节点的先前活动和先前值。其中,先前活动体现为在上一个时间步长该神经元节点的膜电位变化情况以及脉冲发放情况,先前值体现为上一个时间步长的trace的值。使用xi(t)表示突触前神经元i相关的trace,使用yj(t)表示突触后神经元j相关的trace。由此,采用如下公式:
计算得出第一权重参数HB±(t)。其中,t为时间变量;si(t)和sj(t)分别表示前脉冲信息和后脉冲信息。
步骤602,根据突触可塑性规则的超参和所述目标突触权重中第二突触权重的当前值,得到第二权重参数。
其中,突触可塑性规则的超参包含连接局部学习模块的系数、或者局部学习规则中本身包含的需要人为事先指定的超参数,例如学习率、遗忘率、滑动阈值等。
在一种可能的实现方式中,所述突触可塑性规则的超参为学习率。本实现方式中,可以根据学习率和目标突触权重中第二突触权重的当前值得到第二权重参数。其中,考虑到目标突触权重中第二突触权重自身进行迭代更新,通过学习率和第二突触权重的当前值计算得到第二权重参数。
具体地,在一些实施例中,基于加性(additive)理论,采用如下公式:
计算得到第二权重参数WB±(t),其中,λ为学习率,η表示长期抑制子规则和长期增强子规则之间的比例系数。
在一些实施例中,可以利用反向传播规则对突触可塑性规则的超参进行更新。例如,可以基于元学习(Meta-learning)的思路对突触可塑性规则的超参“学习率”进行更新。
步骤603,根据所述第一权重参数和所述第二权重参数确定与所述长期增强子规则对应的第三权重参数;并根据所述第一权重参数和所述第二权重参数确定与所述长期抑制子规则对应的第四权重参数。
本步骤可以通过基于前脉冲信息和后脉冲信息得到的第一权重参数,以及基于学习率和目标突触权重中第二突触权重的当前值得到的第二权重参数,得出长期增强子规则对应的第三权重参数和长期抑制子规则对应的第四权重参数。
具体地,在一些实施例中,采用如下公式:
w′(t)=HB+(t)*WB+(t)
计算得出第三权重参数w′(t)。以及,采用如下公式:
w″(t)=HB-(t)*WB-(t)
计算得出第四权重参数w″(t)。
步骤604,根据所述第三权重参数和所述第四权重参数,得出所述第二权重。
本步骤可以基于长期增强子规则对应的第三权重参数和长期抑制子规则对应的第四权重参数计算得出第二权重。在一些实施例中,采用如下公式:
w(t)=w(t-Δt)+w′(t)+w″(t)
计算得出第二权重w(t)。其中,Δt表示时间步长。
需要说明的是,上述对利用具体公式计算得出相应权重参数和权重的描述,仅为本公开实施例提供的一种具体实施方式,其不会对本公开的技术方案产生限制,其他根据相应参数计算得出权重和权重参数的计算方式同样适用于本公开的技术方案。
图7为本公开实施例提供的一种电子设备的组成框图。如图7所示,该电子设备包括:
多个处理核701;以及
片上网络702,被配置为交互该多个处理核701间的数据和外部数据;
一个或多个处理核701中存储有一个或多个指令,该一个或多个指令被一个或多个处理核701执行,以使一个或多个处理核701能够实现如上述实施例中任一的突触权重训练方法。
图8为本公开实施例提供的另一种脉冲神经网络模型的结构示意图。如图8所示,具体地,应用于众核系统,众核系统(或称众核处理器)中包括多个处理核;处理核又称为核、核心等,具备应用运行、任务处理等功能。其中,一个处理核上运行维护有一个或多个神经元单元;不同处理核,如处理核A、处理核B和处理核C上的神经元单元通过轴突缓冲区和突触连接,突触体现为轴突缓冲区与同处理核上的神经元单元之间连线的交点,例如d点,箭头指示神经元单元输出数据的方向。
图9为本公开实施例提供的另一种电子设备的组成框图。如图9所示,该电子设备包括:
一个或多个处理器901;
存储器902,其上存储有一个或多个程序,当该一个或多个程序被该一个或多个处理器执行,使得该一个或多个处理器901实现如上述实施例中任一的突触权重训练方法;
一个或多个I/O接口903,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。
其中,处理器901为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器902为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)903连接在处理器901与存储器902间,能实现处理901与存储器 902的信息交互,其包括但不限于数据总线(Bus)等。
在一些实施例中,处理器901、存储器902和I/O接口903通过总线 904相互连接,进而与计算设备的其它组件连接。
在一些实施例中,多个处理器901包括多个图形处理器(GPU),其组合设置构成图形处理器阵列。
图10为本公开实施例提供的一种计算机可读介质的组成框图。该计算机可读介质上存储有计算机程序,其中,该计算机程序在被处理器执行时实现如上述实施例中任一的突触权重训练方法中的步骤。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、 CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。
Claims (6)
1.一种突触权重训练方法,其特征在于,所述方法包括:
将训练样本对应的脉冲信号输入待训练的脉冲神经网络;
利用反向传播规则对所述脉冲神经网络中的目标突触权重包括的第一突触权重进行学习,得出第一权重;
利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重;其中,所述目标突触权重由所述第一突触权重和所述第二突触权重组成;
根据所述第一权重和所述第二权重更新所述目标突触权重;
其中,所述根据所述第一权重和所述第二权重更新所述目标突触权重,包括:
从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值;
根据所述第一权重、所述第二权重和所述目标突触权重的当前值,利用加法器更新所述目标突触权重;
输出更新后的目标突触权重,并将更新后的目标突触权重写入所述突触权重存储区;
所述从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值,包括:
响应于所述第一权重缓冲区和所述第二权重缓冲区均存储有未读取过的权重,从所述第一权重缓冲区中读取所述第一权重,从所述第二权重缓冲区中读取所述第二权重,以及从所述突触权重存储区中读取所述目标突触权重的当前值;
所述反向传播规则为基于时间的反向传播规则;所述利用反向传播规则对所述脉冲神经网络中的目标突触权重包括的第一突触权重进行学习,得出第一权重,包括:
根据前向输出结果和反向误差,得到所述第一权重;
所述利用突触可塑性规则对所述目标突触权重包括的第二突触权重进行学习,得出第二权重,包括:
利用所述突触可塑性规则下的长期可塑性子规则对所述目标突触权重包括的第二突触权重进行学习,得出所述第二权重;
所述长期可塑性子规则包括:长期抑制子规则和长期增强子规则;
所述利用所述突触可塑性规则下的长期可塑性子规则对所述目标突触权重包括的第二突触权重进行学习,得出所述第二权重,包括:
根据所述目标突触权重中第二突触权重对应的前脉冲信息和后脉冲信息得到第一权重参数;
根据突触可塑性规则的超参和所述目标突触权重中第二突触权重的当前值,得到第二权重参数;
根据所述第一权重参数和所述第二权重参数确定与所述长期增强子规则对应的第三权重参数;并根据所述第一权重参数和所述第二权重参数确定与所述长期抑制子规则对应的第四权重参数;
根据所述第三权重参数和所述第四权重参数,得出所述第二权重;
所述从第一权重缓冲区中读取所述第一权重,从第二权重缓冲区中读取所述第二权重,以及从突触权重存储区中读取所述目标突触权重的当前值,包括:
获取经第一调控器加权后输出的第一权重,以及获取经第二调控器加权后输出的第二权重;其中,所述第一调控器与所述第一权重缓冲区相连接,所述第二调控器与所述第二权重缓冲区相连接;
所述根据所述第一权重、所述第二权重和所述目标突触权重的当前值,利用加法器更新所述目标突触权重,包括:
将加权后的所述第一权重、加权后的所述第二权重和所述目标突触权重的当前值输入至加法器,并根据加法器的输出结果更新所述目标突触权重;
由所述第一调控器根据所述目标突触权重中第一突触权重对应的监督信号的置信度对所述第一权重对应的第一加权系数进行调整;
由所述第二调控器根据调控信号对所述第二权重对应的第二加权系数进行调整;其中,所述调控信号基于所述脉冲神经网络中的一层的脉冲信息确定。
2.根据权利要求1所述的方法,其特征在于,所述训练样本对应的脉冲信号,包括:事件相机采集得到的脉冲信号。
3.根据权利要求1所述的方法,其特征在于,所述脉冲神经网络的神经元模型采用LIF模型。
4.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3中任一所述的突触权重训练方法。
5.一种电子设备,包括:
多个处理核;以及
片上网络,被配置为交互所述多个处理核间的数据和外部数据;
一个或多个所述处理核中存储有一个或多个指令,一个或多个所述指令被一个或多个所述处理核执行,以使一个或多个所述处理核能够执行如权利要求1-3中任一所述的突触权重训练方法。
6.一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序在被处理器执行时实现如权利要求1-3中任一所述的突触权重训练方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110624652.2A CN113537455B (zh) | 2021-06-04 | 2021-06-04 | 突触权重训练方法、电子设备和计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110624652.2A CN113537455B (zh) | 2021-06-04 | 2021-06-04 | 突触权重训练方法、电子设备和计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113537455A CN113537455A (zh) | 2021-10-22 |
CN113537455B true CN113537455B (zh) | 2024-04-12 |
Family
ID=78095180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110624652.2A Active CN113537455B (zh) | 2021-06-04 | 2021-06-04 | 突触权重训练方法、电子设备和计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113537455B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022253229A1 (zh) * | 2021-06-04 | 2022-12-08 | 北京灵汐科技有限公司 | 突触权重训练方法、目标识别方法及电子设备、介质 |
CN116304676B (zh) * | 2023-02-01 | 2023-11-17 | 瑞鞍星医疗科技(苏州)有限公司 | 脑活动状态分类模型训练方法、装置和设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112085198A (zh) * | 2020-09-21 | 2020-12-15 | 中国科学院自动化研究所 | 基于全局反馈以及局部突触可塑的脉冲神经网络优化方法 |
WO2021011931A1 (en) * | 2019-07-17 | 2021-01-21 | The Regents Of The University Of California | Biologically inspired sleep algorithm for artificial neural networks |
CN112734012A (zh) * | 2021-01-07 | 2021-04-30 | 北京灵汐科技有限公司 | 脉冲神经网络训练方法、数据处理方法、电子设备和介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10713562B2 (en) * | 2016-06-18 | 2020-07-14 | International Business Machines Corporation | Neuromorphic memory circuit |
US11501131B2 (en) * | 2016-09-09 | 2022-11-15 | SK Hynix Inc. | Neural network hardware accelerator architectures and operating method thereof |
-
2021
- 2021-06-04 CN CN202110624652.2A patent/CN113537455B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021011931A1 (en) * | 2019-07-17 | 2021-01-21 | The Regents Of The University Of California | Biologically inspired sleep algorithm for artificial neural networks |
CN112085198A (zh) * | 2020-09-21 | 2020-12-15 | 中国科学院自动化研究所 | 基于全局反馈以及局部突触可塑的脉冲神经网络优化方法 |
CN112734012A (zh) * | 2021-01-07 | 2021-04-30 | 北京灵汐科技有限公司 | 脉冲神经网络训练方法、数据处理方法、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113537455A (zh) | 2021-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10671912B2 (en) | Spatio-temporal spiking neural networks in neuromorphic hardware systems | |
US9111224B2 (en) | Method and apparatus for neural learning of natural multi-spike trains in spiking neural networks | |
CN113537455B (zh) | 突触权重训练方法、电子设备和计算机可读介质 | |
EP3136304A1 (en) | Methods and systems for performing reinforcement learning in hierarchical and temporally extended environments | |
US11954579B2 (en) | Synaptic weight training method, target identification method, electronic device and medium | |
US10152627B2 (en) | Feature flow for video recognition | |
US10902311B2 (en) | Regularization of neural networks | |
EP3659072B1 (fr) | Calculateur pour reseau de neurones impulsionnel avec agregation maximale | |
US11775807B2 (en) | Artificial neural network and method of controlling fixed point in the same | |
FR3050855A1 (fr) | Dispositif et procede de calcul de convolution d'un reseau de neurones convolutionnel | |
CN110930996B (zh) | 模型训练方法、语音识别方法、装置、存储介质及设备 | |
CN112734012A (zh) | 脉冲神经网络训练方法、数据处理方法、电子设备和介质 | |
CN113269264B (zh) | 目标识别方法、电子设备和计算机可读介质 | |
Skatchkovsky et al. | Bayesian continual learning via spiking neural networks | |
CN113269113B (zh) | 人体行为识别方法、电子设备和计算机可读介质 | |
CN111461862B (zh) | 为业务数据确定目标特征的方法及装置 | |
Alonso et al. | A theoretical framework for inference learning | |
CN113935475A (zh) | 具有脉冲时刻偏移量的脉冲神经网络的仿真与训练方法 | |
WO2019057552A1 (en) | TIME REGROUP AND CORRELATION IN AN ARTIFICIAL NEURAL NETWORK | |
US20220027727A1 (en) | Online training of neural networks | |
CN113269313B (zh) | 突触权重训练方法、电子设备和计算机可读介质 | |
CN110889316B (zh) | 一种目标对象识别方法、装置及存储介质 | |
CN111860053A (zh) | 一种多媒体数据识别方法及装置 | |
CN111582461B (zh) | 神经网络训练方法、装置、终端设备和可读存储介质 | |
US11526735B2 (en) | Neuromorphic neuron apparatus for artificial neural networks |
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 |