《智能控制理论和方法》课件第4章_第1页
《智能控制理论和方法》课件第4章_第2页
《智能控制理论和方法》课件第4章_第3页
《智能控制理论和方法》课件第4章_第4页
《智能控制理论和方法》课件第4章_第5页
已阅读5页,还剩219页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章基于神经元网络的智能控制系统4.1神经元网络与控制4.2神经元网络的基本原理和结构4.3监督学习神经元网络4.4无监督学习和反馈神经元网络4.5基于神经元网络的智能控制4.6神经元网络控制非线性动态系统的能控性与稳定性

4.1神经元网络与控制

人工神经元网络模仿动物脑神经的活动,力图建立脑神经活动的数学模型。实际上,早在20世纪40年代,人们已对脑和计算机交叉学科进行研究,想解决智能信息处理的机理。大家熟知的维纳的《控制论》一书就已经提出了反馈控制、信息和脑神经功能的一些关系。当时在“控制论(Cybernetics)”的旗帜下,很多学者把这些内容当作一个公共的主题进行研究。但是此后,控制学科,计算机科学(包括人工智能)和神经生物学各按自己的独立道路发展,相互之间缺乏沟通,尤其是不同的学术用语和符号造成了学科间有效交流的障碍。近年来,智能控制作为一个新交叉学科蓬勃兴起,人们又在更高的水平上寻求控制、计算机和神经生理学的新结合,要以此来解决现实世界中用常规控制理论和方法所难以解决的一些问题。神经元网络的研究已有数十年的历史。20世纪40年代初,心理学家Mcculloch和数学家Pitts提出了形式神经元的数学模型,并研究了基于神经元模型几个基本元件互相连接的潜在功能。1949年Hebb和其他学者研究神经系统中自适应定律,并提出改变神经元连接强度的Hebb规则。1958年Rosenblatt首先引入了感知器(Perceptron)概念,并提出了构造感知器的结构。这对以后的研究起到很大作用。1962年Widrow提出了线性自适应元件(Adline),它是连续取值的线性网络,主要用于自适应系统,与当时占主导地位的以顺序离散符号推理为基本特性的AI方法完全不同。之后,Minsky和Papert(1969)对感知器为代表的网络作了严格的数学分析,证明了许多性质,指出了几个模型的局限性。由于结论相当悲观,从此神经元网络的研究在相当长时间内发展缓慢。Grossberg在20世纪70年代的工作,使神经元网络的研究又有了突破性的进展。根据生物学和生理学的证明,他提出了具有新特征的几种非线性动态系统的结构。1982年Hopfield在网络研究中引入了“能量函数”概念,把特殊的非线性动态结构用于解决像优化之类的技术问题,引起了工程界的巨大兴趣。Hopfield网至今仍是控制领域中应用最多的网络之一。1985年Hinton和Sejnowshi借用了统计物理学的概念和方法,提出了Boltzman机模型,在学习过程中采用了模拟退火技术,保证系统能全局最优。1986年,以Rumelthard和Mcclelland为首的PDP(ParalellDistributedProcessing)小组发表一系列的研究结果和算法。由于他们卓越的工作,为神经元网络的研究提供了触媒剂,使得这方面研究和应用进入全盛时期。以后,Kosko提出了双向联想存储器和自适应双向联想存储器,为在具有噪声环境中的学习提供有效的方法。

神经元网络作为一种新技术之所以引起人们巨大的兴趣,并越来越多地用于控制领域,是因为与传统的控制技术相比,它具有以下重要的特征和性质。

(1)非线性。

(2)平行分布处理。

(3)硬件实现。

(4)学习和自适应性。

(5)数据融合。

(6)多变量系统。

很明显,复杂系统的建模问题,具有以上所需的特征。因此,用神经元网络对复杂系统建模是很有前途的。

从控制理论观点来看,神经元网络处理非线性的能力是最有意义的。非线性系统的多种性与复杂性,使得至今还没有建立起系统的和通用的非线性控制系统设计的理论。虽然对特殊类别的非线性系统,存在一些传统的方法,如相平面方法,线性化方法和描述函数法,但这不足以解决面临的非线性困难。因此,神经元网络将在非线性系统建模及非线性控制器的综合方面起重要作用。

4.2神经元网络的基本原理和结构

4.2.1神经元网络的基本单元

图4.1表示了在中央神经系统中,典型神经细胞的主要元件。

(1)细胞体:由细胞核、细胞质和细胞膜等组成。

(2)轴突:由细胞体向外伸出的最长的一条分支,称为轴突,即神经纤维。轴突相当于细胞的传输电缆,其端部的许多神经末梢为信号的输出端,用以送出神经激励。

(3)树突:由细胞体向外伸出的其他许多较短的分支,称为树突。它相当于神经细胞的输入端,用于接受来自其他神经细胞的输入激励。图4.1神经元的构造

(4)突触:细胞与细胞之间(即神经元之间)通过轴突(输出)与树突(输入)相互连结,其接口称为突触,即神经末梢与树突相接触的交界面,每个细胞约有103~104个突触。突触有两种类型:即兴奋型与抑制型。

(5)膜电位:细胞膜内外之间有电势差,约为70~100mV,膜内为负,膜外为正。

值得注意的是,在动物神经系统中,细胞之间的连结不是固定的,它可以随时按外界环境改变信号的传递方式和路径,因而连结是柔性的和可塑的。4.2.2神经元网络的模型

组成网络的每一个神经元其模型表示于图4.2,根据上节关于动物神经细胞的构造,该模型具有多输入xi,i=1,2,…,n和单输出y,模型的内部状态由输入信号的(4.1)式中θ是神经单元的阈值,n是输入的数目,t是时间,权系数wi代表了连结的强度,说明突触的负载。激励取正值;禁止激励取负值。输出函数f(x)通常取1和0的双值函数或连续、非线性的Sigmoid函数。从控制工程角度来看,为了采用控制领域中相同的符号和描述方法,可以把神经元网络改变为图4.3所示形式。以后会看到,很多神经元网络结构都可以归属于这个模型,该模型有三个部件:

(1)(一个)加权的加法器;

(2)线性动态单输入单输出(SISO)系统;

(3)静态非线性函数。

加权加法器可表示为(4.2)图4.3神经元模型框图式中yi是所有单元的输出,uk为外部输入,aij和bik为相应的权系数,wi为常数,i,j=1,2…,n,k=1,2,…,m。n个加权的加法器单元可以方便地表示成向量-矩阵形式:

v(t)=Ay(t)+Bu(t)+w

(4.3)

式中v为N维列向量,y为N维向量,u为M维向量,A为N×N矩阵,B为N×M矩阵,w为N维常向量,它可以与u合在一起,但分开列出有好处。

线性动态系统是SISO线性系统,输入为vi,输出为xi,按传递函数形式描述为(4.4)式(4.4)表示为拉氏变换形式。在时域,(4.4)变成(4.5)式中H(s)和h(t)组成了拉氏变换对。(4.6)上面表达式中,δ是狄拉克函数。在时域中,相应的输入输出关系为(4.7)第一、二和三的形式就是第四种形式的特殊情况。

也有用离散时间的动态系统,例如

a0xi(t+1)+a1xi(t)=vi(t)

(4.8)

这里t是整时间指数。

静态非线性函数g(·)可从线性动态系统输出xi给出模型的输出

yi=g(xi)

(4.9)

常用的非线性函数的数学表示及其形状如表4.1。对于这些非线性函数,有几种分类方式:

(1)可微和不可微;

(2)类脉冲和类阶跃;

(3)正函数和零均函数。

第一种分类是区别平滑函数还是陡函数。某些自适应算法,如反传网络需要平滑函数,而对给出二进制数的网络则需要不连续函数。

第二种分类是区分当输入在零附近的数是大的输出值还是有大的改变。

第三种分类是关于类阶跃函数。正函数由-∞处为零变到在+∞处为1;零均函数从-∞处为-1变到+∞处为+1。表4.1中所列的非线性函数相互之间存在密切的关系。可以看到,Sigmoid函数和tanh函数是相似的,前者范围为0到1;而后者范围从-1到+1。阈值函数也可看成Sigmoid和tanh函数高增益的极限。类脉冲函数可以从可微的类阶跃函数中产生,反之亦然。

大家知道,处在不同部位上的神经元往往各有不同的特性,譬如眼睛原动系统具有Sigmoid特性;而在视觉区具有高斯特性。应按照不同的情况,建立不同的合适模型。还有一些非线性函数,如对数,指数,也很有用,但还没有建立它们生物学方面的基础。4.2.3神经元的连接方式

神经元本身按计算或表示而言并没有很强大的功能,但是按多种不同方式连接之后,可以在变量之间建立不同关系,给出多种强大的信息处理能力。在4.2.2节讨论过的神经元,其三个基本元件可以按不同的方式连接起来。如果神经元都是静态的(H(s)=1),那么神经元的结合可以按一组代数方程来描述。把式(4.3),(4.4)和(4.9)联合起来,可得(4.10)式中x是N维向量,g(x)是非线性函数。如果g(x)取以下形式的阈值函数:(4.11)B=0,则(4.10)就表示了Adline(自适应线性)网络。这是

一个单层的静态网络。

神经元网络可以连接成多层,有可能在输入和输出之间给出更为复杂的非线性映射,这种网络典型的也是非动态的。这时,连接矩阵A使输出被划分成多个层次,在一个层次中的神经元只接收前一层次中神经元来的输入(在第一层,接收网络的输入)。网络中没有反馈。例如,在一个三层网络中,每层含有N个神经元,我们可将方程(4.10)中网络向量x,y,u和w划分,写成(4.12)式中上标表示网络中相应的层次。矩阵A和B的结构如下:(4.13)式中,ONN是N×N的零矩阵,ON×M是N×M的零矩阵,A2和A3是N×N的矩阵,而B1是N×M的权矩阵。对第一层我们有(4.14)(4.15)对第二层和第三层,我们有式中,l=2,3。可以从表4.1选取不同的g(x)。如果我们选择Sigmoid函数,这就是Rumelhart提出的反传(BP)网络。

在网络中引入反馈,就产生动态网络,其一般的动态方程可以表示为

x(t)=F(x(t),u(t),θ)

y(t)=G(x(t),θ)

这里,x代表状态,u是外部输入,θ代表网络参数,F是代表网络结构的函数,G是代表状态变量和输出之间关系的函数。Hopfield网络就是一种具有反馈的动态网络。起初,反馈(回归)网络引入到联想或内容编址存储器(CAM),用作模式识别。未受污染的模态用作稳定平衡点,而它的噪声变体应处在吸引域。这样,建立了与一组模式有关的动态系统。如果整个工作空间正确地由CAM划分,那么任何初始状态条件(相应于一个样板)应该有一个对应于未受污染模式的稳态解,这种分类器的动态过程实际上是一个滤波器。

4.3监督学习神经元网络

4.3.1感知器和反传(BP)网络

感知器在早期神经元网络的发展中起过重要的作用。其基本思想是将一些类似于生物神经元的处理元件构成一个单层的计算网络,该网络能够自动学习和对模式进行分类。但在早期研究中,由于感知器是由线性阈值元件组成,无法求解线性不可分问题,如异或逻辑问题(XOR);又由于基本阈值-逻辑单元的非线性网络缺乏有效的学习方法,曾一度得出相当悲观的结论,使神经元网络的研究经历一次低潮。多端输出的感知器网络表示于图4.4(a)。它是一个前馈(正向传输)网络,所有节点都是线性的,连接也是线性的。对于这种感知器,可以用解析方法来求解线性决策函数,即连接权W向量。现在假定输入向量X={X1,X2,…,XN}和输出b都可由训练样本给定,求解决策函数W,就是解下列方程,使

XW=b

对于N维空间的M个向量(或M个模式),上式可改写为(4.16)在模式分类的应用中,感知器的输出单元是二位式的阈值单元。对于式(4.16)的解析解可以表示为

W=(XTX)-1XTb

这种解析方法是不切实际的。这不仅是因为当样本空间扩大时,分析变得十分困难;而且在一般情况下训练样本集合往往是不固定的,因此只能采用迭代形式来求解,寻找W。

W的修正规则按下式进行:

Wk+1=Wk+η(bk-WTkXk)Xk

或ΔWk=ηδkXk

式中,δk=(bk-WTkXk)代表理想输出bk与网络实际输出的差值。η称为学习因子。这就是有名的δ学习规则。在一定条件下,随着迭代次数k的增加,δk→0,保证网络收敛。感知器可以是多层的,它可以解决异或问题。

BP网络与感知器网络主要区别在于前者的网络节点是非线性单元,它采用了广义的δ学习规则。

图4.4(b)表示了BP网络的连接,它是一个多层的网络。有一个输入层,一个输出层,多个隐层,每层都有多个节点。

BP网络是正向、各层相互全连结的网络。对于输入信号,要经过输入层,向前传递到隐层节点。经过作用函数后,再把隐层节点的输出送到输出层节点,最后给出输出结果。图4.4BP网络(a)多端多层感知器网络;(b)BP网络上面已经指出,在BP中,作用函数选用Sigmoid函数。这个网络的算法(学习过程)由正向传播和反向传播两部分组成。在正向传播过程中,输入信息从输入层经隐层逐层处理,并传向输出层,每一层神经元状态只影响下一层神经元状态。在输出层输出信号与期望值进行比较,如果存在误差,则将误差沿原来连接的路径返回,通过修改层间各节点的连接强度(权值),使误差信号减少,直至把误差限定在预先规定的范围。

为了算法说明简单起见,我们假定BP网中只有一层隐层。输入向量xp=(xp1

xp2…xpn)T加到网络的输入层的节点,输入节点将值传播给隐层节点,送到第j个隐层节点的总输入为(4.17)这里上标h表示为隐层,wji是第i个输入节点到第j个隐节点之间的权值。假定这个节点的激励等于总的输入,则这节点的输出可表示为

Ohpj=fhj(Shpj)

(4.18)

对输出节点,类似地为(4.19)O0pk=f0k(S0pk)

(4.20)式中上标0表示为输出层的量。初始的权值代表对某问题合适权值的猜想。同其他方法不一样,BP技术其结果不依赖于第一次猜想,网络的训练是根据输出与期望之间误差更新网络的权值来实现。现在先讨论输出层权值的更新,定义单个输出节点误差为

δpk=(tpk-O0pk)

(4.21)

式中,tpk为目标值,O0pk是第k节点的实际输出,下标p表

示第p次训练向量。所有输出节点误差的平方和为(4.22)式中,1/2是为了以后计算的方便,不影响推导过程;m为输出节点数。为了决定权值改变的方向,必须计算Ep对权值wkj的负梯度Ep,然后调节权值,使总的误差减少。为使问题简单,我们分别考虑Ep的每一分量,由式(4.22)有(4.23)(4.24)L为隐层节点数,将式(4.23)和式(4.24)合起来,对负梯度,我们有(4.25)式中暂时用fk0′

(S0pk)代替。就权值变化的幅度而言,取它正比于负梯度。因此,输出层的权值按下式更新:(4.26)(4.27)式中这里η是学习速率参数,是正值且小于1。在BP网络中非线性函数具有Sigmoid形式,即这样(4.28)(4.29)所以在式(4.27)中,定义(4.30)这样,不管输出函数f0k的形式为何,输出层权值的更新方程为(4.31)这就是广义的δ学习规则。接下来分析隐层权值的更新。隐层权值的更新与输出层相仿,但是在确定隐层节点的输出误差时会发现问题。我们知道这些节点的实际输出,然而我们无法提前知道其正确的输出应是什么。直觉上,总的误差与隐层的输出值有某些关系。我们返回到式(4.22)来证实这种直觉是有根据的。按式(4.22):我们知道Ohpj通过式(4.17)和式(4.18)而取决于隐层的权值。这样,可以利用这些关系来计算Ep对隐层权值的梯度。(4.32)式(4.32)中每个因子可以从以前的方程中计算出来。其结果是(4.33)隐层数值的改变正比于式(4.33)的负值,即(4.34)式中η是学习速率。利用前一节中δ0pk的定义,得出

我们注意到隐层每一个权值的更新取决于输出层所有的误差δ0pk。这个结果就是反传(back-propagation)概念的来源。输出层的已知误差反向传播到隐层以决定隐层数值的适当变化。定义一个隐层误差项

(4.36)

这样,隐层的数值更新方程变成与输出层相似,即(4.35)(4.37)BP的算法可以归纳如下:

(1)将权值和偏置初始化。

(2)提供输入和期望输出。

(3)计算实际输出。

(4)调节权值。

BP网络是多层前馈网络的一种。已经证明,具有至少一个隐层的多层前馈网络,如果隐层单元足够多,那么利用扁平激励函数和线性多项式集成函数,可以对任何感兴趣的函数逼近到任意精度。所谓扁平函数f:R→[0,1]或[-1,1]是非减函数,limλ→∞f(λ)=1,limλ→-∞f(λ)=0或-1。式中λ是扁平函数的参数。

显然,表4.1所定义的函数,包括阶跃函数,阈值函数,斜函数和Sigmoid函数都是扁平函数。上述已证明的理论确立了多层前馈网络是一种通用的逼近器。它说明,在应用中失败必然是由于学习不合适、隐层单元不够或者输入与期望输出之间没有确定性关系所引起。虽然,从理论上讲,三层已经足够,但在求解实际问题时,常常需要4层、5层或更多层次。这是因为用三层近似,对许多问题其隐层单元的数目要很多,以致于难以实现,而使用多于三层的网络,可以以合适的网络规模获得合适的解。事实上,已经证明,单隐层网络不足以稳定,尤其在不连续映射中更是如此,而用阈值单元,两个隐层网络却是足够了。

BP是用反传学习算法的多层前馈网络,因此上述理论保证了BP网络的结构能力,如果它的隐层单元足够多。实质上,BP网络作为分类器,它等价于最优贝叶斯鉴别函数,用以鉴别统计上独立的训练模式的渐近大集合。留下的问题是,在足够次学习之后,BP算法是否一定收敛并找到合适的网络权值?直觉上,它应该收敛,因为它在权值空间利用了误差曲面的梯度下降,而且“状态-空间球”会从误差曲面滚下来抵达最接近于最小误差点并停下来。但这通常在输入和输出训练模式存在确定性关系且误差曲面是确定性的情况下才是正确的。遗憾的是,在现实中,所产生的误差曲面往往是随机的,这是BP算法的随机性本质,因为它建立在随机梯度下降法的基础上。已经证明,BP算法是随机逼近的一个特别情况。BP算法是否收敛的另一个问题是它会陷入局部极值而不能求得满意的解。图4.5为BP算法的流程图。图4.5BP算法的流程图现在我们用例子来说明误差曲面。图4.6(a)是三层具有Sigmoid激励函数的神经网络,它共有13个权值,其训练数据来自一个四维、两类的高斯分布。平均向量mi和协方差矩阵Ci,i=1,2,分别表示为每类的10个训练样本用于训练网络。首先用BP算法来训练网络得到相应于曲面极小值的一组权值。图4.6(b)画出了相应于误差E(Wi,Wj)为两个已选权值Wi和Wj的函数(其余11个权值在极小值处固定不变),从这些图中我们看到的绝大部分是高原和凹谷。图4.6三层BP网络误差曲面现在从几何角度来进一步分析BP网络隐层节点输出的灵敏度以及它为什么不适合多极值函数的逼近问题。

对于一个N个输入,单个输出并具有m个隐节点的神经网络,按式(4.17)、式(4.18)、式(4.19)、式(4.20)可以描述如下:(4.38)(4.39)(4.40)上式中ci和co代表相应于连接权值和阈值的适当常数,y表示神经网络的输出,相当于式(4.20)中O0pk。目前情况下k=1。这是一个从Rn到R的映射,即Rn→R。映射函数也可以考虑为在Rn+1空间(输入-输出空间)的超曲面。如激励函数为Sigmoid函数,f(x)=1/(1+ex),式(4.39)中Ohi和Shi分别表示第i个隐层节点的输出和激励值。则式(4.40)可以进一步表示为

Shi=wio+wi1x1+…+winxn

=Wi·X+wio=‖Wi‖·‖X‖·cosθ+wio

(4.41)

式中Wi=(wi1

wi2…win)是隐层节点i的权向量,X=(x1

x2…xn)是网络输入向量,θ是两个向量之间的夹角,隐层节点的激励值等于两个向量的乘积和加上一个偏置项。它也可以当作输入向量在权向量方向的投影与‖Wi‖的乘积再加上偏置值。隐层节点i的输出的等值面可以写作

式中,Ewi·X代表X在权向量上的投影,故La是在Rn空间上的超平面。所有La,α∈(0,1)构成了一个平行的超平面簇。图4.7(a)表示了具有两个输入的隐层节点的输出曲面。我们可以看到曲面沿隐层节点权向量方向上升,其等值线的分布如图4.7(b)所示。(4.42)图4.7隐层节点输出Shi=f(x1,x2)(a)曲面;(b)等值线由于Sigmoid函数的非线性性质,由图4.7(b)可知,等值超平面的分布是呈不均匀状态的。当Shi=0,Ohi=0.5,L0.5等值超平面位于中心。在L0.5附近,隐节点的输出变化十分明显,沿着Wi和-Wi方向,等值超平面分布越来越稀疏,隐层节点的输出改变不明显,且趋向饱和。这也就是说,在L0.5附近隐层节点输出有较高的灵敏度,而在远离L0.5其灵敏度降低。从方程(4.38)可知,网络的输出是隐层节点输出的加权和,如果我们要逼近一个给定的非线性函数,且使网络输出在其局部区域等于某期望值,它必须依靠于影响该区域的所有隐层节点的联合作用。因为每一节点的灵敏区沿等值面方向无限伸展而且是相互交叠又相互作用,所以多层前馈网络的训练变得十分复杂。图4.8表示了在逼近一个具有2个独立变量的非线性函数时,3个灵敏区的交叠和交互的作用。学习非线性函数的相应神经网络表示在图4.9。该网络有6个隐节点,当一个隐节点的输出改变时,会影响其他隐节点的输出。图4.8灵敏区的交互图4.9训练用神经网络自然,网络权值的调节会改变隐层节点的灵敏区分布特性,包括等值超平面的垂直方向、中心超平面位置以及灵敏区范围等等,以适应网络训练的需要。

对于给定的隐层节点,其分布特性经过相互间耦合会严重影响其他节点的灵敏区。在某些情况下,在逼近复杂非线性函数时,尤其是具有多个极值的非线性函数时这种影响会起到负效应。因此,为了逼近复杂的非线性函数,应将这种耦合尽可能地减少,更要采用一些特殊的学习算法来逼近多极值的复杂非线性函数。4.3.2小脑模型连接控制器(CMAC)网络

小脑模型连接控制器也是一种有监督学习的神经网络,它是Albus在1972年提出来的。当时CMAC专门用来控制机器人,以后经验表明,CMAC可以学习种类广泛的非线性函数,而且其迭代次数比BP网络少得多,因此适用于实时的非线性系统的控制。

人们经过对小脑分析,表明小脑存在多层的神经元和大量的互连接。当小脑接受许多来自各种传感器(如肌肉、四肢、关节、皮肤等)的不同信号后,利用负反馈进行广泛的选择(滤波),使得输入的活动仅限制在最活跃神经的一个很小子集,而绝大多数的神经将受到抑制。也就是说最活跃的神经抑制了不太活跃的神经,而不是将信号分布于所有的神经。对此进行更深入研究后,总结出一个数学上的描述,即小脑模型连接控制器(CerebellarModelArticulationController)简称CMAC。

CMAC原理图如图4.10所示,其结构图见图4.11。由图可知,CMAC实质上是一个智能式的自适应查表技术,它把多维离散的输入空间,经过映射,形成复杂的非线性函数。

CMAC具有三个特性:

(1)利用散列编码(HashingCoding),进行多对少的映射,压缩查表的规模;

(2)通过对输入分布信号的测量值编码,提供输出响应的泛化和插补功能;

(3)通过有监督的学习过程,学习合适的非线性函数;学习过程就是在查表过程中修正每一地址的权值或它的内容。图4.10CMAC网络原理框图在CMAC的结构中,我们看到,每一个离散输入向量映射到存储器P中多个地址。每一个“地址”含有一个相同维数的向量。输出函数F(S)是由S所映射的所有地址的内容之和而求得。输入向量S的集合被映射到随机表格,然后用散列编码映射到规模较小的权值表。这种映射的优点是向空间S的状态提供自动的插补(泛化),这一点在图4.10的原理图中可以了解得更清楚。由散列编码形成的映射机制可以当作是一个概念存储器。输入向量是实际环境中N个合适的传感器的集合或者是期望目标的测量值。输入空间是由所有可能的输入向量组成。输入向量元素N的数目和输出的数目在某些实际限定条件内可以是任意的。CMAC的算法使得它所接受到的任何输入映射到大的“概念”存储器A时只具有C个点(元素)的一个集合(见图4.10)。两个在输入空间中相近的输入在存储器A中将会有重叠的C点集合。两个输入越靠近,其重叠越多。如果两个输入在输入空间中相距很远,则在存储器A中就不会有C元素集合的交叠。譬如,考虑两个输入s1和s2,它们激励概念存储器中两个交叠的联想单元集合A1和A2(如图4.10所示)。如果对应于s2的输出响应希望与对应s1的输出响应一样,那么交叠具有很有利的性质。因为,对s1的正常响应已经寄存,对s2就会采取非常相近的响应而不必为s2而调整权值,这种性质称为泛化(Generalization)。它非常类似于动物有能力从一个学习经验推广到另一种情况下。

但是,如果希望输入向量s2产生一个与s1很不一样的响应,那么A1和A2的交叠就会发生麻烦。在这种情况下,为了产生s2的合适响应,就要调整几乎所有属于A1的且产生s1响应的权值。这就是学习干扰,它类似于生物所经历的反作用抑制。即当出现高度相同的刺激时,希望得到不同的响应。在控制中,我们希望在输入空间中两个相近的输入能够产生交叠的映射,即能泛化。而对两个相距很远的输入能产生各自独立的响应。CMAC的映射过程能保证实现这种要求。

简而言之,CMAC可以描述成一计算装置,它接受一个输入向量S=(s1

s2…sn),产生一个输出向量P=F(S)。为了对给定输入状态S计算输出向量,进行了二次映射

f:S→A

g:A→P

这里A称作联想单元向量,它实际上是一个大的存储地址表格。给定一个输入向量S=(s1

s2…sn),映射函数f指向几个(譬如C个)存储地址(位于表A中),这些地址处于联想单元A之中,称为激活的联想单元。对任何给定的输入,其激活的联想单元数目C是CMAC设计中的一个固定参数。一般C=32~256。数值,或者是提供输出响应的表值,从属于每一个联想单元。如果输出向量P是一维的,每一联想单元有一个数值;如果P是n维的,则有n个数值。相应地,也必须存在n个联想单元。函数g是可以是简单的求和,且在训练和存储过程中有变化。所以,g的任何输入向量是地址指针的集合。而输出向量,在最简单形式下,是属于这些地址指针的权值之和。因此,输出P=(P1P2…Pn)的每一个元素由一个单独的CMAC联想单元按下式进行计算:

Pk=a1kw1k+a2kw2k…+ankwnk

式中,Ak=(a1ka2k…ank)是第k个CMAC的联想单元向量;Wk=

(w1kw2k…wnk)是第k个CMAC的权向量。对给定的一个输入,输出值可以随从属于激活联想单元的权值的改变而改变。

为了在CMAC中产生一个非线性函数,其算法如下:

(1)假定CMAC要产生的函数为F,那么,对输入空间中的每一点,P*=F(S)就是输出向量的期望值。

(2)在存储的输入空间中选一个点S,计算该点的函数值P=F(S)。

(3)对P*=(P*1P*2…P*n)和P=(P1P2…Pn)中每一元素,如果|P*i-Pi|<ei,ei为容许误差,就停止计算,期望值已经存储;如果|P*i-Pi|>ei,那么对构成Pi的每一个权值W增加ΔW,ΔW的计算可按下式进行:(4.43)

(4)重复以上过程,直到各元素误差都小于允许值。

用CMAC网络可以产生输入向量S和输出函数F(S)之间任意非线性关系,其收敛性也已得到证明,收敛的速度也要比BP网快得多。

下面举两个简单的例子。

例1

设输入和输出均为一维向量,输入变量S定义在1到360的区间内,分辨率为1个单位。即

Si=(i)i=1,2,…,360

假定所希望的输出:f0(S)=sin(2πS/360),所有权值原始为0,则函数值f=f(S0)=0。学习过程表示于图4.12。图4.12CMAC学习例子

例2

设输入为二维向量,所希望的输出为取S1和S2的分辨率为10°,即学习过程表示于图4.13。4.13(a)为迭代20次后的输出,最大误差为0.5567;4.13(b)为迭代40次的输出,最大误差为0.3214;4.13(c)为迭代60次后的结果,最大误差为0.1071;4.13(d)为迭代100次后的结果,最大误差已降到0.0628;(e)为迭代120次后的输出,最大误差已降出0.052。图4.13CMAC二维函数学习例子4.3.3增强学习网络

图4.14是增强学习网络的原理图。说明了在增强学习中网络和它的训练环境的交互。

环境向网络提供一个时变的输入向量,它又从网络接收其时变的输出向量或动作。在一般情况下,增强信号r(t)具有以下三种之一的形式:

(1)r(t)是一个双值数。r(t)∈{-1,1}或{0,1}。r(t)=1意味成功;r(t)=-1(或0)意味失败。

(2)r(t)是[-1,1]或[0,1]范围内多值离散数。例如r(t)={-1,-0.5,0,0.5},它们相应于不同程度的成功或失败。

(3)r(t)是实数。r(t)∈[-1,1]或[0,1],代表更详细的和连续的成功或失败程度。通常我们假定r(t)这个增强信号存在于时间步t,而且是由在时间(t-1)的输入和所选择的动作所产生,或者受更早的输入和动作的影响。

训练的目的是使增强信号的函数最大,譬如在未来时刻函数的期望值或整个未来时间内函数某个积分的期望最大。

增强信号的精确计算严重地依赖于环境的性质,对训练系统而言则是未知的。它可以是一个由环境产生的输入和从网络接收到的输出所构成的确定性或随机函数。目前,存在三种类型的增强学习问题:

(1)对给定的输入-输出对,增强信号始终是相同的。这是最简单的情况。因此网络可以学习一个确定的输入-输出映射,如奇偶学习问题和对称学习问题。

(2)在随机环境中,对一个特殊的输入-输出对,只决定正增强的概率。然而,对每一对输入-输出,该概率是固定的。这对增强信号和输出序列并不考虑过去的历史。这类训练包括无相关的增强学习问题。在这类问题中,没有输出,我们只需从一个有限的试验集中决定具有正增强最大概率的最好输出模式,其典型的问题是双臂投币机,人们在预先未知报酬概率的情况下,摇动投币机的一臂。

(3)最一般情况下,环境本身是复杂的动态过程,这在控制过程中是经常碰到的。这时增强信号和输入模式都决定于网络过去的输出。这类问题包括动态规则、下棋等。增强信号(失败与成功)的产生往往要在一系列动作之后。这是属于信用分配问题,要采用时间差(TD)学习方法来训练网络。具有判断的增强学习网络——自适应启发式判断(AHC)神经网络即是这类网络的具体体现。下面我们着重介绍AHC网络的工作原理。图4.14增强学习神经网络的原理图图4.15具有判断的增强学习网络结构图4.15表示了自适应启发式判断网络结构。判断部件(AEN)接收从外界来的原增强信号r,并送一个称之为内部增强信号的已处理信号ρ到主网络,该网络叫动作网络(ASE)。内部增强信号ρ代表了对动作网络(ASE)当前行为的估算,而r通常包含了已往历史信息。如果判断部件可以产生r的预测p,则我们可以设置ρ=r-p,使得动作网络执行增强的比较。当r超过期望时予以奖励,小于期望时予以惩罚。判断本身通常随经验而改进和适应。一般用TD方法来学习对增强信号的预测。

TD方法由一类专为预测的渐增学习过程所组成。常规的预测学习方法是根据预测和实际结果之差来分配信用,而TD根据时间上相继的预测之差分配信用。在TD中,一旦在时间段有预测的变化,就进行学习,不等待外界施教信号。有两种类型的预测-学习问题:即单步预测和多步预测。在单步预测中,关于各预测正确性的信息立即出现;在多步预测中,正确性是在预测作出之后经过多步才展现。这也就是说,单步预测器(判断)的功能是提前一步即在(t-1)时刻预测外部增强信号r(t)。这里r(t)是由输入和在时间步(t-1)所选动作所形成的实际增强信号。多步预测器的功能是在两个相继的外界增强信号期间(它可以有多个时间步隔开)的各时间步来预测增强信号,因此它可以保证预测器和动作网络两者都不必等待到实际结果出来,且可以在该期间内更新它们的参数,毋需从环境取得估计的反馈。在多步预计中,TD有三种重要情况:情况1:预测最终结果。给定观测-结果序列:x1,x2,…,xm,z,这里xt是从环境来的在时间步t存在的输入向量,z是在时间步(m+1)存在的外界增强信号。对各观测-结果序列,预测器产生一个相应的预测序列:p1,p2,…,pm,其中每一个是z的估计。因为pt是在时间t估算网络(判断)的输出,它是网络输入xt和网络可调参数(权值)wt的函数,故可表示为p(xt,wt)。对这种预测问题,学习规则(称作为学习过程的一个TD(λ)簇)为(4.44)情况2:对有限的累计结果的预测。在这种情况下,给定第t个观测xt,预测其余部分的累计价格而不是序列的整个价格。当我们关心的是未来预测之和而不是在一个特定未来时刻的预测时,就产生上述情况。令rt为时间步t和(t-1)之间所引起的实际价格,则pt-1必须预测zt-1=

rk。因此,预测误差为式中pm+1定义为0,学习规则为(4.45)情况3:无限折扣累计结果的预测。在这种情况下,pt-1预测zt-1=,式中折扣率参数γ,0≤γ<1决定了我们所关心的短期或长期预测的程度。这种方法用于精确的成功或失败也许不会被完全知道的预测问题中。预测的误差为(rt+γpt)-pt-1,学习规则为:(4.46)4.3.4组合网络(ModularNetwork)

组合网络是具有递阶结构的有监督学习网络。如图4.16所示,它由两大部分组成:局部子网(或专家网络)和门控网络(集成网络)。在4.3.1节讨论BP网络中,我们曾经提到BP在逼近多极值复杂函数时由于隐节点之间的耦合影响,效果不好。组合网络利用了多个网络可以消除单个网络(单个逼近器)的限制。

在组合网络中,输入数据向量同时加到专家网络和门控网络。其基本的思想是用门控网络将一个任务分配给一个或几个专家网络。如果组合网络的输出不正确,与期望值有误差,就改变这些专家网络和门控网络的权值,使这些子网络局部化以适应所分配的子任务。这样,各子网之间的权值不会相互干涉或影响。图4.16组合神经网络的结构组合网络学习中最关键的问题是如何选择期望函数。Waibel和Jacobs等提出采用各子网络输出的线性和,即式中yci是专家网络i在情况c时的输出,pci是专家网络i对输出所作贡献的比例。dc是c时的期望输出。这种方法的缺点是:为了减少误差,各局部专家网络必须使其输出抵消由其他专家网络联合所造成的残差。一个专家子系统权值改变时,残差也发生变化,所有其他专家网络的误差对时间的导数也发生变化。这种子网络之间的强耦合,一方面使它们之间合作很好;另一方面也导致对各种不同情况用许多专家网络来求解。为了改善这种学习方法,Jacobs又提出了竞争学习机制,在目标函数中加入惩罚项,各专家网络相互竞争而不合作,最终使得一个专家子网络激活。这时,误差(期望)函数不是各专家网络输出的线性组合。门控网络以随机方式决策,选择任一专家网络,其期望函数定义为(4.47)我们注意到,上式要求各个专家网络产生整个输出向量而不是一部分。因此在给定的训练中,局部专家网络的目标不直接受其他子网络权值的影响,但间接的影响还是存在。因为在训练中当其他某些子网络改变权值时,门控网络会改变分配给所选网络的责任。当一个专家网络产生的误差小于其他专家网络所产生的平均加权误差时,其责任会增加;反之,其责任减少。不管这种责任变化如何,一个局部子网不会改变对给定训练情况所产生的误差符号。用以下对数定义的期望函数会产生更好的学习效果(4.48)式(4.48)就是在高斯混合模型(见下述)所产生的期望输出向量的对数概率的负值。我们将式(4.47)和式(4.48)都对一个专家网络i的输出yi求偏导。由式(4.47),由式(4.48),(4.49)(4.50)式(4.49)中的pci用于对专家网络i的误差加权;而式(4.50)中加权项还考虑了专家网络i相对于其他专家网络性能好多少的程度。对给定的训练情况c,假定门控网络对所有专家子网络给定相同的权值,同时给定相同的‖dc-yci‖>1。那么,由式(4.49)最合适的专家网络的误差将以最慢的速度下降;而由式(4.50)最合适的专家网络的误差则以最大速度下降。

下面我们对组合网络给以概率解释。

我们假定训练模式由许多不同的概率过程产生,每一时间步以概率gi选择一个过程。现在令训练样本由p维输入向量x表示;目标输出,即期望响应为q维向量d。输入向量同时施加于专家和门控网络。第i个专家网络的输出为向量yi(q维)。gi为门控网络第i个输出的神经元激励。整个组合网络的输出向量为Y,表示为(4.51)式中k为专家网络的个数。训练组合网络的算法就是为了对训练模式{x,d}的集合的概率分布进行建模。训练算法如下:

(1)以随机方式从某个先验分布中选择输入向量x。

(2)由分布P(i/x)选择一条规则或一个专家网络。P(i/x)是给定输入向量x,选择第i条规则或专家网络的概率。

(3)期望响应d由所选择的规则i,按回归过程产生

d=Fi(x)+εi

i=1,2,…,k

(4.52)

式中Fi(x)是输入向量的一个确定性函数,εi是随机向量。为了简单,εi可以假定为具有零平均和协方差为σ2I的高斯分布。为更进一步简化,可以令σ2=1。

现在我们进一步讨第i个专家网络的输出和组合网络的期望响应。

每个专家网络的输出yi可以看成是多元高斯分布的条件平均,即yi可能写成

yi=ui

i=1,2,…,k

向量ui是给定输入向量x和选择第i

专家网络情况下,期望d的条件平均值,即

ui=E[d|x,i]=Fi(x)

(4.53)在一般情况下,各专家网络输出向量的元素是相关的,而且yi的协方差阵等于εi协方差阵。为了简单可以假定

ε1=ε2=…=εk

εi的协方差为∧i=I,i=1,2,…,k。

所以,给定输入向量x,选择第i个专家网络,期望响应的多元高斯分布可表达为(4.54)‖·‖代表欧氏范数。上式把多元分布写成条件概率密度函数是为了强调对给定的输入向量x,第i个专家网络产生的输出最匹配于所期望的输出向量d。

在此基础上,我们可以把期望的响应d的概率分布当作一个混合模型,即由k个不同多元高斯分布的线性组合。(4.55)式(4.55)称为联想高斯混合模型。“联想”意为此模型是输入向量x和期望响应d所表示的一组训练模式所“联想”出来的。式中gi为门控网络第i个输出神经元的激励,给定无约束变量集合{uj=1,2,…,k},gi可定义为(4.56)或(4.57)式中λ为常数。gi必须满足:(4.58)图4.17表示了门控网络及gi的形成。式(4.57)所表示的gi称为Softmax函数。图4.17门控网络(虚线内为Softmax函数)

4.4无监督学习和反馈神经元网络

4.4.1竞争学习和Kohonen自组织网络

由于不存在有关期望输出的信息,无监督学习网络只根据输入模式来更新权值。竞争学习是这种类型网络最普遍使用的学习方法。图4.18表示了竞争学习的一个例子。所有输入单元i与所有输出单元j用权wij连接。输入的数目即是输入的维数,而输出的数目等于输入数据要聚类的数目。聚类中心的位置是由连接到相应输出单元的权向量来确定。对于如图4.18所示的简单网络,3维输入数据被分成4类,分类中心表示成权值,它通过竞争学习规则而更新。图4.18竞争学习网络输入向量x=[x1

x2

x3]T和对一个输出单元j的权向量wj=[w1j

w2j

w3j]T通常假定为归一化,具有单位长度。输出单元j的激励值aj由输入和权向量的内积所决定:(4.59)接着,必须选择具有最大激励的输出单元作进一步处理,这就是“竞争”的含义。假定输出单元k具有最大的激励,按照竞争或胜者取全的学习规则,更新连到该单元的权值(4.60)式(4.60)的权值更新公式包含一个归一化的运算以保证更新后的权值通常具有单位长度。特别要注意的是,只有获胜单元k的权值进行更新,而其余权值保持不变。式(4.60)的更新公式为寻求元素为单位长度的一个数据集合的分类中心提供了顺序步骤。当输入x提供给网络时,最接近于x的权向量绕着它旋转。所以权向量移向输入出现最多的区域。显然,权向量逐渐变成数据集合的聚类中心。下面例子说明了了一个具有两个可能聚类的动态过程。

设有一个归一化的训练模式:其极坐标形式为训练向量表示于图4.19(a),选择的归一化初始权值为提供给网络的输入按重复循环次序:x11,x21,…,x51,x11,…,式(4.60)中的参数η设定为0.5。在第一时间步后(即x1提供给网络后),我们有因此,第一个神经元是胜者,w1(1)更接近于x1。按此方式迭代,不断调节权值。图4.19(b)表示了t≤20情况下权值变化的表格。在训练期间,权值向量位置移动的几何解释表示在图4.19(a)的单位圆上。当t很大时,w1的中心位于1∠45°,w2的中心位于1∠-75°。这与事实是一致的。因为头一个象限的聚类是由x1,x3和x5组成,即(x1+x3+x5)/3=1∠45°;而另一个聚类中心为(x2+x4)/2=1∠-75°。图4.19竞争学习结果竞争学习的另一个更通用方法是欧几里德距作为不相同的尺度。这时输出单元j的激励值由下式计算:(4.61)具有最小激励值的输出单元k的权值按下式更新:

wk(t+1)=wk(t)+η(x(t)-wk(t))

(4.62)按式(4.62),获胜单元的权值移向输入x。在这种情况下,数据和权值不必是单位长度。由上可知,竞争学习网络是在线地对输入模式进行聚类。当过程完成时,输入数据被分成相隔的类,使得在同一类中个体之间的相似程度要大于与其他不同类中个体之间的相似程度。相似程度有两种尺度,其一是式(4.59)的内积;其二是式(4.61)的欧氏距。在权值更新的公式中,人们希望动态改变学习速率η,开始时η大些,使数据空间开拓得宽些,以后逐步减少η,使权值更改细些,η改变的公式通常推荐为Kohonen自组织网络也称为Kohonen特征映射或拓朴保持映射,是另一种基于竞争的数据聚类网络。这种网络对输出单元加上了邻域约束,使得输入数据的某些拓朴性质能反映在输出单元的权值上。图4.20表示了一个比较简单的Kohonen自组织网络,有两个输入49个输出。Kohonen特征映射的学习过程与竞争学习网络相仿,即选择一个相似(不相似)测度,获胜单元被认为具有最大(最小)激励。但对于Kohonen特征映射,不仅仅更新获胜单元的权值,而且也要更新围绕获胜单元的邻域的权值。邻域的规模随每次迭代逐渐缓慢地减少。图4.20(b)说明了此过程。训练一个Kohonen自组织网络的步骤如下:

步骤1

选择获胜输出单元为所有权向量和输入向量之间具有最大相似测度(或最小非相似测度)的单元。如果选择欧氏距作为非相似的测度,那么获胜单元c满足以下方程:式中,c是获胜单元下标。图4.20Kohonen自组织网络步骤2

令NBc为相应于围绕胜者c邻域的下标集合,那么胜者和邻域单元的权由下式更新:

Δwi=η(x-wi)i∈NBc

式中η为小的正学习速率。我们用围绕获胜单元c的邻域函数Ωc(i)而不专门定义获胜单元的邻域。譬如,高斯函数可以用作邻域函数,式中i是所有输出单元的下标。为了更好地收敛,学习速率η和邻域规模σ必须随每次迭代而逐渐减少。图4.21和图4.22提供了具有不同输入分布的Kohonen特征映射的仿真结果。输出单元按10×10二维网格排列。在仿真中,η和σ按迭代次数线性地下降。

Kohonen自组织网络的最有名的应用是构造一个神经元的口授打字机,它能把语音转换成由无限字汇中获取的书写文本,准确度达92%~97%。该网络还被用于学习投弹机机臂的运动。图4.21Kohonen自组织网络仿真4.4.2Hopfield网络

Hopfield网络是一个单层反馈网络,其结构表示于图4.23。它具有两种形式:离散时间形式和连续时间形式。

Hopfield网络拥有自联想性质,也是一种回归网络。所有神经元与其他单元互相连接,但不与自己本身相连。Hopfield网络按内容编址存储器方式进行操作,新提供的输入模式可以自动地连接到已存储的合适模式。

现在我们看一下Hopfield网络的工作过程。首先,输入模式施加于网络,网络的输出依次初始化。然后移去初始模式,经过反馈连接,已初始化的输出变成新的、更新过的输入,第一个更新输入形成第一个更新的输出。依次工作,经过反馈当作第二个更新过的输入并产生第二个更新的输出。这个过渡过程一直延续,直到再不产生新的、更新的响应,网络达到其平衡为止。图4.23Hopfield网络考虑图4.23所示网络,每一节点有一个外部输入xj和一个阈值θj,j=1,2,…,n。第j个节点经过乘子权值wij,i=1,2,…,n,i≠j,连到其他各个节点。由于Hopfield网络无自反馈,因此wii=0,i=1,2,…,n。而且要求网络权值是对称的,即wij=wji,i,j=1,2,…,n。在离散Hopfield网络中,每个节点的演化规则为(4.63)式中,sgn(f)为硬限幅函数或阈值函数:k是回归更新次数的上标。必须注意,以上更新的规则必须按异步方式进行。即在给定的时刻,只允许一个节点更新其输出,下一个更新则利用已更新的输出连续地随机选择节点。换句话说,在异步操作下,每个输出节点分别更新,且同时考虑了已经更新的最新值。这个更新规则称为离散Hopfield网络异步随机递归规则。

现在我们举例来说明异步与同步更新的差别。

设有一个3节点的Hopfield网络。w12=w21=-1,w13=w31=1,w23=w32=-1,x1=x2=x3=0,θ1=θ2=θ3=0。设定初始输出向量y(0)=(-111)T,按照异步更新规则,在一个时刻只选一个节点更新。先选第1个节点,则因此y(1)=(111)T,然后选第2个节点因此因此可以容易地推导出状态(1-11)T是网络的一个平衡点。利用不同的初始向量,还可以证明状态(-11-1)T也是一个网络的平衡点,图4.24表示了不同初始状态网络状态转移的情况。图4.24网络状态转移在同步更新规则下,用以上相同的初始输出向量y(0)=

(-111)T,用方程(4.63)我们得再进一步计算可得其计算结果将回到y(0)。因此同步更新会产生多状态的循环而达不到平衡点。从上述例子可知,同步更新规则会使网络收敛到极限环或一个固定点。下面讨论离散Hopfield网络的稳定性质。为此,我们把网络的特性用一个能量函数E来表征:如果网络是稳定的,则上式的能量函数不论在任何节点改变时,必会减少。让我们假定节点i刚刚改变状态,从y(k)i改变到yi(k+1)

,也即其输出从+1变到-1,或者相反。则能量改变ΔE为(4.65)或简化为式中,Δyi=yi(k+1)-yi(k)。对j≠i,且wij=wji和wii=0(权值对称性),y(k+1)j=y(k)j。由式(4.66),如果yi已从y(k)i=-1变化到yi(k+1)=1,即Δyi=2,则neti必为正,ΔE将是负的;同样,如果yi已从yi(k)=+1变化到yi(k+1)=-1,即Δyi=-2,则neti必为负,ΔE仍为负。如果yi无变化,Δyi=yi(k+1)

-y(k)i=0,则ΔE=0,因此

ΔE≤0

因为能量函数式(4.64)具有二次型,而且它在由2n个顶点组成的超立体的n维空间中是有界的,所以E一定有一个绝对极小值,且E的极小值必处于超立体的顶点。因此,能量函数在式(4.63)的更新规则下必达到它的极小值(可能是局部极小值)。这样,从任何初始状态开始,Hopfield在有限步节点更新之后,总会收敛到一个稳定状态,在该状态下能量函数E处于一个局部极小值。在上述讨论中,要求权值是对称的。权值不对称的情况下wij≠wji就成为修正的Hopfield网络,该网络也已证明是稳定的。离散Hopfield网络可以推广成一个连续模型,模型中,时间假定为连续变量,节点具有连续的输出而不是两个状态的二进制输出。因此网络能量函数按时间连续下降。已经证明,连续Hopfield网络具有离散模型的相同性质。连续Hopfield网络可以用电子模拟电路来实现,其硬件实现如图4.25所示。它由n个放大器(节点)组成,每一放大器将其输入ui通过激励函数映射到输出yi。一般激励函数选用Sigmoid函数,即f(λui)=1/(1+

e-λui),λ为增益参数。当λ→∞时,连续模型就变成离散Hopfield网络。每一放大器有输入电导gi和输入电容ci,另外还有输入信号xi。对实际电路而言,外界输入信号向放大器提供了一个恒定的电流。电导wij(1/Rij)把第j节点的输出连接到第i节点的输入。因为所有电阻的值为正,所以逆节点的输出为-yi,用于模拟禁止信号。如果一个特殊节点的输出激励某个其他节点,则从非逆节点输出用信号与该节点连接;如果连接禁止,则从逆输出产生信号。连续Hopfield网络也具有重要的对称权值性质,即wij=wji和wii=0。图4.25连续Hopfield网的硬件实现连续Hopfield网的演化规则可推导如下,考虑图4.25,用克希荷夫电流定则,得式中,,方程式(4.67)充分描述了系统的演变。如果对每一节点给定一个初始值ui(0),那么解微分方程式(4.67)就可知道在时刻t的ui(t)和yi(t)=f(ui(t))。为了估价连续Hopfield网络的稳定性质,就要定义一个连续能量函数,使系统按能量函数的负梯度方向演变,最后收敛到最小值。图4.25的能量函数为(4.68)式中f(-1)(y)=λu是函数f(λu)的逆,上式能量函数E即是略布诺夫函数。为证明这一点,只要对式(4.68)对时间进行微分并假定wij为对称,则(4.69)式中的最终等式来自式(4.67)。因为我们有式中f-1′(y)是f-1(y)的导数。因此式(4.69)变成(4.70)(4.71)f-1(yi)是yi单调增函数,因此f-1′(yi)处处为正。这说明dE/dt为负,故随着系统演进,能量函数必减少。因此,如果E有界,系统必最终达到稳态,使dE/dt=dyi/dt=0。4.4.3双向联想存储器BAM

双向联想存储器(BAM)是一个双层回归异联想存储器,它可以被认为是Hopfield网络的扩展,也是一种内容编址的存储器。它可以进行前向和反向搜索,查找已存储的模式。BAM也有离散和连续两种,这里只介绍离散的BAM。

BAM的结构如图4.26所示,它由二层神经元网络组成。层与层之间也是全连接结构。各节点单元本身可以有自反馈,也可以没有自反馈。图4.26是BAM的一般化结构。与Hopfield网络一样,如果被存储的样本或模式已经确定,那么神经元之间的连接权值就可以预先决定。图4.26BAM网络结构如果要存储的模式为L对向量,我们可以构造连接各节点的权矩阵为

W=Y1XT1+Y2XT2+…+YLXTL

(4.72)

这个方程给出了从X层到Y层连接的权值,例如W23就代表从X层的第3单元连到Y层的第2单元的权值。为了构造从Y层到X层的权矩阵,只要将式(4.72)的W取转置即可。如果X=Y即X层和Y层节点数目一样,就成为自联想存储器。

一旦构成了权矩阵,BAM就可以用来回忆信息。如果我们事先只知道部分的期望信息,或信息受噪声污染,BAM能够使信息完全恢复。BAM的信息处理过程如下:

(1)将一对初始向量(X0,Y0)施加于BAM的各节点;

(2)信息从X层传播到Y层,并更新Y层的值;

(3)将更新后的Y层信息反传到X层,并更新X层各单元的值;

(4)重复步骤(2)和步骤(3),直到每层中各单元的值无进一步变化。

这个算法给出了BAM双方向的实质,所谓输入和输出在BAM中取决于传播的方向。例如从Y到X,Y就是网络的输入,X是输出;反之,则X是输入,Y是输出。从数学上来看,BAM各单元所进行的处理与前面BP的节点相同,即各单元要计算输入和权值的乘积和,确定总的输入值。在Y层

netY=WX

(4.73)

式中netY是Y层总输入向量,各单元的输入可写成(4.74)在X层(4.75)(4.76)n和m分别为X和Y层的维数,各单元的输出值决定于总的输入值和该层当前的输出值。在(t+1)时刻,yi的新值yi(t+1)与yi(t)的关系如下:(4.77)同样xi(t+1)与xi(t)的关系为现在举例来说明BAM的处理过程。令按(4.72)我们可以计算得到权矩阵:第一次试验,我们选一个与X1的汉明距为1的初始向量

X0=(-1,-1,-1,1,-1,1,1,-1,-1,1)T,这个情况可以代表输入向量有噪声,初始向量Y0可选择训练向量之一Y2,即

Y0=(1,1,1,1,-1,-1)T。(注意,在实际问题中,我们并不预先知道输出向量,如果需要,可以使用一个随机二极型向量)。首先,从X向Y传播,到Y的总输入为:netY=(4-12-12-12-412)T,新的Y向量YNEW=(1,-1,-1,-1,-1,1)T,它也是训练向量之一。反向传播至X层,得到XNEW=(1,-1,-1,1,-1,1,1,-1,-1,1)T。进一步传播再不发生变化,所以处理结束,BAM成功地回忆起第一个训练样本。再举一个例子,我们选择以下的初始向量:

X0=(-1,1,1,-1,1,1,1,-1,1,-1)T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论