首页> 中国专利> 一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路

一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路

摘要

本发明公开了一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路;包括突触电路、神经元电路和突触权值控制电路;突触电路包括n个输入端、n个输出端和(2x+1)个控制端,n个输入端分别接收n个输入电压;神经元电路包括n个输入端和一个输出端,n个输入端分别与突触电路的n个输出端一一对应连接,一个输出端输出激活电压Vout;突触权值控制电路包括n个输入端、一个反馈端和2x+1个输出控制端,n个输入端分别与突触电路的n个输入端一一对应连接,反馈端连接至神经元电路的输出端,2x+1个输出端分别与突触电路的2x+1个控制端一一对应连接,突触权值控制电路用于根据输入的状态和反馈的状态来输出相应的控制信号进而调整忆阻器阻值。

著录项

  • 公开/公告号CN106779059A

    专利类型发明专利

  • 公开/公告日2017-05-31

    原文格式PDF

  • 申请/专利权人 华中科技大学;

    申请/专利号CN201611256568.5

  • 发明设计人 刘晓阳;曾志刚;

    申请日2016-12-30

  • 分类号G06N3/063(20060101);

  • 代理机构42201 华中科技大学专利中心;

  • 代理人廖盈春

  • 地址 430074 湖北省武汉市洪山区珞喻路1037号

  • 入库时间 2023-06-19 02:19:08

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-05

    授权

    授权

  • 2017-06-23

    实质审查的生效 IPC(主分类):G06N3/063 申请日:20161230

    实质审查的生效

  • 2017-05-31

    公开

    公开

说明书

技术领域

本发明属于模数电路领域,更具体地,涉及一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路。

背景技术

1971年,美国加利福尼亚大学大学伯克利分校蔡少棠教授从对称性角度预言提出了,除电阻、电容、电感以外电子电路还应存在第四种基本元件—忆阻(Memristor)。蔡少棠指出,电压v、电流i、电荷q和磁通量这四个基本电路变量之间应该存在六种数学关系:电流定义为电荷关于时间的变化率i=dq/dt;电压定义为磁通量关于时间的变化率电阻定义为电压随着电流的变化率R=dv/di;电容定义为电荷随着电压的变化率C=dq/dv;电感定义为磁通量随着电流的变化率缺少了一种能够将电荷q与磁通量关联起来的电路元件,而这种元件即由电荷q与磁通量之间的关系来定义:M即是忆阻。

美国惠普实验室的Strukov和其同事在进行极小型电路实验时制造出忆阻的实物,其成果发表在2008年5月的《自然》杂志上,忆阻的发现足以媲美100年前发明的三极管,其任何一项产业化应用都可能带来新一轮的产业革命。忆阻最突出的特点是其天然的非易失性记忆功能和良好的开关特性,在非易失性存储器技术、可重构信号处理电路、人工神经网络保密通信、模拟电路、人工智能计算机、生物行为模拟等领域具有巨大的应用潜力。

人工神经网络自1943年由心理学家McCulloch和数理逻辑学家Pitts提出,国内外学者对人工神经网络展开了广泛的研究。到目前为止,人工神经网络的实现有四种方式:软件实现、虚拟实现、硬件实现以及光器件实现。其中晶体管是一种实现人工神经网络的电子器件,Williams和他的同事已经证明了忆阻能比晶体管占用更小的区域,但是它的存储容量更大并且速度更快。标准的人工神经网络通过乘法器实现神经网络的权值,但是乘法器不但体积大,而且当修改神经网络时就需要更换乘法器;新型忆阻人工神经网络使用忆阻作为突触权因子以实现神经网络的权值,当需要修改神经网络时,只需使用外加电压源改变忆阻的阻值即可。由于忆阻是一种具有差分电阻特性的元件,将其融入到人工神经网络电路中,就不再需要引入反馈机制,可以大大简化电路结构。

联想记忆是人工神经网络中模仿生物学习的一个方面,是在两个刺激或行为和刺激之间建立联系的学习过程。最经典的是巴普洛夫狗的实验:给狗喂食物的时候狗会分泌唾液,而只打铃不给食物狗不会分泌唾液;在给食物的同时打铃,过一段时间之后只打铃狗也会分泌唾液。对于狗来说,铃声和食物之间或者说铃声和分泌唾液之间建立了联系,这是通过学习来实现的。学习的话就要改变突触的权值,目前主要的突触学习规则有Hebb、SRDP、STDP等。

联想记忆很早之前就有研究,但是由于设计电子突触的复杂性,电路实现相当困难。忆阻的出现为这一研究指明了新的方向。研究者们对于类似巴普洛夫实验的联想记忆做了大量研究。Y.V.Pershin等首次用微控制器的电学模型实现联想记忆。K.D.Cantley等和Y.D.Zhang等分别实现了联想学习。M.Ziegler等证明了用单个的Pt/Ge0.3Se0.7/SiO2/Cu忆阻设备实现联想学习的可行性。Y.H.Wang等提出了一个简单的CMOS-Memristor混合电路来建模动态条件行为。O.Bichler等用有机忆阻设备当做突出提出了一个带有联想学习的神经网络。L.Chen等提出了包含多层阈值神经元的忆阻神经网络和最大输入反馈学习(max-input-feedback learning)法则来实现联想学习。S.G.Hu等设计了一个可重构的忆阻Hopfield神经网络,L.Wang等提出了基于平均输入反馈的学习法则,分别来实现联想记忆。

但是现有的实现方法都有或多或少的不足。比较典型的是没有“遗忘”功能,或者只有一种遗忘功能,设计复杂,在未学习的情况下铃声自己错误学会刺激唾液分泌等,有的甚至会“遗忘”食物。而本发明则解决了这些缺点。

发明内容

针对现有技术的缺陷,本发明的目的在于提供一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路,旨在解决现有技术中没有遗忘功能的问题。

本发明提供了一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路,包括:突触电路、神经元电路和突触权值控制电路;突触电路包括n个输入端、n个输出端和(2x+1)个控制端,n个输入端分别接收n个输入电压,突触电路用于将输入电压乘以权值再输出;神经元电路包括n个输入端和一个输出端,n个输入端分别与所述突触电路的n个输出端一一对应连接,一个输出端输出激活电压Vout;所述突触权值控制电路包括n个输入端、一个反馈端和2x+1个输出控制端,n个输入端分别与所述突触电路的n个输入端一一对应连接,反馈端连接至所述神经元电路的输出端,2x+1个输出端分别与所述突触电路的2x+1个控制端一一对应连接,所述突触权值控制电路用于根据输入的状态和反馈的状态来输出相应的控制信号进而调整忆阻器阻值;其中,n为大于等于2的整数,x为需要学习更新权值即需要调整忆阻器阻值的突触的数量,且1≤x≤n-1。

更进一步地,所述突触电路包括n个突触单元,第一个突触单元包括:第一MOS管Ta1、第二MOS管Ta2、第一忆阻器Ma和第一二极管Da,所述第一MOS管Ta1的控制端作为所述第一个突触单元的输入端,所述第一MOS管Ta1的一端连接至电源V1,所述第一MOS管Ta1的另一端连接至所述第一忆阻器Ma的正极,所述第一忆阻器Ma的负极连接至所述第一二极管Da的阳极,所述第一二极管Da的阴极作为所述第一个突触单元的输出端,所述第二MOS管Ta2的一端连接至所述第一MOS管Ta1的另一端,所述第二MOS管Ta2的另一端接地,所述第二MOS管Ta2的控制端作为所述第一个突触单元的控制端;第二个突触单元,第三个突触单元……和第x+1个突触单元的结构相同,其余n-x-1个单元和第一个突触单元相同;所述第二个突触单元包括:第三MOS管Tb1、第四MOS管Tb2、第二忆阻器Mb和第二二极管Db,所述第三MOS管Tb1的控制端作为所述第二个突触单元的输入端,所述第三MOS管Tb1的一端连接至电源V2,所述第三MOS管Tb1的另一端连接至所述第二忆阻器Mb的正极,所述第二忆阻器Mb的负极连接至所述第二二极管Db的阳极,所述第二二极管Db的阴极作为所述第二个突触单元的输出端,所述第四MOS管Tb2的一端连接至所述第三MOS管Tb1的另一端,所述第四MOS管Tb2的另一端接地,所述第四MOS管Tb2的控制端作为所述第二个突触单元的控制端。

更进一步地,神经元电路包括:电阻R、电容C、二极管Do1、PMOS管To1和比较器P;所述PMOS管To1的一端作为所述神经元电路的输入端,所述PMOS管To1的另一端连接至所述二极管Do1的阳极,所述二极管的阴极连接至所述比较器P的同相输入端,所述PMOS管To1的控制端连接至所述比较器P的输出端;所述比较器P的反相输入端用于连接参考电压Vmem,所述比较器P的输出端作为所述神经元电路的输出端;所述电阻R和所述电容C依次串联连接在地与所述比较器P的输出端之间,且所述电阻R和所述电容C的串联连接端连接至所述比较器P的同相输入端。

更进一步地,当n为2时,所述突触权值控制电路包括:NMOS管T1、NMOS管T2、NMOS管T3、NMOS管T5、NMOS管T7、PMOS管T4和PMOS管T6;NMOS管T1的控制端作为所述突触权值控制电路的第一输入端,所述NMOS管T1的一端作为所述突触权值控制电路的第一输出控制端a,所述NMOS管T2的控制端作为所述突触权值控制电路的第二输入端,所述NMOS管T2的一端连接至所述NMOS管T1的另一端,所述NMOS管T3的一端连接至所述NMOS管T2的另一端,所述NMOS管T3的另一端接地,所述PMOS管T4的控制端连接至所述NMOS管T1的控制端,所述PMOS管T6的控制端连接至所述NMOS管T2的控制端,所述PMOS管T4的一端与所述PMOS管T6的一端连接后再与所述NMOS管T1的一端连接,所述PMOS管T4的另一端与所述PMOS管T6的另一端连接后再与所述NMOS管T5的一端连接,所述NMOS管T5的另一端连接控制电源Vfg,所述NMOS管T5的控制端连接至所述NMOS管T3的控制端;所述NMOS管T7的一端作为所述突触权值控制电路的第一输出控制端b,所述NMOS管T7的另一端连接控制电源Vln,所述NMOS管T7的控制端与所述NMOS管T5的控制端连接并作为所述突触权值控制电路的第一输出控制端c和反馈端Vb

更进一步地,控制电源Vfg大于所述控制电源Vln

更进一步地,当同时输入Vina和Vinb时,Ta1和Tb1打开,Vout为零电平,PMOS管To1处于打开状态;V1和V2分别正向和反向流过忆阻器,忆阻器Ma阻值变小,忆阻器Mb的阻值变大且增大量为ΔR1;由于Ma阻值小于Rth,那么Vp大于参考电压Vmem,Vout便会输出高电平使得神经元被激活;同时Vp会升高并高于参考电压Vmem,Vout控制突触控制电路使c点电压为高进而关断Ta2、Tb2、To1;V1和V2不会作用于Vp,同时也使突触权值控制电路的控制输出也不会作用于Vp,电容C则通过R开始放电;Vp会在一定时间t内保持高于Vmem,则Vout会在时间t内保持高电平,即神经元会在时间t内保持激活状态;在时间t内,Vout会控制c点电压为高而打开Ta2和Tb2两个NMOS管,使V1和V2接地而不作用于Ma、Mb和神经元,与此同时,Vout的高电平和Vina、Vinb的高电平共同作用于突触控制电路,那么突触电路会发出控制信号使b点电压高于a点电压,从而减小忆阻器阻值,且此减小量ΔR2大于开始的增大量ΔR1,即ΔR2>ΔR1,结果是忆阻器阻值减小,突触权值增大;至此完成一次学习;当电容C放电使Vp低于Vmen后,Vout恢复低电平状态并使a、b点为高阻态且c点变为零电压,突触控制电路不再作用于Mb,Ta2、Tb2和To1打开,则又开始下一次学习过程。要使Vinb能激活Vout,需要多次学习,一直到Mb的阻值小于Rth,才算完成一个学习过程。

更进一步地,当仅输入Vina时,Vout变为高电平,在高电平Vina、Vout和低电平Vinb的作用下,突触权值控制电路发出控制信号使a点电压为高于b点电压,从而增大忆阻器阻值;一直重复这个过程,当阻值增大至大于Rth时,那么Vp<Vmem,Vinb不能再激活Vout;至此完成第一种遗忘过程;当仅输入Vinb时,Tb2打开,则由于电压V2的作用,忆阻器负端的电压高于正端的电压,那么忆阻器的阻值就会增大,突触权值就会减小,Vinb会逐渐失去激活Vout的能力;高电平的Vinb、Vout和低电平的Vina可以作用于突触取值控制电路,使得在Tb2导通使得V2不能作用于Mb的时间内,使a点电压高于b点电压,从而加快这第二种遗忘过程,当在Mb大于Rth即Vinb不能激活Vout后,这一加速遗忘过程也就不存在了。

更进一步地,当n为3时,所述突触权值控制电路包括:NMOS管T1、NMOS管T2、NMOS管T3、NMOS管T5、NMOS管T7、PMOS管T4、PMOS管T6,以及NMOS管T’1、NMOS管T’2、NMOS管T’3、NMOS管T’5、NMOS管T’7、NMOS管T8、PMOS管T’4、PMOS管T’6和PMOS管T9;所述NMOS管T1的控制端作为所述突触权值控制电路的第一输入端,所述NMOS管T1的一端作为所述突触权值控制电路的第一输出控制端a1,所述NMOS管T2的控制端作为所述突触权值控制电路的第二输入端,所述NMOS管T2的一端连接至所述NMOS管T1的另一端,所述NMOS管T3的一端连接至所述NMOS管T2的另一端,所述NMOS管T3的另一端接地,所述PMOS管T4的控制端连接至所述NMOS管T1的控制端,所述PMOS管T6的控制端连接至所述NMOS管T2的控制端,所述PMOS管T4的一端与所述PMOS管T6的一端连接后再与所述NMOS管T1的一端连接,所述PMOS管T4的另一端与所述PMOS管T6的另一端连接后再与所述NMOS管T5的一端连接,所述NMOS管T5的另一端连接控制电源Vfg,所述NMOS管T5的控制端连接至所述NMOS管T3的控制端;所述NMOS管T7的一端作为所述突触权值控制电路的第一输出控制端b1,所述NMOS管T7的另一端连接控制电源Vln,所述NMOS管T7的控制端与所述NMOS管T5的控制端连接并作为所述突触权值控制电路的第一输出控制端c和反馈端Vb;所述NMOS管T’1的控制端连接至所述NMOS管T1的控制端,所述NMOS管T’1的一端作为所述突触权值控制电路的第一输出控制端a2,所述NMOS管T’2的控制端连接至所述NMOS管T2的控制端,所述NMOS管T’2的一端连接至所述NMOS管T’1的另一端,所述NMOS管T8的控制端作为所述突触权值控制电路的第三输入端,所述NMOS管T8的一端连接至所述NMOS管T’2的另一端,所述NMOS管T8的另一端连接至所述NMOS管T’3的一端,所述NMOS管T’3的另一端接地,所述PMOS管T’4的控制端连接至所述NMOS管T’1的控制端,所述PMOS管T’6的控制端连接至所述NMOS管T’2的控制端,所述PMOS管T9的控制端连接至所述NMOS管T8的控制端,所述PMOS管T’4的一端与所述PMOS管T’6的一端以及PMOS管T9的一端连接后再与所述NMOS管T’1的一端连接,所述PMOS管T’4的另一端与所述PMOS管T’6的另一端以及T9的另一端连接后再与所述NMOS管T’5的一端连接,所述NMOS管T’5的另一端连接控制电源V’fg,所述NMOS管T’5的控制端连接至所述NMOS管T’3的控制端;所述NMOS管T’7的一端作为所述突触权值控制电路的第一输出控制端b2,所述NMOS管T’7的另一端连接控制电源V’ln,所述NMOS管T’7的控制端与所述NMOS管T’5的控制端以及所述NMOS管T7的控制端连接。

本发明包含以下优点:

(1)有两种遗忘功能。一种是通过忆阻器负端接输入,正端接输出,而使输入电流反向流经忆阻器实现的;另一种是通过突触权值控制电路对忆阻两端电压进行调控实现的。

(2)没有错误学习。错误学习是指在以往的设计中,只给一个输入也会产生学习行为,而正确的学习需要至少两个输入才能实现学习行为。本发明通过突触权值控制电路针对不同输入下对权值进行调控避免了这一错误。

(3)在线实时调节突触权值。输入和输出反通过控制突触权值控制电路实时调节突触权值;

(4)以相对简单的结构实现了较多功能。以往的设计要么功能少,要么结构复杂。本发明通过设计各个模块使整体结构清晰,以相对简单的电路实现了更多功能。

附图说明

图1是本发明所设计的一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路的整体框图;

图2是本发明所设计的神经网络中神经元电路的结构图;

图3是本发明所设计的神经网络中有两个输入两个突触且有一个突触的权值需要学习更新的突触电路的结构图;

图4是本发明的所设计的神经网络中有两个输入两个突触且有一个突触的权值需要学习更新的情况下的突触权值控制电路的一种实现方式;

图5是本发明所设计的神经网络中有两个输入两个突触且有一个突触的权值需要学习更新情况下的整体电路的结构图;

图6是本发明所设计的神经网络中有三个输入三个突触且有两个突触的权值需要学习更新情况下的整体电路的结构图;

图7是本发明所设计的神经网络中有三个输入三个突触并且有两个突触的权值需要学习更新的情况下的突触权值控制电路的一种实现方式。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明的目的是针对现有设计的不足,提供一种新型的基于忆阻的巴普洛夫联想记忆的人工神经网络电路实现。本发明除了有“学习”功能,还有两种“遗忘”功能,通过突触输入的状态以及神经元输出的状态实时调节突触权值,以实现学习和遗忘功能。并且本发明可以组建大型人工神经网络电路,具有良好的应用前景。

以上四个技术效果对基于忆阻的巴普洛夫联想记忆的人工神经网络有着很关键的作用,解决了传统巴普洛夫联想记忆的人工神经网络与现有基于忆阻的巴普洛夫联想记忆的人工神经网络的相关问题。

首先说明一下本发明实现的功能。在巴普洛夫实验中,给狗喂食物的时候狗会分泌唾液,这是生物本能,而只打铃不给食物狗不会分泌唾液;在给食物的同时打铃,过一段时间之后只打铃狗也会分泌唾液。铃声和食物之间或者说铃声和分泌唾液之间建立了联系,这是通过学习来实现的。如果在学习之后,只给食物的话,那么过一段时间之后,狗听到铃声不再分泌唾液,也就是遗忘了铃声与食物或唾液之间的关系。如果在学习之后,只打铃,狗开始会分泌唾液,但是当狗意识到这次打铃并没有给它食物之后,逐渐就不会分泌唾液,这也是一种遗忘。本发明就实现了这种学习和这两种遗忘功能。当然除了食物和铃声还可以学习其他相关联的东西,如看到香蕉和闻到香蕉味,那么可以把闻到香蕉味关联到会有香蕉上去。在本发明中,Vina和Vinb就相当于食物和铃声,Vout相当于唾液。这是只有两种联想输入的情况,本发明可以适用于多种联想输入的情况。在多种联想输入的情况下,突触分为不需要学习更新权值(如狗看到食物分泌唾液是生物本能,不需要学习)和需要学习更新权值(如狗学习到了铃声和食物相关因而打铃也会分泌唾液)两种情况,其中能学习更新权值的突触也会“遗忘”所更新的权值。要实现学习和遗忘功能,这两种突触至少各有一个,即至少有一个非条件反射和条件反射,学习和遗忘行为才能进行。可以看成权值固定的突触是学习和遗忘行为的教授者,权值会改变的突触是学习行为和遗忘的实施者。

图1示出了本发明提供的一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路的结构,具体包括:突触电路、神经元电路和突触权值控制电路;突触电路包括n个输入端、n个输出端和2x+1(x为需要学习更新权值即需要调整忆阻器阻值的突触的数量,与需要构建的网络结构有关,因为至少有一个权值固定的突触,所以1≤x≤n-1,至于为什么是2x+1将在图3部分介绍)个控制端,n个输入端分别接收n个输入电压,n为大于等于2的整数,突触电路用于将输入乘以权值再输出;神经元电路包括n个输入端和一个输出端,n个输入端分别与突触电路的n个输出端一一对应连接,一个输出端输出激活电压Vout;突触权值控制电路包括n个输入端、一个反馈端和2x+1个输出控制端,n个输入端分别接到突触电路的n个输入上,反馈端连接在神经元电路的输出端,2x+1个输出端分别连接至突触电路的2x+1个控制端,突触权值控制电路用于根据输入的状态和反馈的状态来输出相应的控制信号进而调整忆阻器阻值。

图2示出了本发明提供的神经元电路的结构,具体包括:n个输入端、一个电阻、一个电容、一个二极管、一个PMOS管,一个比较器P。n个输入端接PMOS管To1的一端,To1的另一端接二极管Do1的阳极,Do1的阴极接电阻R的一端、电容C的一端、比较器P的正输入端Vp,电阻R的另一端接地,电容C的另一端以及PMOS管的栅极接比较器P的输出Vout,P的负输入端接参考电压Vmem。比较器P的输出Vout即是神经元的输出。神经元未激活的时候PMOS管To1是导通状态,输入流经电阻R,会在比较器P的正输入端产生电压Vp,Vp≈Vin,如果Vp大于P负输入端的参考电压Vmem时,比较器输出Vout为高电平,否则输出零。电容C的作用是,在Vout变为高电平的时候,因为电容两端的电压不能突变,所以会带动Vp也升高,然后电容C通过电阻R开始放电,在Vp降至Vmen的时间内,Vout会一直保持高电平,即保持神经元的激活状态。神经元在激活状态下,To1会阻断输入,输入不对神经元起作用,这就是生物上的神经元“不应期”。二极管Do1的作用是防止To1反向导通。当神经元恢复静止状态时,Vout恢复低电平状态,Ta2、Tb2和To1打开,突触电路继续作用于神经元,Vout又会变为高电平,进行下一个过程。本神经元电路可以较好地模拟硬极限激活函数。

图3是本发明n=2时的突触电路结构图,以n=2为例进行说明如下:包括(a)和(b)两个不同的部分,其不同之处在于忆阻器的接入方向不同以及(b)部分的忆阻器阻值需要进行调整而(a)部分忆阻器阻值不需要调整或调整很小。该突触电路包括两个输入、两个忆阻器、两个NMOS管、两个PMOS管,两个二极管、两个输出。两个输入Vina和Vinb分别接NMOS管Ta1和Tb1的栅极。Ta1和Tb1的一端分别接电源V1和V2,另一端分别接Ta2和Tb2的一端。Ta2和Tb2的另一端分别接忆阻器Ma的正端和Mb的负端,Ma的负端和Mb的正端分别接二极管Da和Db的阳极,Da和Db的阴极分别是两个突触的输出Vo1和Vo2。同时两个输入Vina和Vinb,以及激活电压Vout接入突触控制电路,突触控制电路的三个输出分别接(b)部分的a点、b点、c点。Vina和Vinb分别通过控制Ta1和Tb1的通断来控制V1和V2是否作用于突触电路。V1和V2是负载电源,可以驱动突触电路使其产生有效输出,并可以调整忆阻器阻值。Ta2和Tb2通过控制端c来根据神经网络的状态来控制V1和V2是否继续作用于突触电路。忆阻器Ma和Mb是突触的模仿者,通过其阻值的变化来模仿权值的变化,当阻值增大时权值减小,阻值减小时权值增大。二极管Da和Db保证了突触只能单向输出。突触控制权值电路根据神经网络的状态在控制点a、b、c产生控制信号而调整忆阻器阻值。突触电路的工作流程如下:当有输入Vina和Vinb时,Ta1和Tb1导通。此时由于Vout没有输出,则突触权值控制电路控制c点输出零电压,Ta2和Tb2导通,V1和V2加在Ma和Mb上。因为Ma加的是正电压,所以Ma的阻值减小,稳定后保持在最低阻值的状态;Mb加的是负电压(V2加在其负端),所以其阻值增大。在激活神经元之后,突触权值控制电路会根据神经网络的状态控制Mb的阻值需要增大还是减小。如果需要增大,则a点电压高于b点电压,反之a点电压低于b点电压。如果突触电路包含n个突触,因为c点可以同时控制n个突触的与Ta2相同位置的NMOS管,而更忆阻器的阻值则需要两个控制端,所以对于n个突触中有x个需要学习更新权值的突触电路来说,突触权值控制电路要输出2x+1个控制端。

图4所示为突触权值控制电路的一种实现形式,其实现并不局限于这一种方式。该电路包括:两个输入端、一个反馈端、三个输出端、五个NMOS管、两个PMOS管、两个控制电源。两个输入Vin1和Vin2来自突触的两个输入,一个反馈Vb来自神经元输出。三个输出a、b、c接入到突触电路。T1、T2、T3、T5、T7为NMOS管,T4、T6为PMOS管,Vln和Vfg是控制电源且Vfg>Vln。Vin1接在T1和T4的栅极,控制T1和T4的开断;Vin2接在T2和T6的栅极,控制T2和T6的开断;Vb接在T3、T5、T7的栅极,控制T3、T5、T7的开断,c点直接输出Vout。T1的一端接a端输出,另一端接T2的一端,T2的另一端接T3的一端,T3的另一端接地。T4和T6的一端接一起并从a端输出,另一端接一起并接T5的一端,T5的另一端接电源Vfg。T7的一端接b端输出,另一端接电源Vln。(1)当Vin1和Vin2都输入高电平时,T1、T2导通,T4、T6关断。在神经元输出高电平之前,T3、T5、T7都是关断的,a、b、c三点都是高阻态,对突触电路不起作用。因为突触的两个输入至少有一个能激活神经元,所以在神经元输出高电平时,Vb也是高电平,此时T3、T7导通,则a点接地,b点输出电压Vln,从而b电压高于a电压,进而减小忆阻器阻值。(2)当仅输入Vin1时(对应突触电路的Vina),神经元会输出高电平即Vb为高电平,此时T3、T5、T6、T7导通,T2、T4断开,则a点输出Vfg,b点输出Vln,因为Vfg大于Vln,所以a点电压大于b点电压,从而增大忆阻器阻值。(3)在学习过程进行完之后,如果仅输入Vin2(对应于突触电路的Vinb),开始时神经元是输出高电平的,即Vb为高电平,此时T3、T4、T5、T7导通,T1、T6断开,此时a点输出Vfg,b点输出Vln,所以忆阻器阻值增大,这个过程和上述第二种遗忘过程中描述的V2直接作用于Mb增大忆阻器阻值共同构成了第二种遗忘过程。当Mb增大大于Rth即Vin2对应的Vinb不能激活神经元之后,这种过程就会消失,而突触电路中仅剩V2作用于Mb这一增大Mb阻值的过程。该电路可以通过增加与T1、T2串联的NMOS管,与T4、T6并联的PMOS管来增加突触输入的控制端。需要说明的是,本段描述仅用于图4所示实现方式的说明,对于其他方式并不局限于本描述。

图5是本发明n=2时的整体电路结构图。以n=2为例进行说明:本神经网络电路包括突触电路、神经元电路、突触权值控制电路。突触电路的两个输入同时接到突触权值控制电路的两个输入端,两个输出接神经元电路的输入。神经元电路的输出反馈接到控制电路的反馈端。Vina和Vinb相当于巴普洛夫实验中的食物和铃声。忆阻器Ma的初始阻值很小,因此只要有输入Vina时,Vo1可以使Vp≈Vin>Vmem,便可以激活神经元,使Vout输出高电平(这一过程简称为激活Vout)。而Mb的初始阻值很大,所以单独输入Vinb不能激活Vout。要激活Vout,则Vp要大于Vmem,即(为便于计算忽略二极管Da或Db、Do1的导通压降):

其中V是V1或V2,RM是作为突触的忆阻的阻值,Rs为通路上的MOS管导通电阻,那么Vina和Vinb要激活Vout,Ma和Mb的阻值要满足条件(2)。设那么就要把Ma的阻值固定在小于Rth的一个值,而Mb则要在小于Rth和大于Rth的值之间变化,以实现学习和遗忘。

学习过程:学习过程是Vinb从不能激活Vout到通过学习后能激活Vout的过程,通过减小忆阻器Mb的阻值即增大突触权值来实现。该学习过程需要同时输入Vina和Vinb来完成。当同时输入Vina和Vinb时,Ta1和Tb1打开,由于此时Vout为零电平,故PMOS管To1处于打开状态。V1和V2分别正向和反向流过忆阻器,忆阻器Ma阻值变小或保持在很小的状态,Mb的阻值变大(设增大量为ΔR1)或保持在很大的状态。由于Ma阻值小于Rth,那么Vp就会大于参考电压Vmem,那么Vout便会输出高电平,即神经元被激活。同时由于电容C两端的电压不会突变,所以Vp会突然升高并高于Vmem,Vout控制突触控制电路使c点电压为高进而关断Ta2、Tb2、To1,V1和V2不会作用于Vp,同时也使突触权值控制电路的控制输出也不会作用于Vp,电容则开始放电。其中在To1断开时间内,外界的输入都不会对神经元产生影响,称为“不应期”。由于电容放电需要一定时间,那么Vp会在一定时间t内保持高于Vmem,则Vout会在时间t内保持高电平,即神经元会在时间t内保持激活状态。在时间t内,Vout会控制c点电压为高而打开Ta2和Tb2两个NMOS管,使V1和V2接地从而不作用于Ma、Mb和神经元。与此同时,Vout的高电平和Vina、Vinb的高电平共同作用于突触控制电路,那么突触电路会发出控制信号使b点电压高于a点电压,从而减小忆阻器阻值,且此减小量ΔR2大于开始的增大量ΔR1,即ΔR2>ΔR1,结果忆阻器阻值减小,突触权值增大。至此完成一次学习。当电容C放电使Vp低于Vmen后,Vout恢复低电平状态并使a、b点为高阻态且c点变为零电压,突触控制电路不再作用于Mb,Ta2、Tb2和To1打开,则又开始下一次学习过程。要使Vinb能激活Vout,需要多次学习,一直到Mb的阻值小于Rth,才算完成一个学习过程。

遗忘过程:遗忘过程是在Vinb学习到激活Vout的能力后,通过单独输入Vina或Vinb一段时间,从而失去了激活Vout的能力,这种能力的失去通过增大忆阻器Mb的阻值即减小突触权值来实现。在本发明有两种遗忘过程,分别记为第一种遗忘过程和第二种遗忘过程。

第一种遗忘过程:当仅输入Vina时,与学习过程类似,Vout会变为高电平,在高电平Vina、Vout和低电平Vinb的作用下,突触权值控制电路发出控制信号使a点电压为高于b点电压,从而增大忆阻器阻值。一直重复这个过程,当阻值增大到大于Rth后,那么Vp<Vmem,Vinb不能再激活Vout。至此完成第一种遗忘过程。

第二种遗忘过程:当仅输入Vinb时,Tb2打开,则由于电压V2的作用,忆阻器负端的电压高于正端的电压,那么忆阻器的阻值就会增大,突触权值就会减小,与第一种遗忘过程类似,Vinb会逐渐失去激活Vout的能力。另外,高电平的Vinb、Vout和低电平的Vina可以作用于突触取值控制电路,使得在Tb2打开V2不能作用于Mb的时间内,使a点电压高于b点电压,从而加快这一遗忘过程,当然在Mb大于Rth即Vinb不能激活Vout后,这一加速遗忘过程也就不存在了。

图6给出了一种三输入的忆阻神经网络实施例,与两输入的神经网络不同的是它有三个输入,三个突触电路(增加了一个需要学习的突触,即n=3,x=2)。其中,Vin2和Vin1有联想,即Vin1和Vin2同时输入时Vin2所输入的突触权值才能更新,Vin2才能学习到激活Vout的能力,任意一个单独输入就会对Vin2产生遗忘作用。Vin1、Vin2、Vin3同时输入时Vin3所输入的突触权值才能更新,Vin3才能学习到激活Vout的能力,任意一个或两个输入均会对Vin3产生遗忘作用。其工作原理与图5所示两输入的电路类似。

图7给出了一种三个输入端和一个反馈端的突触权值控制电路(即图6中的)的示例。由于图6神经网络电路有两个突触权值要学习更新,所以改突触权值控制电路有五个输出端。该电路包括三个输入端、一个反馈端、五个输出端。(a)部分与图4中的电路相同,且输出a1、b1,(b)部分则在图4电路的基础上,多了一个与T1和T2串联的NMOS管T8,多了一个与T4和T6并联的PMOS管T9,输出a2,b2,c。两部分的构造和原理与图4所示电路相同。这样便可以组建多输入的突触权值控制电路。

本发明提供了一种基于忆阻的巴普洛夫联想记忆的人工神经网络电路,所设计神经网络电路具有新型的突触电路,具有模拟硬极限激活函数的神经元电路,具有突触权值控制电路,可组建大型人工神经网络电路。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号