CN114091652A - 脉冲神经网络模型训练方法、处理芯片以及电子设备 - Google Patents
脉冲神经网络模型训练方法、处理芯片以及电子设备 Download PDFInfo
- Publication number
- CN114091652A CN114091652A CN202111303941.9A CN202111303941A CN114091652A CN 114091652 A CN114091652 A CN 114091652A CN 202111303941 A CN202111303941 A CN 202111303941A CN 114091652 A CN114091652 A CN 114091652A
- Authority
- CN
- China
- Prior art keywords
- potential
- training
- neural network
- neuron
- synapse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000003062 neural network model Methods 0.000 title claims abstract description 31
- 210000002569 neuron Anatomy 0.000 claims abstract description 123
- 238000013528 artificial neural network Methods 0.000 claims abstract description 90
- 210000000225 synapse Anatomy 0.000 claims abstract description 89
- 239000012528 membrane Substances 0.000 claims abstract description 53
- 238000012421 spiking Methods 0.000 claims abstract description 26
- 230000001242 postsynaptic effect Effects 0.000 claims abstract description 6
- 230000000284 resting effect Effects 0.000 claims description 25
- 230000036982 action potential Effects 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000000946 synaptic effect Effects 0.000 abstract description 15
- 230000008569 process Effects 0.000 abstract description 13
- 238000004422 calculation algorithm Methods 0.000 description 10
- 210000003050 axon Anatomy 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 210000001787 dendrite Anatomy 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 210000004556 brain Anatomy 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 206010012601 diabetes mellitus Diseases 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003518 presynaptic effect Effects 0.000 description 1
- 230000004044 response Effects 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/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/08—Learning methods
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)
- Image Analysis (AREA)
Abstract
本发明实施例提供了一种脉冲神经网络模型训练方法、处理芯片以及电子设备,涉及计算机技术领域。脉冲神经网络模型训练方法包括:对脉冲神经网络中各神经元的电位参数以及连接在神经元之间的突触的权重进行初始化;在本轮训练中将训练数据输入到脉冲神经网络,若检测到连接在任一突触前的神经元发射脉冲信号,采集连接在任一突触后的目标神经元的膜电位,并根据目标神经元的膜电位与目标神经元的电位参数,对任一突触的权重进行更新。本发明中,减小了突触权重更新过程的复杂程度,降低了训练对硬件性能的要求,适用于布置在算力较低的边缘设备。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种脉冲神经网络模型训练方法、处理芯片以及电子设备。
背景技术
脉冲神经网络(Spiking Neural Network,简称SNN)近年来以其低功耗和更接近人脑的特点吸引了学术界和产业界的关注。在脉冲神经网络中,轴突是接收脉冲的单元,神经元是发送脉冲的单元,一个神经元通过树突连接到多个轴突,树突和轴突的连接点称为突触。轴突接收到脉冲后,所有和这一轴突有突触连接的树突会收到脉冲,进而影响到树突下游神经元。神经元将来自多个轴突的脉冲相加并与之前的膜电压累加,如果数值超过阈值,就向下游发送一个脉冲。冲神经网络具有更接近于生物大脑的特征,其能够以低功耗的模型处理低精度的数据的特点相比传统的深度神经网络更适合布置在算力有限且需要及时响应的边缘设备,完成诸如模式识别及分类等任务。
在SNN的设计中,为了设计出适用于SNN的学习算法,现有的学习算法或是直接基于脉冲时间依赖可塑性机制,或是借鉴传统神经网络中反向传播的机制进行权重的学习和更新。但是这两种算法中涉及的运算操作对硬件算力要求较高,较为耗时;另外,这两种算法没有考虑到所处理的数据的特征,不适用处理信息量丰富的数据。
发明内容
本发明的目的是提供了一种脉冲神经网络模型训练方法、处理芯片以及电子设备,仅需采集连接在突触后的神经元的膜电压,即可完成对突触的权重的更新,无需采集计算突触前后神经元发射脉冲信号的时间差,减小了突触权重更新过程的复杂程度,降低了训练对硬件性能的要求,适用于布置在算力较低的边缘设备。
为实现上述目的,本发明提供了一种脉冲神经网络模型训练方法,包括:对脉冲神经网络中各神经元的电位参数以及连接在神经元之间的突触的权重进行初始化;所述电位参数包括所述神经元的静息电位、边界电位以及动作电位;在本轮训练中将训练数据输入到所述脉冲神经网络,若检测到连接在任一突触前的神经元发射脉冲信号,采集连接在所述任一突触后的目标神经元的膜电位,并根据所述目标神经元的膜电位与所述目标神经元的电位参数,对所述任一突触的权重进行更新;判断经过本轮训练后的所述脉冲神经网络是否满足预设的训练结束条件;若满足预设的训练结束条件,结束所述脉冲神经网络的训练;若不满足预设的训练结束条件,将所述训练数据输入到本轮训练后得到的所述脉冲神经网络进行下一轮训练。
本发明还提供了一种处理芯片,用于执行上述的脉冲神经网络模型训练方法。
本发明还提供了一种电子设备,包括:至少一个处理芯片;以及,与所述至少一个处理芯片通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理芯片执行的指令,所述指令被所述至少一个处理芯片执行,以使所述至少一个处理芯片能够执行如上述的脉冲神经网络模型训练方法。
本发明实施例中,在脉冲神经网络的训练过程中,仅需采集连接在突触后的神经元的膜电压,即可完成对突触的权重的更新,无需采集计算突触前后神经元发射脉冲信号的时间差,减小了突触权重更新过程的复杂程度,降低了训练对硬件性能的要求,适用于布置在算力较低的边缘设备中;同时,仅需在连接在突触前的神经元发出脉冲信号时进行突触权重更新,减少了权重更新次数,简化了更新过程,缩短了训练所需的时间且降低了训练成本。
在一个实施例中,所述根据所述目标神经元的膜电位与所述目标神经元的电位参数,对所述任一突触的权重进行更新,包括:根据所述目标神经元的膜电位与所述目标神经元的电位参数,得到对所述任一突触进行权重更新的中间值;根据对所述任一突触进行权重更新的中间值与预设的学习率,得到更新后的所述任一突触的权重。
在一个实施例中,所述根据所述目标神经元的膜电位与所述目标神经元的电位参数,得到对所述任一突触进行权重更新的中间值,包括:判断所述目标神经元的膜电位与所述目标神经元的静息电位的大小关系;若所述目标神经元的膜电位小于所述目标神经元的静息电位,将预设的权重更新常数作为对所述任一突触进行权重更新的中间值;若所述目标神经元的膜电位大于或等于所述目标神经元的静息电位,根据所述目标神经元的膜电位、静息电位、边界电位以及动作电位计算对所述任一突触进行权重更新的中间值。
在一个实施例中,其特征在于,所述任一突触进行权重更新的中间值的计算公式为:
其中,Δw′表示所述任一突触进行权重更新的中间值,Vpost表示所述目标神经元的膜电位,Vthreshold表示所述目标神经元的动作电位,Vresting表示所述目标神经元的静息电位,Vboundary表示所述目标神经元的边界电位。
在一个实施例中,所述根据对所述任一突触进行权重更新的中间值与预设的学习率,得到更新后的所述任一突触的权重,包括:计算所述任一突触进行权重更新的中间值与所述学习率的乘积;计算所述乘积与所述任一突触的当前权重之和作为更新后的所述任一突触的权重。
在一个实施例中,所述神经元的边界电位的计算公式为:
其中,Vthreshold表示所述神经元的动作电位,Vresting表示所述神经元的静息电位,Vboundary表示所述神经元的边界电位。
在一个实施例中,预设的权重更新常数大于-1,且小于1。
在一个实施例中,预设的训练结束条件为训练轮数达到预设的轮数阈值或者训练后的脉冲神经网络满足预设的收敛条件。
附图说明
图1是根据本发明第一实施例中的脉冲神经网络模型训练方法的具体流程图;
图2是根据本发明第二实施例中的脉冲神经网络模型训练方法的具体流程图;
图3是图2中的脉冲神经网络模型训练方法的子步骤2022的具体流程图;
图4是图2中的脉冲神经网络模型训练方法的子步骤2023的具体流程图;
图5是根据本发明第二实施例中的脉冲神经网络模型训练方法中的中间值与预设的学习率的乘积随膜电压变化的示意图。
具体实施方式
以下将结合附图对本发明的各实施例进行详细说明,以便更清楚理解本发明的目的、特点和优点。应理解的是,附图所示的实施例并不是对本发明范围的限制,而只是为了说明本发明技术方案的实质精神。
在下文的描述中,出于说明各种公开的实施例的目的阐述了某些具体细节以提供对各种公开实施例的透彻理解。但是,相关领域技术人员将认识到可在无这些具体细节中的一个或多个细节的情况来实践实施例。在其它情形下,与本申请相关联的熟知的装置、结构和技术可能并未详细地示出或描述从而避免不必要地混淆实施例的描述。
除非语境有其它需要,在整个说明书和权利要求中,词语“包括”和其变型,诸如“包含”和“具有”应被理解为开放的、包含的含义,即应解释为“包括,但不限于”。
在整个说明书中对“一个实施例”或“一实施例”的提及表示结合实施例所描述的特定特点、结构或特征包括于至少一个实施例中。因此,在整个说明书的各个位置“在一个实施例中”或“在一实施例”中的出现无需全都指相同实施例。另外,特定特点、结构或特征可在一个或多个实施例中以任何方式组合。
如该说明书和所附权利要求中所用的单数形式“一”和“”包括复数指代物,除非文中清楚地另外规定。应当指出的是术语“或”通常以其包括“或/和”的含义使用,除非文中清楚地另外规定。
在以下描述中,为了清楚展示本发明的结构及工作方式,将借助诸多方向性词语进行描述,但是应当将“前”、“后”、“左”、“右”、“外”、“内”、“向外”、“向内”、“上”、“下”等词语理解为方便用语,而不应当理解为限定性词语。
本发明第一实施方式涉及一种脉冲神经网络模型训练方法,应用于电子设备中的处理芯片,电子设备例如为手机、平板电脑、笔记本电脑、台式主机、或者边缘服务器等。处理芯片中预先映射了待训练的脉冲神经网络,继而执行本实施例中的脉冲神经网络模型训练方法对该脉冲神经网络模型进行训练,得到满足需求的脉冲神经网络;脉冲神经网络可以用于实现模式识别、样本分类等功能。
本实施方式的脉冲神经网络模型训练方法的具体流程如图1所示。
步骤101,对脉冲神经网络中各神经元的电位参数以及连接在神经元之间的突触的权重进行初始化;电位参数包括神经元的静息电位、边界电位以及动作电位。
具体而言,在待训练的脉冲神经网络中,相邻两个神经元之间通过突触连接,各突触具有可修改的连接权重;本实施例中,在对脉冲神经网络进行训练时,先对脉冲神经网络进行初始化,初始化过程包括:对各神经元的静息电位、动作电位进行初始化,由此也相当于对各神经元的动作电位进行了初始化;初始化过程同时还包括对各突触的权重进行初始化。
其中,各神经元的边界电位的计算公式为:
其中,Vthreshold表示神经元的动作电位,Vresting表示神经元的静息电位,Vboundary表示神经元的边界电位。
步骤102,在本轮训练中将训练数据输入到脉冲神经网络,若检测到连接在任一突触前的神经元发射脉冲信号,采集连接在任一突触后的目标神经元的膜电位,并根据目标神经元的膜电位与目标神经元的电位参数,对任一突触的权重进行更新。
步骤103,判断经过本轮训练后的脉冲神经网络是否满足预设的训练结束条件。若是,则进入步骤104;若否,则进入步骤105。
步骤104,结束脉冲神经网络的训练。
步骤105,将训练数据输入到本轮训练后得到的脉冲神经网络进行下一轮训练。
具体而言,在对脉冲神经网络进行训练时,先准备好训练集,训练集的训练数据中包括多个训练样本以及每个训练样本的识别结果;然后利用训练数据对脉冲神经网络进行多轮训练。
在本轮训练中,将训练数据中的各训练样本分别输入到脉冲神经网络中,以任一训练样本为例,在该训练样本被输入到脉冲神经网络后,分别检测连接在各突触前的神经元是否发射脉冲信号;对于每个突触,当检测到连接在该突触前的神经元发射脉冲信号时,采集连接在该突触后的目标神经元的膜电位,继而再根据目标神经元的膜电位与电位参数,对该突触的权重进行更新。随后,将下一个训练样本输入到脉冲神经网络中,并重复上述突触的权重更新过程,直至训练数据中所有的训练样本均输入到脉冲神经网络,并完成了突触的权重的更新后,本轮训练结束。
在每轮训练结束后,判断经过本轮训练后的脉冲神经网络是否满足预设的训练结束条件,若经过本轮训练后的脉冲神经网络满足预设的训练结束条件,则停止训练,并将经过本轮训练后的脉冲神经网络作为最终输出的脉冲神经网络;若经过本轮训练后的脉冲神经网络不满足预设的训练结束条件,则将训练数据输入到本轮训练后得到的脉冲神经网络,重复上述训练过程,直至训练得到满足预设的训练结束条件的脉冲神经网络。训练得到满足预设的训练结束条件的脉冲神经网络即为最终输出的脉冲神经网络,该脉冲神经网络则可以映射到处理芯片上实现相应的功能。
其中,预设的训练结束条件为训练轮数达到预设的轮数阈值或者训练后的脉冲神经网络满足预设的收敛条件。例如预设的训练结束条件为训练轮数达到预设的轮数阈值,即在每轮训练结束后,判断本轮训练的轮数是否达到预设的轮数阈值,当本轮训练的轮数达到预设的轮数阈值,判定经过本轮训练后的脉冲神经网络是否满足预设的训练结束条件,将经过本轮训练后的脉冲神经网络作为最终输出的脉冲神经网络。例如预设的训练结束条件为训练后的脉冲神经网络满足预设的收敛条件,预设的收敛条件可以为训练后的脉冲神经网络的准确率达到预设准确率阈值或者连续多轮训练得到的脉冲神经网络的准确率之间的差值小于预设阈值,即在每轮训练结束后,判断本轮训练后的脉冲神经网络是否满足预设的收敛条件,当本轮训练后的脉冲神经网络满足预设的收敛条件时,将经过本轮训练后的脉冲神经网络作为最终输出的脉冲神经网络。
本实施例中,在对脉冲神经网络模型进行训练时,先对脉冲神经网络中各神经元的电位参数以及连接在神经元之间的突触的权重进行初始化,电位参数包括神经元的静息电位、边界电位以及动作电位;随后开始对脉冲神经网络模型进行一轮训练,将训练数据输入到脉冲神经网络,若检测到连接在任一突触前的神经元发射脉冲信号,采集连接在任一突触后的目标神经元的膜电位,并根据目标神经元的膜电位与目标神经元的电位参数,对任一突触的权重进行更新;当完成一轮训练后,判断经过本轮训练后的脉冲神经网络是否满足预设的训练结束条件;若满足预设的训练结束条件,结束脉冲神经网络的训练,本轮训练所得到的脉冲神经网络即为最终输出的脉冲神经网络;若不满足预设的训练结束条件,将训练数据输入到本轮训练后得到的脉冲神经网络进行下一轮训练,直至得到满足预设的训练结束条件的脉冲神经网络。本实施例的脉冲神经网络的训练过程中,仅需采集连接在突触后的神经元的膜电压,即可完成对突触的权重的更新,无需采集计算突触前后神经元发射脉冲信号的时间差,减小了突触权重更新过程的复杂程度,降低了训练对硬件性能的要求,适用于布置在算力较低的边缘设备中;同时,仅需在连接在突触前的神经元发出脉冲信号时进行突触权重更新,减少了权重更新次数,简化了更新过程,缩短了训练所需的时间且降低了训练成本。
本发明的第二实施例涉及一种脉冲神经网络模型训练方法,本实施方式相对于第一实施方式而言:本实施例提供了根据目标神经元的膜电位与目标神经元的电位参数,对任一突触的权重进行更新的一种具体实现方式。
本实施例的脉冲神经网络模型训练方法的具体流程如图2所示。
步骤201,对脉冲神经网络中各神经元的电位参数以及连接在神经元之间的突触的权重进行初始化;电位参数包括神经元的静息电位、边界电位以及动作电位。与第一实施例的步骤101大致相同,在此不再赘述。
步骤202,包括以下子步骤:
子步骤2021,在本轮训练中将训练数据输入到脉冲神经网络,若检测到连接在任一突触前的神经元发射脉冲信号,采集连接在任一突触后的目标神经元的膜电位。
子步骤2022,根据目标神经元的膜电位与目标神经元的电位参数,得到对任一突触进行权重更新的中间值。
子步骤2023,根据对任一突触进行权重更新的中间值与预设的学习率,得到更新后的任一突触的权重。
具体而言,在对脉冲神经网络进行训练时,先准备好训练集,训练集的训练数据中包括多个训练样本以及每个训练样本的识别结果;然后利用训练数据对脉冲神经网络进行多轮训练。
在本轮训练中,将训练数据中的各训练样本分别输入到脉冲神经网络中,以任一训练样本为例,在该训练样本被输入到脉冲神经网络后,分别检测连接在各突触前的神经元是否发射脉冲信号;对于每个突触,当检测到连接在该突触前的神经元发射脉冲信号时,采集连接在该突触后的目标神经元的膜电位;随后,基于该目标神经元的膜电位与该目标神经元的电位参数,计算得到用于对该突触进行权重更新的中间值,继而能够根据该中间值与预设的学习率,对突触的当前权重进行更新,得到更新后的该突触的权重。其中,预设的学习率可以采用一个固定的常数,或者学习率也可以按照预设的方式进行衰减,例如分段衰减、指数衰减、自然数指数衰减等。
在一个例子中,请参考图3,子步骤2022包括以下子步骤:
子步骤20221,判断目标神经元的膜电位与目标神经元的静息电位的大小关系。若目标神经元的膜电位小于静息电位,进入子步骤20222;若目标神经元的膜电位大于或等于静息电位,进入子步骤20223。
子步骤20222,将预设的权重更新常数作为对任一突触进行权重更新的中间值。
子步骤20223,根据目标神经元的膜电位、静息电位、边界电位以及动作电位计算对任一突触进行权重更新的中间值。
具体而言,在得到目标神经元的膜电位之后,将目标神经元的膜电位与目标神经元的静息电位进行对比,获取目标神经元的膜电位与目标神经元的静息电位之间的大小关系。若目标神经元的膜电位小于静息电位,则将预设的权重更新常数β作为对任一突触进行权重更新的中间值Δw′,即Δw′=β;其中权重更新常数β可以为-1到1之间的常数,即-1<β小于1,该权重更新常数的正负和大小可以根据最后训练得到的脉冲神经网络的准确率来进行调整。
若目标神经元的膜电位大于或等于静息电位,则根据目标神经元的膜电位、静息电位、边界电位以及动作电位计算对任一突触进行权重更新的中间值Δw′,任一突触进行权重更新的中间值的计算公式为:
其中,Δw′表示任一突触进行权重更新的中间值,Vpost表示目标神经元的膜电位,Vthreshold表示目标神经元的动作电位,Vresting表示目标神经元的静息电位,Vboundary表示目标神经元的边界电位。
在一个例子中,请参考图4,子步骤2023包括以下子步骤:
子步骤20231,计算任一突触进行权重更新的中间值与学习率的乘积。
子步骤20232,计算乘积与任一突触的当前权重之和作为更新后的任一突触的权重。
具体而言,以任一突触为例,在得到了突触进行权重更新的中间值Δw′后,先计算中间值Δw′与预设的学习率learning_rate的乘积,乘积Δw=learning_rate*Δw′。
然后计算乘积Δw与任一突触的当前权重w当前之和作为更新后的任一突触的权重w更新,即w更新=w当前+Δw。
在上式(1)中,在Vresting≤Vpost<Vboundary时,(Vpost-Vboundary)为负值,Δw′为负值,此时减小突触的权重,神经元的膜电位Vpost与静息电位Vresting越接近,(Vpost-Vboundary)越小,Δw′也就越小,减小的突触的权重越大;在Vboundary≤Vpost≤Vthreshold,(Vpost-Vboundary)为正值,Δw′为正值,此时增加突触的权重,神经元的膜电位Vpost与动作电位Vthreshold越接近,(Vpost-Vboundary)越大,Δw′也就越大,增加的突触的权重越大;当Vthreshold<Vpost时,(Vpost-Vboundary)为正值,Δw′为正值,此时增加突触的权重,神经元的膜电位Vpost越大,(Vpost-Vboundary)越大,Δw′也就越大,增加的突触的权重越大。在式(1)中采用的三次方运算,相比于指数运算,降低了运算复杂度,更易于硬件实现,同时能够使最终得到的权重更加逼近最大值或最小值。
综上可知,请参考图5,当Vpost<Vresting,Δw为固定值learning_rate*β,图中以β=0为例,Δw=0,突触的权重保持不变;在Vresting≤Vpost<Vboundary时,Δw为负值,突触的权重会减小;在Vboundary≤Vpost≤Vthreshold时,Δw为正值,突触的权重会增大。需要说明的是,图5中仅示意性给出了Vresting、Vpost、Vboundary的大小和所处的膜电压范围;另外当Vpost>Vthreshold时,仍然可以采用本实施例中的方法计算Δw,图5中未示出。
步骤203,判断经过本轮训练后的脉冲神经网络是否满足预设的训练结束条件。若是,则进入步骤204;若否,则进入步骤205。
步骤204,结束脉冲神经网络的训练。
步骤205,将训练数据输入到本轮训练后得到的脉冲神经网络进行下一轮训练。
具体而言,在每轮训练结束后,判断经过本轮训练后的脉冲神经网络是否满足预设的训练结束条件,若经过本轮训练后的脉冲神经网络满足预设的训练结束条件,则停止训练,并将经过本轮训练后的脉冲神经网络作为最终输出的脉冲神经网络;若经过本轮训练后的脉冲神经网络不满足预设的训练结束条件,则将训练数据输入到本轮训练后得到的脉冲神经网络,重复上述训练过程,直至训练得到满足预设的训练结束条件的脉冲神经网络。训练得到满足预设的训练结束条件的脉冲神经网络即为最终输出的脉冲神经网络,该脉冲神经网络则可以映射到处理芯片上实现相应的功能。
本实例中的脉冲神经网络模型训练方法在针对信息量丰富的数据也能够达到较好的训练效果,训练得到的脉冲神经网络的准确率较高;举例来说,目前常用的脉冲神经网络的训练方法包括:STDP脉冲时序依赖可塑性算法与三重STDP脉冲时序依赖可塑性算法;训练数据集一般为Iris数据集、Wine数据集以及Diabetes数据集,三者均为信息量丰富的数据集;下表1为三种数据集经过STDP算法、三重STDP算法以及本实施例中的方法训练后,得到的脉冲神经网络的准确度。
表1
由上表可知,本实施例中的脉冲神经网络模型训练方法针对信息量丰富度较高的数据集时,相较于STDP算法以及三重STDP算法具有更高的准确率,具有更好的分类表现。
本发明的第三实施例涉及一种处理芯片,应用于电子设备,电子设备例如为手机、平板电脑、笔记本电脑、台式主机或者边缘服务器等。处理芯片用于执行第一或第二实施例中的脉冲神经网络模型训练方法。
本发明的第四实施例涉及一种电子设备,电子设备例如为手机、平板电脑、笔记本电脑、台式主机或者边缘服务器等。电子设备包括至少一个处理芯片;以及,与至少一个处理芯片通信连接的存储器;其中,存储器存储有可被至少一个处理芯片执行的指令,指令被至少一个处理芯片执行,以使至少一个处理芯片能够执行第一或第二实施例中的脉冲神经网络模型训练方法。
其中,存储器和处理芯片采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理芯片和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理芯片处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理芯片。
处理芯片负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理芯片在执行操作时所使用的数据。
本发明第五实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理芯片执行时实现上述方法实施例。
以上已详细描述了本发明的较佳实施例,但应理解到,若需要,能修改实施例的方面来采用各种专利、申请和出版物的方面、特征和构思来提供另外的实施例。
考虑到上文的详细描述,能对实施例做出这些和其它变化。一般而言,在权利要求中,所用的术语不应被认为限制在说明书和权利要求中公开的具体实施例,而是应被理解为包括所有可能的实施例连同这些权利要求所享有的全部等同范围。
Claims (10)
1.一种脉冲神经网络模型训练方法,其特征在于,包括:
对脉冲神经网络中各神经元的电位参数以及连接在神经元之间的突触的权重进行初始化;所述电位参数包括所述神经元的静息电位、边界电位以及动作电位;
在本轮训练中将训练数据输入到所述脉冲神经网络,若检测到连接在任一突触前的神经元发射脉冲信号,采集连接在所述任一突触后的目标神经元的膜电位,并根据所述目标神经元的膜电位与所述目标神经元的电位参数,对所述任一突触的权重进行更新;
判断经过本轮训练后的所述脉冲神经网络是否满足预设的训练结束条件;若满足预设的训练结束条件,结束所述脉冲神经网络的训练;若不满足预设的训练结束条件,将所述训练数据输入到本轮训练后得到的所述脉冲神经网络进行下一轮训练。
2.根据权利要求1所述的脉冲神经网络模型训练方法,其特征在于,所述根据所述目标神经元的膜电位与所述目标神经元的电位参数,对所述任一突触的权重进行更新,包括:
根据所述目标神经元的膜电位与所述目标神经元的电位参数,得到对所述任一突触进行权重更新的中间值;
根据对所述任一突触进行权重更新的中间值与预设的学习率,得到更新后的所述任一突触的权重。
3.根据权利要求2所述的脉冲神经网络模型训练方法,其特征在于,所述根据所述目标神经元的膜电位与所述目标神经元的电位参数,得到对所述任一突触进行权重更新的中间值,包括:
判断所述目标神经元的膜电位与所述目标神经元的静息电位的大小关系;
若所述目标神经元的膜电位小于所述目标神经元的静息电位,将预设的权重更新常数作为对所述任一突触进行权重更新的中间值;
若所述目标神经元的膜电位大于或等于所述目标神经元的静息电位,根据所述目标神经元的膜电位、静息电位、边界电位以及动作电位计算对所述任一突触进行权重更新的中间值。
5.根据权利要求2所述的脉冲神经网络模型训练方法,其特征在于,所述根据对所述任一突触进行权重更新的中间值与预设的学习率,得到更新后的所述任一突触的权重,包括:
计算所述任一突触进行权重更新的中间值与所述学习率的乘积;
计算所述乘积与所述任一突触的当前权重之和作为更新后的所述任一突触的权重。
7.根据权利要求3所述的脉冲神经网络模型训练方法,其特征在于,预设的权重更新常数大于-1,且小于1。
8.根据权利要求1所述的脉冲神经网络模型训练方法,其特征在于,预设的训练结束条件为训练轮数达到预设的轮数阈值或者训练后的脉冲神经网络满足预设的收敛条件。
9.一种处理芯片,其特征在于,用于执行权利要求1至8中任一项所述的脉冲神经网络模型训练方法。
10.一种电子设备,其特征在于,包括:至少一个处理芯片;以及,
与所述至少一个处理芯片通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理芯片执行的指令,所述指令被所述至少一个处理芯片执行,以使所述至少一个处理芯片能够执行如权利要求1至9中任一项所述的脉冲神经网络模型训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111303941.9A CN114091652A (zh) | 2021-11-05 | 2021-11-05 | 脉冲神经网络模型训练方法、处理芯片以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111303941.9A CN114091652A (zh) | 2021-11-05 | 2021-11-05 | 脉冲神经网络模型训练方法、处理芯片以及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114091652A true CN114091652A (zh) | 2022-02-25 |
Family
ID=80298979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111303941.9A Pending CN114091652A (zh) | 2021-11-05 | 2021-11-05 | 脉冲神经网络模型训练方法、处理芯片以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114091652A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023208178A1 (zh) * | 2022-04-29 | 2023-11-02 | 北京灵汐科技有限公司 | 信息处理方法及处理单元、芯片、设备、介质、产品 |
CN117493066A (zh) * | 2023-12-28 | 2024-02-02 | 苏州元脑智能科技有限公司 | 一种服务器的故障预测方法、装置、设备及介质 |
-
2021
- 2021-11-05 CN CN202111303941.9A patent/CN114091652A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023208178A1 (zh) * | 2022-04-29 | 2023-11-02 | 北京灵汐科技有限公司 | 信息处理方法及处理单元、芯片、设备、介质、产品 |
CN117493066A (zh) * | 2023-12-28 | 2024-02-02 | 苏州元脑智能科技有限公司 | 一种服务器的故障预测方法、装置、设备及介质 |
CN117493066B (zh) * | 2023-12-28 | 2024-03-15 | 苏州元脑智能科技有限公司 | 一种服务器的故障预测方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12073334B2 (en) | Human-computer dialogue method and apparatus | |
WO2021155706A1 (zh) | 利用不平衡正负样本对业务预测模型训练的方法及装置 | |
WO2020108474A1 (zh) | 图片分类、分类识别模型的生成方法、装置、设备及介质 | |
WO2020107806A1 (zh) | 一种推荐方法及装置 | |
US20190095794A1 (en) | Methods and apparatus for training a neural network | |
WO2021259090A1 (zh) | 联邦学习的方法、装置和芯片 | |
JP2020071883A (ja) | モデル訓練方法、データ認識方法及びデータ認識装置 | |
WO2021184902A1 (zh) | 图像分类方法、装置、及其训练方法、装置、设备、介质 | |
CN111507993A (zh) | 一种基于生成对抗网络的图像分割方法、装置及存储介质 | |
CN114091652A (zh) | 脉冲神经网络模型训练方法、处理芯片以及电子设备 | |
CN110866113B (zh) | 基于稀疏自注意力机制微调伯特模型的文本分类方法 | |
CN109086653B (zh) | 手写模型训练方法、手写字识别方法、装置、设备及介质 | |
CN111612136B (zh) | 一种神经形态视觉目标分类方法及系统 | |
CN108985442B (zh) | 手写模型训练方法、手写字识别方法、装置、设备及介质 | |
WO2023024920A1 (zh) | 模型训练方法、系统、集群及介质 | |
CN111065999A (zh) | 移动设备的功率状态控制 | |
WO2021036397A1 (zh) | 目标神经网络模型的生成方法和装置 | |
CN115242428B (zh) | 一种基于优化cw-rnn的网络安全态势预测方法 | |
CN110598737A (zh) | 一种深度学习模型的在线学习方法、装置、设备及介质 | |
WO2024114659A1 (zh) | 一种摘要生成方法及其相关设备 | |
CN117633184A (zh) | 一种模型构建和智能回复方法、设备及介质 | |
KR102191346B1 (ko) | 버스트 스파이크에 기반한 스파이킹 신경망 생성 방법 및 스파이킹 신경망 기반 추론 장치 | |
CN115599918B (zh) | 一种基于图增强的互学习文本分类方法及系统 | |
CN116127027A (zh) | 意图识别方法及装置、意图识别模型的训练方法及装置 | |
CN113807005B (zh) | 基于改进fpa-dbn的轴承剩余寿命预测方法 |
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 |