CN111582462B - 权值原位更新方法、装置、终端设备和可读存储介质 - Google Patents
权值原位更新方法、装置、终端设备和可读存储介质 Download PDFInfo
- Publication number
- CN111582462B CN111582462B CN202010438308.XA CN202010438308A CN111582462B CN 111582462 B CN111582462 B CN 111582462B CN 202010438308 A CN202010438308 A CN 202010438308A CN 111582462 B CN111582462 B CN 111582462B
- Authority
- CN
- China
- Prior art keywords
- neuron
- driving pulse
- pulse
- signal
- post
- 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
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/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/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
-
- 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)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Semiconductor Memories (AREA)
Abstract
本发明实施例公开了一种权值原位更新方法、装置、终端设备和可读存储介质,应用于忆阻器脉冲神经网络,所述忆阻器脉冲神经网络中每一突触仅包含一个忆阻器,突触训练过程包括信号处理时期和权值更新时期,该方法包括:在信号处理时期,获取突触的前神经元的输出端和后神经元的输出端确定的标记信号;在权值更新时期,根据前神经元的输出端确定的标记信号确定突触前端的前驱动脉冲;根据输入神经元产生的初始驱动脉冲和后神经元的输出端确定的标记信号确定突触后端的后驱动脉冲;当前驱动脉冲与后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值。本技术方案遵循忆阻器交叉阵列的读操作偏置方案,有效抑制串扰现象。
Description
技术领域
本发明涉及人工智能领域,尤其涉及一种权值原位更新方法、装置、终端设备和可读存储介质。
背景技术
目前,忆阻器脉冲神经网络的权值更新的方式主要可以分为以下三类:
一、离线训练,预先训练网络权值,再将权值写入到忆阻器阵列中;
二、非原位在线训练,该方法将忆阻器权值网络与计算机训练程序结合,通过ADC、DAC实现通信,并根据训练程序对忆阻器阵列进行权值调整;
三、原位在线训练,利用神经元和少量外围电路,直接在忆阻器阵列上进行权值训练,并基于突触的前后神经元信号实时调整权值。
然而,第一类方式虽然基于成熟的算法,但是在权值写入过程中导致的误差以及电路的不确定因素将会降低网络性能,网络训练电路资源开销较大,不适合与忆阻器阵列封装在一起,因此权值写入后网络不支持调整;第二类方式的训练在忆阻器阵列上,避免权值最终写入时造成的性能损失,但是实时信号传输对时间和功耗的开销较大,不利于实际应用;第三类方式最接近于生物大脑,但是受限于现有脉冲神经网络算法相对发展滞后,无法在网络性能上和前两种方法相比拟。
发明内容
鉴于上述问题,本发明提出一种权值原位更新方法、装置、终端设备和可读存储介质。
本发明的一个实施例提出一种权值原位更新方法,应用于忆阻器脉冲神经网络,所述忆阻器脉冲神经网络中每一突触仅包含一个忆阻器,突触训练过程包括信号处理时期和权值更新时期,该方法包括:
在所述信号处理时期,获取所述突触的前神经元的输出端和后神经元的输出端确定的标记信号;
在所述权值更新时期,根据所述前神经元的输出端确定的标记信号确定所述突触前端的前驱动脉冲;
根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定所述突触后端的后驱动脉冲;
当所述前驱动脉冲与所述后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值。
上述实施例所述的权值原位更新方法,所述突触的前神经元的输出端和后神经元的输出端确定标记信号,包括:
当所述前神经元是所述输入神经元时,则根据输入至所述输入神经元的数据样本将所述标记信号确定为正或负;
当所述前神经元或所述后神经元是隐层神经元时,则根据所述隐层神经元的激活状态将所述标记信号确定为正或零;
当所述后神经元是输出神经元时,则根据所述输出神经元获取的监督信号将所述标记信号确定为正或零。
上述实施例所述的权值原位更新方法,所述根据输入至所述输入神经元的数据样本将所述标记信号确定为正或负,包括:
上述实施例所述的权值原位更新方法,所述根据所述隐层神经元的激活状态将所述标记信号确定为正或零,包括:
根据同一层中各个隐层神经元的输入电流计算平均输入电流;
将所述平均输入电流注入到所述各个隐层神经元;
所述隐层神经元在对应的输入电流大于所述平均输入电流时被激活,则对应的所述标记信号确定为正;
所述隐层神经元在对应的输入电流小于等于所述平均输入电流时未被激活,则对应的所述标记信号确定为零。
上述实施例所述的权值原位更新方法,所述根据所述前神经元的输出端确定的标记信号确定所述突触前端的前驱动脉冲,包括:
当所述前神经元是输入神经元时,若所述输入神经元的输出端确定的标记信号为正,则所述前驱动脉冲与所述初始驱动脉冲相同且延迟为零;若所述输入神经元的输出端确定的标记信号为负,则所述前驱动脉冲与所述初始驱动脉冲相同且延迟两个脉冲宽度;
当所述前神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,则所述前驱动脉冲与所述初始驱动脉冲相反且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,则无所述前驱动脉冲。
上述实施例所述的权值原位更新方法,所述根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定所述突触后端的后驱动脉冲,包括:
当所述后神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,所述后驱动脉冲与所述初始驱动脉冲相同且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,无所述后驱动脉冲;
当所述后神经元是输出神经元时,若所述输出神经元获取的监督信号为正,所述后驱动脉冲与所述初始驱动脉冲相反且延迟为零;若所述输出神经元获取的监督信号为零,所述后驱动脉冲与所述初始驱动脉冲相反且延迟两个脉冲宽度。
本发明的另一个实施例提出一种权值原位更新装置,应用于忆阻器脉冲神经网络,所述忆阻器脉冲神经网络中每一突触仅包含一个忆阻器,突触训练过程包括信号处理时期和权值更新时期,该装置包括:
标记信号获取模块,用于在所述信号处理时期,获取所述突触的前神经元的输出端和后神经元的输出端确定的标记信号;
前驱动脉冲确定模块,用于在所述权值更新时期,根据所述前神经元的输出端确定的标记信号确定所述突触前端的前驱动脉冲;
后驱动脉冲确定模块,用于根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定所述突触后端的后驱动脉冲;
突触权值更新模块,用于当所述前驱动脉冲与所述后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值。
上述实施例涉及一种终端设备,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述终端设备执行上述的权值原位更新方法。
上述实施例涉及一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行上述的权值原位更新方法。
本发明提供的权值原位更新方法是一种在线训练的权值原位更新方法,本发明中的突触权值无负权值,w∈(0,1),即每一个突触只含有一个忆阻器,突触训练过程包括信号处理时期和权值更新时期。在信号处理时期,网络中前向传播的信号为远低于忆阻器的阈值电压的标记信号;且这种标记信号仅在每层网络的神经元的输出端产生,遵循忆阻器交叉阵列的读操作偏置方案。在权值更新时期,根据信号处理时期的标记信号,各神经元产生相应的正负电压驱动脉冲,根据前后神经元的重叠区域的电势差更新权值。本发明所公开的权值原位更新方法实现权值原位在线训练,利用神经元和少量外围电路,直接在忆阻器阵列上进行权值训练,并基于突触的前神经元输出端的标记信号和后神经元输出端的标记信号实时调整权值,突触权值更新更为简单。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
图1示出了本发明实施例提供的一种权值原位更新方法的流程示意图;
图2示出了本发明实施例提供的一种权值原位更新过程的示意图;
图3示出了本发明实施例提供的另一种权值原位更新装置的结构示意图。
主要元件符号说明:
1-权值原位更新装置;100-标记信号获取模块;200-前驱动脉冲确定模块;300-后驱动脉冲确定模块;400-突触权值更新模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
首先,需要明确一点,其他研究中考虑到第一层神经元的输出向量中的元素按照非均匀分布为正负1(由输入样本决定),第二层神经元输入的电流极性的不确定,且在较大范围内变化,使得神经元膜电位阈值很难确定,因此,其他研究中采用两个忆阻器作为突触来实现正负权值。本发明提供的权值原位更新方法是一种在线训练的权值原位更新方法,本发明中第二层神经元输入的电流极性正或零,权值无负权值,w∈(0,1),即每一个突触只含有一个忆阻器,突触训练过程包括信号处理时期和权值更新时期。在信号处理时期,网络中前向传播的信号为远远低于忆阻器的阈值电压的标记信号,仅仅是用于获取到标记信号的正负极性或者判断标记信号是否为零;且这种标记信号仅在每层网络的神经元的输出端产生,遵循忆阻器交叉阵列的读操作偏置方案。在权值更新时期,根据信号处理时期的标记信号,各神经元产生相应的正负电压驱动脉冲,参照STDP规则根据前后神经元的重叠区域的电势差更新权值。
实施例1
本实施例,参见图1,示出了一种权值原位更新方法,该方法包括以下步骤:
步骤S100:在所述信号处理时期,获取所述突触的前神经元的输出端和后神经元的输出端确定的标记信号。
遵循忆阻器交叉阵列的读操作偏置方案,在信号处理时期,网络中前向传播的信号为远低于忆阻器的阈值电压的标记信号;且这种标记信号仅在每层网络的神经元的输出端产生。
进一步的,突触的前神经元和后神经元可以通过以下方式确定标记信号:
对于脉冲神经网络中的第一层,即当所述前神经元是所述输入神经元时,则根据输入至所述输入神经元的数据样本将所述标记信号确定为正或负。
示范性的,当输入的数据样本是图片数据时,可以根据对应像素点的灰度值产生不同极性的脉冲。例如,BMP灰度图像作为Windows环境下主要的图像格式之一,以其格式简单,适应性强而倍受欢迎。BMP灰度图像的每一个像素用8bit表示,显示出来的图像是黑白效果,最黑的像素的灰度(也叫作亮度)值为0,最白的像素的灰度值为255,整个图像各个像素的灰度值随机的分布在0到255的区间中。
相应的,预设的参考阈值λ可以取值127,当输入的BMP灰度图像时,所述数据样本特征值xn可以是一个像素点的灰度,当一个像素点的灰度大于127时,输入神经元的输出端产生的标记信号为当一个像素点的灰度小于等于127时,输入神经元的输出端产生的标记信号为/>
对于脉冲神经网络中的第二层,当所述前神经元或所述后神经元是隐层神经元时,则根据所述隐层神经元的激活状态将所述标记信号确定为正或零。
进一步的,根据同一层中各个隐层神经元的输入电流计算平均输入电流;将所述平均输入电流注入到所述各个隐层神经元;当所述隐层神经元在对应的输入电流大于所述平均输入电流时,所述隐层神经元被激活,则对应的标记信号为正;当所述隐层神经元在对应的输入电流小于等于所述平均输入电流时,所述隐层神经元未被激活,则对应的标记信号为零。
当所述后神经元是输出神经元时,则根据所述输出神经元获取的监督信号将所述标记信号确定为正或零。
示范性的,所述监督信号根据输出神经元的输出结果是否正确而确定,如果所述输出神经元的序号等于标签号,即输出结果正确,则监督信号为正值,对应的标记信号为正;如果所述输出神经元的序号不等于标签号,即输出结果错误,则监督信号为零,对应的标记信号为零。
应当理解,对于脉冲神经网络识别手写体数字0-9的图片,对应的输出神经元有10个,输出神经元的序号对应手写体的标签号,例如,如果第0号输出神经元对应手写体数字0的图片,则输出结果正确。
步骤S200:在所述权值更新时期,根据所述前神经元的输出端确定的标记信号确定所述突触前端的前驱动脉冲。
示范性的,对于脉冲神经网络中的第一层,即当所述前神经元是输入神经元时,若所述输入神经元的输出端确定的标记信号为正,则第一层中突触的前端的前驱动脉冲与输入神经元的初始驱动脉冲相同且延迟为零;若输入神经元的输出端确定的标记信号为负,则第一层中突出的前端的前驱动脉冲与输入神经元的初始驱动脉冲相同且延迟两个脉冲宽度。
示范性的,对于脉冲神经网络中的第二层,即当所述前神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,则第二层中突触的前端的前驱动脉冲与输入神经元的初始驱动脉冲相反且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,则第二层中突触的前端无前驱动脉冲。
步骤S300:根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定所述突触后端的后驱动脉冲。
示范性的,对于脉冲神经网络中的第一层,即当所述后神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,则第一层中突触的后端的后驱动脉冲与输入神经元的初始驱动脉冲相同且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,则第一层中突触的后端无所述后驱动脉冲。
示范性的,对于脉冲神经网络中的第二层,即当所述后神经元是输出神经元时,若所述输出神经元获取的监督信号为正,则第二层中突触的后端的后驱动脉冲与输入神经元的初始驱动脉冲相反且延迟为零;若所述输出神经元获取的监督信号为零,则第二层中突触的后端的后驱动脉冲与输入神经元的初始驱动脉冲相反且延迟两个脉冲宽度。
步骤S400:当所述前驱动脉冲与所述后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值。
优选的,输入神经元的初始驱动脉冲由脉冲宽度相同的负脉冲和正脉冲组成,当所述忆阻器的阈值电压是z时,初始驱动脉冲的电压幅值大于等于且小于z。例如,若忆阻器的阈值电压为1v,那么输入神经元的初始驱动脉冲电压幅值可以设为0.5v或0.6v或0.99v,即若忆阻器的阈值电压为1v,则初始驱动脉冲电压幅值的取值范围为0.5v~1v,包含端值0.5v,不包含端值1v,以确保某一层中的突触前端的前驱动脉冲和突触后端的后脉冲存在交叠时才能对权值进行更新。
某一层中的突触前端的前驱动脉冲和突触后端的后脉冲存在交叠时电势差的幅值超过其阈值电压,从而触发电导改变。
优选的,突触权值将按照突触可塑性(Spike-timing-dependent plasticity,STDP)特性准则进行更新。STDP:根据突触前、后神经元的脉冲产生时间先后关系调整突触的权值,即前神经元的产生时间早于后神经元则表明有因果关系、应增强,若晚于后神经元则表明没有因果关系、应减弱。
进一步的,本实施例突触权值的增强或减弱还是保持则取决于在信号处理时期,突触前神经元的输出端和后神经元的输出端确定的标记信号。
本实施例中突触权值无负权值,即每一个突触只含有一个忆阻器,突触训练过程包括信号处理时期和权值更新时期。在信号处理时期,网络中前向传播的信号为远低于忆阻器的阈值电压的标记信号;且这种标记信号仅在每层网络的神经元的输出端产生,遵循忆阻器交叉阵列的读操作偏置方案。在权值更新时期,根据信号处理时期的标记信号,各神经元产生相应的正负电压驱动脉冲,根据前后神经元的重叠区域的电势差更新权值。本实施例所公开的权值原位更新方法实现权值原位在线训练,利用神经元和少量外围电路,直接在忆阻器阵列上进行权值训练,并基于突触的前神经元输出端的标记信号和后神经元输出端的标记信号实时调整权值,突触权值更新更为简单。
实施例2
本实施例,参见图2,示出了一种权值原位更新过程示意图。图2中从左到右的神经元分别表示对应的输入层的输入神经元、隐层的隐层神经元和输出层的输出神经元。对于每个神经元输出端产生的前向传播的标记信号是权值调整的标志。每一层的突触的前端和后端产生的驱动信号是由正、负脉冲构成的脉冲序列,且若忆阻器电压阈值为z,则脉冲序列的脉冲幅值大于等于0.5z并且小于z。网络训练阶段分为信号处理时期和权值更新时期,在图2中用虚线隔开。
如图2所示,从左向右看,第一个忆阻器,即第一个突触的权值更新过程如下:
第一个突触的前神经元是输入神经元,后神经元是隐层神经元。
输入神经元根据输入的数据样本确定其输出端在信号处理时期产生的标记信号yn,1。如果标记信号yn,1是正值(图2中标记信号yn,1对应信号处理时期的实线部分),则输入神经元在权值更新时期,在第一个突触前端产生的前驱动脉冲如图2中标记信号yn,1对应权值更新时期的实线部分;如果标记信号yn,1是负值(图2中标记信号yn,1对应信号处理时期的虚线部分),则输入神经元在权值更新时期,在第一个突触前端产生的前驱动脉冲如图2中标记信号yn,1对应权值更新时期的虚线部分。
隐层神经元根据同一层中各个隐层神经元的输入电流计算平均输入电流,将所述平均输入电流注入到所述各个隐层神经元,当输入电流大于所述平均输入电流时,所述隐层神经元被激活,则对应的隐层神经元的输出端在信号处理时期产生的标记信号yn,2为正(图2中标记信号yn,2对应信号处理时期的实线部分);当输入电流小于等于所述平均输入电流时,隐层神经元未被激活,则对应的隐层神经元的输出端在信号处理时期产生的标记信号yn,2为零(图2中标记信号yn,2对应信号处理时期的虚线部分)。
当第一个突触的前端的前驱动脉冲如图2中标记信号yn,1对应权值更新时期的实线部分所示时,若隐层神经元的输出端在信号处理时期产生的标记信号yn,2为正(图2中标记信号yn,2对应信号处理时期的实线部分),则在权值更新时期,在第一个突触后端产生的后驱动脉冲如图2中隐层神经元的输入端的标记信号xn,2对应权值更新时期的实线部分,即与输入神经元的初始驱动脉冲相同且延迟一个脉冲宽度;若隐层神经元的输出端在信号处理时期产生的标记信号yn,2为零(图2中标记信号yn,2对应信号处理时期的虚线部分),则在权值更新时期,在第一个突触后端产生的后驱动脉冲如图2中隐层神经元的输入端的标记信号xn,2对应权值更新时期的虚线部分,表示第一个突触后端无后驱动脉冲。
计算第一个突触的前驱动脉冲与后驱动脉冲之间的电势差,应当理解,若忆阻器的电压阈值为z,则脉冲序列的脉冲幅值大于等于0.5z并且小于z,当前驱动脉冲减去后驱动脉冲时,如果电势差的幅值超过或等于忆阻器的电压阈值,则第一个突触的权值将更新。
进一步的,如图2所示,从左向右看,第二个忆阻器,即第二个突触的权值更新过程如下:
第二个突触的前神经元是隐层神经元,后神经元是输出神经元。
第二个突触的前神经元是隐层神经元时,隐层神经元根据同一层中各个隐层神经元的输入电流计算平均输入电流,将所述平均输入电流注入到所述各个隐层神经元,当输入电流大于所述平均输入电流时,所述隐层神经元被激活,则对应的隐层神经元的输出端在信号处理时期产生的标记信号yn,2为正(图2中标记信号yn,2对应信号处理时期的实线部分);当输入电流小于等于所述平均输入电流时,隐层神经元未被激活,则对应的隐层神经元的输出端在信号处理时期产生的标记信号yn,2为零(图2中标记信号yn,2对应信号处理时期的虚线部分)。
当输入神经元的初始驱动脉冲如图2中标记信号yn,1对应权值更新时期的实线部分时,若隐层神经元的输出端在信号处理时期产生的标记信号yn,2为正(图2中标记信号yn,2对应信号处理时期的实线部分),则在权值更新时期,在第二个突触前端产生的前驱动脉冲如图2中隐层神经元的输出端的标记信号yn,2对应权值更新时期的实线部分,即与输入神经元的初始驱动脉冲相反且延迟一个脉冲宽度;若隐层神经元的输出端在信号处理时期产生的标记信号yn,2为零(图2中标记信号yn,2对应信号处理时期的虚线部分),则在权值更新时期,在第二个突触前端产生的前驱动脉冲如图2中隐层神经元的输出端的标记信号yn,2对应权值更新时期的虚线部分,表示第二个突触前端无前驱动脉冲。
输出神经元根据获取的监督信号确定标记信号,所述监督信号根据输出神经元的输出结果是否正确而确定,如果所述输出神经元的序号等于标签号,即输出结果正确,则监督信号为正值,对应的标记信号sn,3为正;如果所述输出神经元的序号不等于标签号,即输出结果错误,则监督信号为零,对应的标记信号sn,3为零。
当第一个突触的前端的前驱动脉冲如图2中标记信号yn,1对应权值更新时期的实线部分所示时,若输出神经元根据监督信号确定的标记信号sn,3为正(图2中标记信号sn,3对应信号处理时期的实线部分),则在权值更新时期,在第二个突触后端产生的后驱动脉冲如图2中输出神经元的输入端的标记信号xn,3对应权值更新时期的实线部分,即与输入神经元的初始驱动脉冲相反且延迟为零;若输出神经元根据监督信号确定的标记信号sn,3为零(图2中标记信号sn,3对应信号处理时期的虚线部分),则在权值更新时期,在第二个突触后端产生的后驱动脉冲如图2中输出神经元根据监督信号确定的标记信号sn,3对应权值更新时期的虚线部分,即与输入神经元的初始驱动脉冲相反且延迟两个脉冲宽度。
计算第二个突触的前驱动脉冲与后驱动脉冲之间的电势差,应当理解,若忆阻器的电压阈值为z,则脉冲序列的脉冲幅值大于等于0.5z并且小于z,当前驱动脉冲减去后驱动脉冲时,如果电势差的幅值超过或等于忆阻器的电压阈值,则第二个突触的权值将更新。
进一步的,突触权值的更新可以根据突触前端的前神经元输出的标记信号和后端的后神经元输出的标记信号确定更新过程。具体更新规则如下表1所示:
表1突触权值更新的方向
进一步的,从表1中可知,如果与突触连接的隐层神经元没有激活,相应的突触权值都将不会更新。
实施例3
本实施例,参见图3,示出了一种权值原位更新装置1,该装置包括标记信号获取模块100、前驱动脉冲确定模块200、后驱动脉冲确定模块300和突触权值更新模块400。
标记信号获取模块100,用于在所述信号处理时期,获取所述突触的前神经元的输出端和后神经元的输出端确定的标记信号;前驱动脉冲确定模块200,用于在所述权值更新时期,根据所述前神经元的输出端确定的标记信号确定所述突触前端的前驱动脉冲;后驱动脉冲确定模块300,用于根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定所述突触后端的后驱动脉冲;
突触权值更新模块400,用于当所述前驱动脉冲与所述后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值。
本实施例提供的权值原位更新装置1通过标记信号获取模块100、前驱动脉冲确定模块200、后驱动脉冲确定模块300和突触权值更新模块400的配合使用,用于执行上述实施例所述的权值原位更新方法,上述实施例所涉及的实施方案以及有益效果在本实施例中同样适用,在此不再赘述。
应当理解,上述实施例涉及一种终端设备,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述终端设备执行上述实施例所述的权值原位更新方法。
应当理解,上述实施例涉及一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行上述实施例所述的权值原位更新方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种权值原位更新方法,其特征在于,应用于忆阻器脉冲神经网络,所述忆阻器脉冲神经网络中每一突触仅包含一个忆阻器,突触训练过程包括信号处理时期和权值更新时期,该方法包括:
在所述信号处理时期,获取所述突触的前神经元的输出端和后神经元的输出端确定的标记信号;
在所述权值更新时期,根据所述前神经元的输出端确定的标记信号确定突触前端的前驱动脉冲;
根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定突触后端的后驱动脉冲;
当所述前驱动脉冲与所述后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值;
所述突触的前神经元输出端和后神经元输出端确定标记信号,包括:
当所述前神经元是所述输入神经元时,则根据输入至所述输入神经元的数据样本将所述标记信号确定为正或负;
当所述前神经元或所述后神经元是隐层神经元时,则根据所述隐层神经元的激活状态将所述标记信号确定为正或零;
当所述后神经元是输出神经元时,则根据所述输出神经元获取的监督信号将所述标记信号确定为正或零;
所述根据所述前神经元的输出端确定的标记信号确定所述突触前端的前驱动脉冲,包括:
当所述前神经元是输入神经元时,若所述输入神经元的输出端确定的标记信号为正,则所述前驱动脉冲与所述初始驱动脉冲相同且延迟为零;若所述输入神经元的输出端确定的标记信号为负,则所述前驱动脉冲与所述初始驱动脉冲相同且延迟两个脉冲宽度;
当所述前神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,则所述前驱动脉冲与所述初始驱动脉冲相反且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,则无所述前驱动脉冲;
所述根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定所述突触后端的后驱动脉冲,包括:
当所述后神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,所述后驱动脉冲与所述初始驱动脉冲相同且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,无所述后驱动脉冲;
当所述后神经元是输出神经元时,若所述输出神经元获取的监督信号为正,所述后驱动脉冲与所述初始驱动脉冲相反且延迟为零;若所述输出神经元获取的监督信号为零,所述后驱动脉冲与所述初始驱动脉冲相反且延迟两个脉冲宽度。
3.根据权利要求1所述的权值原位更新方法,其特征在于,所述根据所述隐层神经元的激活状态将所述标记信号确定为正或零,包括:
根据同一层中各个隐层神经元的输入电流计算平均输入电流;
将所述平均输入电流注入到所述各个隐层神经元;
所述隐层神经元在对应的输入电流大于所述平均输入电流时被激活,则对应的所述标记信号确定为正;
所述隐层神经元在对应的输入电流小于等于所述平均输入电流时未被激活,则对应的所述标记信号确定为零。
5.一种权值原位更新装置,其特征在于,应用于忆阻器脉冲神经网络,所述忆阻器脉冲神经网络中每一突触仅包含一个忆阻器,突触训练过程包括信号处理时期和权值更新时期,该装置包括:
标记信号获取模块,用于在所述信号处理时期,获取所述突触的前神经元的输出端和后神经元的输出端确定的标记信号;
还用于当所述前神经元是输入神经元时,则根据输入至所述输入神经元的数据样本将所述标记信号确定为正或负;
当所述前神经元或所述后神经元是隐层神经元时,则根据所述隐层神经元的激活状态将所述标记信号确定为正或零;
当所述后神经元是输出神经元时,则根据所述输出神经元获取的监督信号将所述标记信号确定为正或零;
前驱动脉冲确定模块,用于在所述权值更新时期,根据所述前神经元的输出端确定的标记信号确定突触前端的前驱动脉冲;
还用于当所述前神经元是输入神经元时,若所述输入神经元的输出端确定的标记信号为正,则所述前驱动脉冲与初始驱动脉冲相同且延迟为零;若所述输入神经元的输出端确定的标记信号为负,则所述前驱动脉冲与所述初始驱动脉冲相同且延迟两个脉冲宽度;
当所述前神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,则所述前驱动脉冲与所述初始驱动脉冲相反且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,则无所述前驱动脉冲;
后驱动脉冲确定模块,用于根据输入神经元产生的初始驱动脉冲和所述后神经元的输出端确定的标记信号确定突触后端的后驱动脉冲;
还用于当所述后神经元是隐层神经元时,若所述隐层神经元的输出端确定的标记信号为正,所述后驱动脉冲与所述初始驱动脉冲相同且延迟一个脉冲宽度;若所述隐层神经元的输出端确定的标记信号为零,无所述后驱动脉冲;
当所述后神经元是输出神经元时,若所述输出神经元获取的监督信号为正,所述后驱动脉冲与所述初始驱动脉冲相反且延迟为零;若所述输出神经元获取的监督信号为零,所述后驱动脉冲与所述初始驱动脉冲相反且延迟两个脉冲宽度;
突触权值更新模块,用于当所述前驱动脉冲与所述后驱动脉冲的电势差幅值大于等于所述忆阻器的阈值电压时,更新突触权值。
6.一种终端设备,其特征在于,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述终端设备执行权利要求1至4任一项所述的权值原位更新方法。
7.一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上运行时执行权利要求1至4任一项所述的权值原位更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010438308.XA CN111582462B (zh) | 2020-05-21 | 2020-05-21 | 权值原位更新方法、装置、终端设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010438308.XA CN111582462B (zh) | 2020-05-21 | 2020-05-21 | 权值原位更新方法、装置、终端设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111582462A CN111582462A (zh) | 2020-08-25 |
CN111582462B true CN111582462B (zh) | 2023-06-27 |
Family
ID=72113820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010438308.XA Active CN111582462B (zh) | 2020-05-21 | 2020-05-21 | 权值原位更新方法、装置、终端设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111582462B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117648960B (zh) * | 2024-01-30 | 2024-04-19 | 中国人民解放军国防科技大学 | 基于忆阻器的脉冲神经网络在线训练电路及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107798384A (zh) * | 2017-10-31 | 2018-03-13 | 泰山医学院 | 可进化脉冲神经网络构建方法和装置 |
WO2018081560A1 (en) * | 2016-10-27 | 2018-05-03 | University Of Florida Research Foundation | Memristive learning for neuromorphic circuits |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102230784B1 (ko) * | 2013-05-30 | 2021-03-23 | 삼성전자주식회사 | Stdp 동작을 위한 시냅스 회로 및 시냅스 회로를 포함하는 뉴로모픽 시스템 |
CN109460817B (zh) * | 2018-09-11 | 2021-08-03 | 华中科技大学 | 一种基于非易失存储器的卷积神经网络片上学习系统 |
CN208922326U (zh) * | 2018-10-29 | 2019-05-31 | 南京邮电大学 | 一种基于忆阻器阵列的神经网络突触觉结构 |
CN110163365A (zh) * | 2019-05-29 | 2019-08-23 | 北京科易达知识产权服务有限公司 | 一种应用于忆阻器突触阵列的脉冲神经元电路 |
-
2020
- 2020-05-21 CN CN202010438308.XA patent/CN111582462B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018081560A1 (en) * | 2016-10-27 | 2018-05-03 | University Of Florida Research Foundation | Memristive learning for neuromorphic circuits |
CN107798384A (zh) * | 2017-10-31 | 2018-03-13 | 泰山医学院 | 可进化脉冲神经网络构建方法和装置 |
Non-Patent Citations (1)
Title |
---|
基于忆阻器的脉冲神经网络研究综述;徐桂芝;姚林静;李子康;;生物医学工程学杂志(03);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111582462A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110210563B (zh) | 基于Spike cube SNN的图像脉冲数据时空信息学习及识别方法 | |
CN110555523B (zh) | 一种基于脉冲神经网络的短程跟踪方法及系统 | |
US7904398B1 (en) | Artificial synapse component using multiple distinct learning means with distinct predetermined learning acquisition times | |
Salaj et al. | Spike frequency adaptation supports network computations on temporally dispersed information | |
CN110826602B (zh) | 基于膜电位调控脉冲神经网络的图像分类方法、系统 | |
JP6724870B2 (ja) | 人工ニューラルネットワーク回路の訓練方法、訓練プログラム、及び訓練装置 | |
WO2022253229A1 (zh) | 突触权重训练方法、目标识别方法及电子设备、介质 | |
KR20160125967A (ko) | 일반적인 뉴런 모델들의 효율적인 구현을 위한 방법 및 장치 | |
CN111582462B (zh) | 权值原位更新方法、装置、终端设备和可读存储介质 | |
CN110674928B (zh) | 一种融合人工神经网络和神经形态计算的在线学习方法 | |
US9460384B2 (en) | Effecting modulation by global scalar values in a spiking neural network | |
CN113269264B (zh) | 目标识别方法、电子设备和计算机可读介质 | |
CN113269113B (zh) | 人体行为识别方法、电子设备和计算机可读介质 | |
CN117372843A (zh) | 基于首脉冲编码的图片分类模型训练方法、图片分类方法 | |
CN111582461B (zh) | 神经网络训练方法、装置、终端设备和可读存储介质 | |
JP6881693B2 (ja) | ニューロモーフィック回路、ニューロモーフィックアレイの学習方法およびプログラム | |
CN114222142B (zh) | 基于脉冲神经网络的图像编码方法及装置 | |
CN113191984B (zh) | 基于深度学习的运动模糊图像联合复原与分类方法和系统 | |
EP2715620B1 (en) | Method and apparatus for unsupervised training of input synapses of primary visual cortex simple cells and other neural circuits | |
US11526735B2 (en) | Neuromorphic neuron apparatus for artificial neural networks | |
CN114092763A (zh) | 一种脉冲神经网络模型构建方法 | |
CN114186667A (zh) | 一种循环神经网络权重矩阵向忆阻阵列的映射方法 | |
CN113269313A (zh) | 突触权重训练方法、电子设备和计算机可读介质 | |
CN111582484B (zh) | 学习速率自调节方法、装置、终端设备和可读存储介质 | |
Kursun et al. | Single-frame super-resolution by a cortex based mechanism using high level visual features in natural images |
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 |