二进制系统学习方法

文档序号:6418656阅读:160来源:国知局
专利名称:二进制系统学习方法
技术领域
本发明涉及应用于文字识别,机器人等的运动控制,连想记忆等方面的学习系统。
背景技术
神经网络是学习系统之一种。
所谓神经网络是将模拟生物体的情报处理基本单位神经细胞的机能而形成的神经细胞模似素子(以下简称为神经元)构成网络而组成的回路。其应用于文字识别,连想记忆,运动控制等。
根据

图17,作为单一神经元的神经元NE是由接受其他神经元输入的部11和将该输入以一定的方式进行变换的结合部12和阈值部13,输出部14构成。在与其它神经元相结合部设有表示结合的强度的加权“Wij”。另外,在此结合中,可分为其它神经元的输入越大本身的输出也就越大这样一种所谓兴奋结合(Wij>0)和与此相反的来自其它神经元的输入越大本身输出反而越小这样一种所谓压抑结合(Wij<0)。和当改变加权Wij和阈值θi时,网络构造就会发生变化。关于网络的学习,也正是在于改变这一加权Wij和阈值θj。
图18是显示上述由神经元NE所组成的神经网络图。
该网络由输入层和中间层以及输出层构成。没有各层内的结合,中间层可以有多层这样构成的网络的动作是由输入层所输入的信号向中间层传播,在中间层对结合系数或加权及阈值进行处理而得出的结果向输出层传播。在输出层重又对加权及阈值处理之后输出Z。中间层和输出层的神经元输入值NEX用公式19计算。
NEXj=∑Wij·Xi+θj
于是,对神经元输入NEX进行非线性处理后输出。中间层或输出层的输出值Yj或Zj一般用公式20所示sigmoid函数来求。
Yj=1/(1+exp(∑Wij·Xi+θj)}所谓学习就是变更加权和阈值,直至实际输出值Zj和希望输出值Tj(教师信号)的误差变小或等于0。求解这一变化量时采用误差逆传播法。另外,求解该变化量所用的方程式因神经元是输入层还是中间层而有所不同。
作为实现前述网络的模拟电路,有这样一种电路以电压表示输入输出等信号的强弱,神经元加权以连接各神经元连线的电阻值表示,神经元输出函数(sigmoid函数)用增幅器的传递函数来表示。另外,为表示神经元之间结合的兴奋性和压抑性,将增幅器输出一分为二,使其中之一的输出用倒相器反转,由此而生成正负信号,故可表示是兴奋结合还是压抑结合。
这种模拟电路方式存在以下问题a、首先,存在着由温度特性而产生的神经元素子动作上的不同步。
b、在调整上述实际输出Z和教师信号T之间误差时,由于是在各中间层和输出层之间进行加权修正,这不仅造成误差修正电路复杂化,而且不可能将误差调整为0。
c、由于使用增幅器等,电路复杂,大型化,而且演算时间长,很难实现大规模网络。
另一方面,日本特许公开公报特开平5-108594号中,提出了一种实现神经网络的数字电路。根据这一提案,神经元素子全部由逻辑素子构成,由温度特性而产生的神经元素子动作上的不同步没有了。
但是,上述数字电路仍然存在以下缺点①首先,各层之间的信号传播使用脉冲,实际上是以脉冲密度(单位时间内脉冲数)表示模拟信号值。所以,误差不能收敛于0,演算时间也长。
②另外,单一神经元素子的体积变大,网络全体扩大膨胀。
③采用迄今所熟知的神经网络构造,学习时对加权及阈值变化量的修正仍然如前一样是在中间层和输出层进行。
为解决上述问题,本申请发明人在本申请的在先申请(美国专利申请USA08/744,299)中提出了一种“二进制系统学习方法”,其如图1所示,是一种构筑由逻辑素子构成的新学习网络的方法。
图1所示的学习网络由下列要素构成由复数个二进制输入端子X1,X2......Xn构成的输入层21、连接层22、由复数同类逻辑素子(例如逻辑乘AND)构成的第1二进制逻辑门层(AND层)23、由复数同类逻辑素子(例如逻辑和OR)构成的第2二进制逻辑门层(OR层)24、输出层25。各层没有层内的结合,层之间的结合只有由输入层向输出层的单一方向上的结合(Feed forward type)。
另外,从由连接层构成的输入层的各单元到AND层的各单元的连接为下列任一一种(1)直接连接(2)介于反相器连接(3)恒定1连接(4)恒定0连接为实现上述连接的连接层可以由模拟神经元构成。于是,可以构成图14所示学习网络。
从说明简单考虑,在图14中,OR层24仅为一个单元,于是输出层25的输出端Z也仅有一个。
如图12所示,模拟神经元素子NE仅有一个输入,一个输出端,来自输入的加权Wij取值为1或-1。阈值取值为-1.5,0.5,0.5或1.5。
于是,如图13所示,由输入X1、加权Wij及阈值θij所构成的输出Yij全部可以用上述的四种连接状态所表示。而且,还可以用下列[公式3]或[公式4]计算。
Yij=
]>[公式4]Yij=11+e-(wijxi-θij)]]>学习时,实际输出Z和教师信号T之间的误差E用[公式5]求解。
E=12Σi=1m(Zi-Ti)2]]>和以往概念一样,学习是通过改变加权Wij和阈值θij进行的。当将Wij和θij向E的最快速下降方向变化时,其修正量ΔW和Δθ如下[公式1]ΔW∝-∂E∂W]]>Δθ∝-∂E∂θ]]>或者[公式6]ΔW=-ϵw∂E∂W]]>Δθ=-ϵθ∂E∂θ]]>εW,εθ取正值,利用误差逆传播学习法则计算如下[公式7]ΔWij=-ϵw∂E∂Wij=-ϵw∂E∂Z·∂Z∂OR·∂OR∂ANDj·∂ANDj∂Yij·∂Yij∂Wij]]>Δθij=-ϵθ∂E∂θij=-ϵθ∂E∂Z·∂Z∂OR·∂OR∂ANDj·∂ANDj∂Yij·∂Yij∂θij]]>这里,由于输出仅有一个,故[公式8]E=12Σi=1m(Zi-Ti)2=12(Z-T)2]]>因此[公式9]∂E∂Z=Z-T]]>由于Z=OR,所以[公式10]∂Z∂OR=1]]>故,对于各OR逻辑门,可以下列连续函数近似表示。[公式11]OR=[ANDj(ANDj≥M)M(ANDj<M)]]>这里,M为ANDj以外的所有输入中的最大值。即M=Max(ANDi,i=1,2,3...,i≠j)其可以图15表示,故[公式12]∂OR∂ANDj=Sgn(ANDj-M)=[1(ANDj≥M)0(ANDj<M)]]>同理,对于各输入AND逻辑门,可以下列连续函数近似表示[公式13]ANDj=[mYij>mYijYij≤m]]>这里,m为ANDi以外的所有输入中i最小值。即m=Min(ANDi,I=1,2,3......,i≠j)其可以图16表示,故[公式14]∂ANDj∂Yij=Sgn(m-Yij)=
]>最后,由于[公式15]Yij=f(x)=11+e-x]]>X=WijXi-θij故[公式16]∂Yij∂Wij=f′(x)·Xi]]>∂Yij∂θij=f′(x)·(-1)]]>
由于f′(x)>0,若f′(x)=1,则加权和阈值修正量ΔWij,Δθij为[公式17]ΔWij=-εw(Z-T)Sgn(ANDj-M)Sgn(m-Yij)XijΔθij=-εθ(Z-T)Sgn(ANDj-M)Sgn(m-Yij)(-1)若εW=2,εw,εθ=1,则[公式18]ΔWij=-2(Z-T)Sgn(ANDj-M)Sgn(m-Yij)XiΔθij=(Z-T)Sgn(ANDj-M)Sgn(m-Yij)上式中,由于所有量都为二进制值,故修正量与输出Z,教师信号T,AND的输出ANDi、输出Yi、输入Xi成简单的逻辑关系。
如上所述,由于NE为单一输入,单一输出,学习中的Wij、θj、Yij、ΔWij、Δθij等的变量都能以二进制表示,NE的输出Yij能以前述四种连接状态表示,故学习就成为改变输入层的各输入Xi与第一逻辑门层各单元(AND)之间的连接状态的事情。因此,能够简单地构成学习网络,学习时间也相当地缩短,特别是,误差E能够收敛于0。
但是,上述在先申请的学习网络,虽然其连接层单元输出为二进制值,但其连接状态有四种。如果连接状态能变成两种,体现在硬件上的连接层单元、误差修正电路、特别是学习网络全体构成能够更加简化。因此,在上述在先申请中揭示的学习方法有必要进一步改进。
本发明正是针对以上问题而提出的。其目的在于提供一种学习正确而迅速,学习网络构造更加简单的二进制系统学习方法。
本发明的开示为解决上述课题,本发明二进制系统学习方法是将由复数个二进制输入端子构成的输入层、连接层、由复数同类逻辑素子构成的第1二进制逻辑门层、由复数同类逻辑素子构成的第2二进制逻辑门层、输出层组成学习网络,并且没有各层内的结合,各层之间的结合只有由输入层向输出层的单一方向上的结合,通过改变由连接层构成的输入层之各单元与第1二进制逻辑门层之各单元之间的连接状态从而减少或消除输出层实际输出和教师信号之间的误差,这样来进行学习,其特征是所说连接状态按下列任一一种状态改变①直接连接②介于倒相器连接。
另外,其特征还在于以下述进程改变所说连接状态(1)当实际输出与教师信号相同时,不学习,不同时学习。
(2)以从第1二进制逻辑门层的最上位单元到最下位单元的顺序,改变输入层输入端和第1二进制逻辑层单元的连接状态来进行学习,而且,就同一单元,所有输入端同时学习,或者以从输入层最上位输入端到最下位输入端的顺序进行学习。
(3)学习虽已经进行到第1二进制逻辑门层的最下位单元,但仍然继续进行学习的场合,再一次从最上位单元开始以上述顺序进行学习。
其特征还在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子AND和复数个逻辑素子OR构成。
其特征还在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子OR和复数个逻辑素子AND构成。
其特征还在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子NAND和复数个逻辑素子NAND构成。
其特征还在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子NOR和复数个逻辑素子NOR构成。
其特征还在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子EXOR和复数个逻辑素子EXOR构成。
附图简要说明图1是根据由AND层和OR层构成的二进制系统的学习方法的学习网络框图。
图2是根据图11所示真值表的逻辑电路图。
图3是表示学习网络输出中1位(bit)的网络图。
图4是实现连接电路的逻辑电路图。
图5是实现学习方法的控制电路图。
图6是具体的2-TO-1选择器的逻辑电路图。
图7是根据由OR层和AND层构成的二进制系统的学习方法的学习网络的框图。
图8是根据由中间NAND层和输出NAND层构成的二进制系统的学习方法的学习网络的框图。
图9是根据由中间NOR层和输出NOR层构成的二进制系统的学习方法的学习网络的框图。
图10是根据由中间EXOR层和输出EXOR层构成的二进制系统的学习方法的学习网络的框图。
图11是逻辑函数的真理表。
图12(a)是模拟神经元阈值函数曲线图。
图12(b)是模拟神经元的数字模型图。
图13是模拟神经元构成的连接状态的说明图。
图14是根据采用模拟神经元的二进制系统的学习方法的学习网络概念图。
图15是近似表示OR的函数曲线图。
图16是近似表示AND的函数曲线图。
图17是作为单元的神经元NE的说明图。
图18是由神经元NE构成的神经网络图。
本发明最佳实施形态以下结合附图对本发明二进制系统学习方法实施形态加以说明。
根据图1(显示了分别由AND层和OR层构成第1进制逻辑门和第2二进制逻辑门的AND-OR网络)说明根据本发明学习方法的学习网络的一具体实施形态。
本发明学习方法是将由复数个二进制学习端子X1,X2,......Xn构成的输入层21、连接层22、由复数个逻辑乘AND构成的第1二进制逻辑门层(AND层)23、由复数个逻辑和OR构成的第2二进制逻辑门层(OR层)24、由该OR层24各单元出力端构成的输出层25组成网络而形成的。
在这种学习网络中,没有各层内的结合,层之间的结合是由输入层21向输出层24的单一方向上的结合(Feed forward type),AND层23和OR层24的连接维持一定,学习是借对从输入层21各单元到AND层23各单元的由连接层22形成的连接状态,以下列任一状态加以改变而进行的(1)直接连接(2)介于倒相器连接连接层22是由从输入层21各单元到AND层23各单元的连接而构成的。
以下对上述实施形态原理进行说明。
举例来说,从由图1的真值表所显示的逻辑变量关系可以得到以下逻辑函数[公式2]Z=X1‾X2‾X3‾X4‾+X1‾X2‾X3X4+X‾1X2X3X4+X1X2‾X3X4‾]]>+X1X2X3X4‾+X1X2X3X4]]>将该公式以逻辑素子表示时,可以得到图2所示的逻辑电路。
故,在图1中,相对于由X1,X2,......Xi构成的复数个相关连的输入形态(例如,表示同一概念的复数个图案的输入形态)而获得同一输出Z的场合,可以通过改变输入层21和AND层23的连接关系(即连接层22的状态)得到实现。
所以,在图1所示学习网络下的学习就是改变连接层22即输入层21各单元和AND层23各单元的连接状态,直至使在由X1,X2......Xi构成的某一定输入形态下的输出Z与教师信号T相一致的事情。
在二进制系统下,由于信号只有0或1,故这种连接状态能够以直接连接或介于倒相器的连接之中的一种连接来表现。
设定输入层21和AND层23之间的两种连接状态,即直接连接或介于倒相器的连接之际,用1位(bit)就能表示。例如,可以用1表示直接连接,0表示介于倒相器的连接。
图2中,输入端为四个,输出Z为1个时,设由X1、X2、X3、X4组成的输入形态的数量为6个的场合,则逻辑素子AND的个数至少为6个。
在图1中,假设输入层21的输入端为n个,Z1、Z2、Z3......Zn构成的同一输出状态下的输入形态的个数为2n-1+1(即2n的一半)以下时,在第1二进制逻辑门层AND层23中只要有2n-1+1个单元AND就足够了。
以下,根据电路图说明上述实际形态。
例如,设图1所示学习网络输出为1位(bit),则可形成图3所示网络图。这里,不可兼的或OR1(Exclusive OR)依据教师信号T和实际输出Z提供误差信号ERROR。在AND逻辑门3有各输入X1,......Xn通过各自连接电路5被输入,进一步有控制电路4被输入。在此,逻辑门ANDj是被输入给OR逻辑门2的AND逻辑门之一。
连接电路5是由控制电路4接受状态更新信号,当输入X为1时输入X直接与AND逻辑门连接,输入X为0时输入X介于倒相器与AND连接——这样一种电路。图4是为实现这种连接电路的逻辑电路图。根据附图,RS-FF11是显示输入端子X和AND层的AND逻辑门连接状态时所用的RS双稳态多谐振荡器,“2-to-1选择器”12是依据RS-FF11状态而使X与AND直接或介于倒相器连接的电路。
关于RS-FF11,S=1、R=0时,RS-FF启动,输出为1。S=0,R=1时,RS-FF翻转,输出为0。S=R=0时,RS-FF处于保持此前信号下的记忆状态。因此,当从控制电路4状态更新信号成为1时,根据图4所示的AND逻辑门13、14,RS状态被更新。即X是1时,AND逻辑门14输出1,AND逻辑门13输出0、RS-FF11被设定为1。相反,当X为0时,AND逻辑门13输出1,AND逻辑门14输出0、RS-FF11翻转为0。
“2-to-1选择器”12具有两个输入端I0、I1和选择端S。当S端信号为0时,选择I0的信号,当S端的信号为1时,选择I1的信号。“2-to-1选择器”12可以采用图6所示逻辑电路。
因此,输入X为1时,RS-FF11被设定为1,“2-to-1选择器”12选择I1,X被直接连接于AND逻辑门。输入X为0时,RS-FF11翻转为0,“2-to-1选择器”12选择I0,X通过倒相器20被连接于AND逻辑门。
控制电路4是依据学习信号LEARNING、RESET信号、误差信号ERROR以及AND逻辑门输出而显示各AND逻辑门是否已学习的学习状态,同时给连接电路提供状态更新信号(LEARNING ENABLE)的功能电路。
学习之前,首先要将控制电路4用RESET信号进行0初始化。即,所有AND逻辑门的输出都设为0。
学习之际,依据输入X、输出Z、教师信号及AND逻辑的输出确定是否改变连接状态。具体可以采用如下学习法则。
(1)实际输出Z与教师信号T相同时不学习,不同时则学习。该误差信号可以以实际输出Z与教师信号T的不可兼得的OR(Exclusive OR)获得。即,实际的输出Z与教师信号T相异时EXOR输出1,相同时,输出0。
(2)通过按着由AND层最上位的AND逻辑门至最下位的AND逻辑门的顺序,即按AND1、AND2.......ANDn的顺序改变控制电路及连接状态,来进行学习。
图5是为实现这种学习方法的控制电路图。
根据图5,RS-FF11是与AND层的单元ANDj连接,显示学习状态所用的RS-FF。RS-FF11的输出为1时,表示之于该AND逻辑门已进行了学习,AND逻辑门输出由输入及连接状态确定。RS-FF11的输出为0时,AND逻辑门与输入无关,常为0、即表示没学习过。
RESET信号成为1时,依据OR逻辑门15与AND逻辑门16,RS-FF被设为0,即可将控制电路初始化为0。
学习之际,LEARNING信号为1。误差信号ERROR为0时,依据OR逻辑门15,AND逻辑门16、17、18,RS-FF的输入成为0,RS-FF保持此前状态,即不学习。
而当误差信号ERROR为1时,则进行学习。
教师信号为1,实际输出Z为0时,误差信号ERROR变为1。之于各学习状态RS-FF11,没学习过的RS-FF输出Q=0,即Q=1,故被AND逻辑门18所选择。进一步,依据AND逻辑门19,上位AND逻辑门学习状态,即在Qj-2,Qj-1,Q′j-1中由上数第1个没学习过的RS-FF被选择。这里,Qj-2,Qj-1是第j-2、第j-1个RS-FF的输出,Q ′j-1是Qj-2、Qj-1、Q′j-2的逻辑乘。只有因ANDj为0而被选择的RS-FF,其R=0、S=1。于是RS-FF被设为1,同时提供状态更新信号(LEARNING ENABLE)。
误差信号ERROR为1,并且教师信号T为0,实际输出I为0时,所有输出为1的AND逻辑门被逻辑门17所选择,RS-FF1被强制以0初始化。例如,ANDj为1时,RS-FF被AND逻辑门17、16及OR逻辑门15强制性初始化为0。
如上述实施形态所述,在学习网络下的学习是通过改变输入层21的输入端和AND层各单元的连接状态而进行,而且,这种状态只有直接或介于倒相器连接两种,故误差修正电路构成更为简化,在极短时间内即可得到一定的学习效果。另外,实际输出与教师信号之误差必定收敛于0。
在上述实施形态中,虽然第1二进制逻辑门层和第2二进制逻辑门层分别为AND层23和OR层,但并不仅限于此。如图7、8、9、或10所示,第1二进制逻辑门为由复数个逻辑素子OR构成的OR层、由复数个逻辑素子NAND构成的中间NAND层、由复数个逻辑素子NOR构成的中间NOR层、或由复数个逻辑系子EXOR构成的中间EXOR层也是可以的,而第2二进制逻辑为由数复数逻辑素子AND构成的AND层、由复数个逻辑素子NAND构成的输出NAND层、由复数个逻辑素子NOR构成的输出NOR层、或由复数个逻辑素子EXOR构成的输出EXOR层也是可以的。
在产业上利用的可能性根据本发明二进制系统学习方法,是将由复数个二进制输入端子构成的输入层、连接层、由复数同种逻辑素子构成的第1二进制逻辑门、由复数同种逻辑素子构成的第2二进制逻辑门层、输出层,形成没有各层内结合、各层间结合仅有由输入层向输出层的单一方向的结合这样一种学习网络,通过以直接连接或介于倒相器的连接来改变从输入层各单元至第1逻辑门层各单元的由连接层形成的连接状态这种方式进行学习。所以,学习网络误差修正电路构成更加简化,在极短时间内即可得到所要的学习效果。而且,实际输出和教师信号的误差必定会收敛于0。
符号说明2 OR逻辑门3 AND逻辑门4 控制电路5 连接电路11 RS-FF12 2-TO-1选择器13、14、16、17、18、19 AND逻辑门15 OR逻辑门21 输入层22 连接层23 AND层24 OR层25 输出层T 教师信号X 输入端子X1、X2、......Xi 输入形态Z 输出
权利要求
1.二进制系统学习方法,是将由复数个二进制输入端子构成的输入层、连接层、由复数同类逻辑素子构成的第1二进制逻辑门层、由复数同类逻辑素子构成的第2二进制逻辑门层、输出层组成学习网络,并且没有各层内的结合,各层之间的结合只有由输入层向输出层的单一方向上的结合,通过改变由连接层构成的输入层之各单元与第1二进制逻辑门层之各单元之间的连接状态从而减少或消除输出层实际输出和教师信号之间的误差,这样来进行学习,其特征是所说连接状态按下列任一一种状态改变①直接连接②介于倒相器连接。
2.按权利要求1所说的二进制系统学习方法,其特征在于以下述进程改变所说连接状态(1)当实际输出与教师信号相同时,不学习,不同时学习。(2)以从第1二进制逻辑门层的最上位单元到最下位单元的顺序,改变输入层输入端和第1二进制逻辑层单元的连接状态来进行学习,而且,就同一单元,所有输入端同时学习,或者以从输入层最上位输入端到最下位输入端的顺序进行学习,(3)学习虽已经进行到第1二进制逻辑门层的最下位单元,但仍然继续进行学习的场合,再一次从最上位单元开始以上述顺序进行学习。
3.按权利要求1或2所说的二进制系统学习方法,其特征在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子AND和复数个逻辑素子OR构成。
4.按权利要求1或2所说的二进制系统学习方法,其特征在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子OR和复数个逻辑素子AND构成。
5.按权利要求1或2所说的二进制系统学习方法,其特征在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子NAND和复数个逻辑素子NAND构成。
6.按权利要求1或2所说的二进制系统学习方法,其特征在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子NOR和复数个逻辑素子NOR构成。
7.按权利要求1或2所说的二进制系统学习方法,其特征在于所说第1二进制逻辑门层和第2二进制逻辑门层分别由复数个逻辑素子EXOR和复数个逻辑素子EXOR构成。
全文摘要
二进制系统学习方法,是将输入层、连接层、第1二进制逻辑门层、第2二进制逻辑门层、输出层组成学习网络,各层之间的结合只有由输入层向输出层的单一方向上的结合,通过改变由连接层构成的输入层之各单元与第1二进制逻辑门层之各单元之间的连接状态从而减少或消除输出层实际输出和教师信号之间的误差,这样来进行学习,其特征是:连接状态按下列任一状态改变:①直接连接,②介于倒相器连接。
文档编号G06N3/00GK1256771SQ99800204
公开日2000年6月14日 申请日期1999年2月18日 优先权日1998年2月20日
发明者唐政 申请人:株式会社综和研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1