《hopfield神经网络及其应用教学ppt课件.ppt》由会员分享,可在线阅读,更多相关《hopfield神经网络及其应用教学ppt课件.ppt(64页珍藏版)》请在三一办公上搜索。
1、Hopfield网络及其应用,郑洪英重庆大学信息安全系,2022/11/16,2,一、反馈网络二、Hopfield网络简介三、DHNN网络四、 TSP问题求解五、内容小结,内容安排,2022/11/16,3,1.1 反馈网络简介1.2 网络稳定性,一、反馈网络,2022/11/16,4,1.1 反馈网络简介,反馈网络(Recurrent Network),又称自联想记忆网络其目的是为了设计一个网络,储存一组平衡点,使得当给网络一组初始值时,网络通过自行运行而最终收敛到这个设计的平衡点上。 反馈网络能表现出非线性动力学系统动态特性网络系统具有若干个稳定状态。当网络从某一初始状态开始运动,网络系统
2、总可以收敛到某一个稳定的平衡状态;系统稳定的平衡状态可以通过设计网络的权值而被存储到网络中,2022/11/16,5,前馈型与反馈型神经网络的比较,(1) 前馈型神经网络只表达输入输出之间的映射关系,实现非线性映射;反馈型神经网络考虑输入输出之间在时间上的延迟,需要用动态方程来描述,反馈型神经网络是一个非线性动力学系统。 (2) 前馈型神经网络学习训练的目的是快速收敛,一般用误差函数来判定其收敛程度;反馈型神经网络的学习目的是快速寻找到稳定点,一般用能量函数来判别是否趋于稳定点。 (3) 两者都有局部极小问题。,2022/11/16,6,1.1 反馈网络简介,反馈网络分类如果激活函数f()是一
3、个二值型的函数,即aisgn(ni),il, 2, r,则称此网络为离散型反馈网络;如果f()为一个连续单调上升的有界函数,这类网络被称为连续型反馈网络,2022/11/16,7,该网络为单层全反馈网络,其中的每个神经元的输出都是与其他神经元的输入相连的。所以其输入数目与输出层神经元的数目是相等的,有rs。,2022/11/16,8,2022/11/16,9,2022/11/16,10,1.2 网络稳定性,状态轨迹对于一个由r个神经元组成的反馈网络,在某一时刻t,分别用N(t)和A(t)来表示加权和矢量和输出矢量。在下一时刻t+1,可得到N(t+1),而N(t+1)又引起A(t+1)的变化,这
4、种反馈演化的过程,使网络状态随时间发生变化。在一个r维状态空间上,可以用一条轨迹来描述状态变化情况。从初始值A(t0)出发,A(t0+t)A(t0+2t)A(t0+mt),这些在空间上的点组成的确定轨迹,是演化过程中所有可能状态的集合,我们称这个状态空间为相空间,2022/11/16,11,1.2 网络稳定性,状态轨迹离散与连续轨迹在一个r维状态空间上,可以用一条轨迹来描述状态变化情况.,2022/11/16,12,1.2 网络稳定性,状态轨迹分类:对于不同的连接权值wij和输入Pj(i, j=1, 2, r),反馈网络可能出现不同性质的状态轨迹轨迹为稳定点轨迹为极限环轨迹为混沌现象轨迹发散,
5、2022/11/16,13,1.2 网络稳定性,稳定轨迹反馈网络从任一初始态P(0)开始运动,若存在某一有限时刻t,从t以后的网络状态不再发生变化(P(t+t)= P(t),t0)则称网络是稳定的 处于稳定时的网络状态叫做稳定状态,又称为定吸引子,2022/11/16,14,1.2 网络稳定性,稳定点分类在一个反馈网络中,存在很多稳定点稳定点收敛域渐近稳定点:在稳定点Ae周围的A()区域内,从任一个初始状态A(t0)出发,当t时都收敛于Ae,则称Ae为渐近稳定点不稳定平衡点Aen:在某些特定的轨迹演化过程中,网络能够到达稳定点Aen,但对其它方向上任意小的区域A(),不管A()取多么小,其轨迹
6、在时间t以后总是偏离Aen; 期望解网络的解:如果网络最后稳定到设计人员期望的稳定点,且该稳定点又是渐近稳定点,那么这个点称为网络的解; 网络的伪稳定点:网络最终稳定到一个渐近稳定点上,但这个稳定点不是网络设计所要求的解,2022/11/16,15,1.2 网络稳定性,状态轨迹为极限环在某些参数的情况下,状态A(t)的轨迹是一个圆,或一个环状态A(t)沿着环重复旋转,永不停止,此时的输出A(t)也出现周期变化(即出现振荡)如果在r种状态下循环变化,称其极限环为r对于离散反馈网络,轨迹变化可能在两种状态下来回跳动,其极限环为2,2022/11/16,16,1.2 网络稳定性,状态轨迹为混沌如果状
7、态A(t)的轨迹在某个确定的范围内运动,但既不重复,又不能停下来状态变化为无穷多个,而轨迹也不能发散到无穷远,这种现象称为混沌(chaos)出现混沌的情况下,系统输出变化为无穷多个,并且随时间推移不能趋向稳定,但又不发散,2022/11/16,17,1.2 网络稳定性,状态轨迹发散状态A(t)的轨迹随时间一直延伸到无穷远。此时状态发散,系统的输出也发散一般非线性人工神经网络中发散现象是不会发生的.,2022/11/16,18,1.2网络稳定性,目前的反馈神经网络是利用稳定的特定轨迹来解决某些问题如果视系统的稳定点为一个记忆,则从初始状态朝此稳定点移动的过程即为寻找该记忆的过程状态的初始值可以认
8、为是给定的有关该记忆的部分信息,状态A(t)移动的过程,是从部分信息去寻找全部信息,这就是联想记忆的过程将系统的稳定点考虑为一个能量函数的极小点。在状态空间中,从初始状态A(t0) ,最后到达A*。若A*为稳定点,则可以看作是A*把A(t0)吸引了过去,在A(t0)时能量比较大,而吸引到A*时能量已为极小了,2022/11/16,19,1.2网络稳定性,考虑具体应用,可以将能量的极小点作为一个优化目标函数的极小点,把状态变化的过程看成是优化某一个目标函数的过程因此反馈网络的状态移动的过程实际上是一种计算联想记忆或优化的过程。它的解并不需要真的去计算,只需要形成一类反馈神经网络,适当地设计网络权
9、值wij,使其初始输入A(t0)向稳定吸引子状态移动就可以达到目的,2022/11/16,20,二、Hopfield网络简介,2.1 网络模型2.2 DHNN2.3 CHNN2.4 联想记忆与优化计算,2022/11/16,21,概述,Hopfield网络是神经网络发展历史上的一个重要的里程碑。由美国加州理工学院物理学家J.J.Hopfield教授于1982年提出,是一种单层反馈神经网络。,Hopfield网络是一种由非线性元件构成的反馈系统,其稳定状态的分析比前向神经网络要复杂得多。1984年,Hopfield设计并研制了网络模型的电路,并成功地解决了旅行商(TSP)计算难题(优化问题)。,
10、Hopfield网络分为离散型和连续型两种网络模型,分别记作DHNN (Discrete Hopfield Neural Network) 和CHNN (Continues Hopfield Neural Network) 。,Hello,Im John Hopfield,2022/11/16,22,反馈神经网络由于其输出端有反馈到其输入端;所以,Hopfield网络在输入的激励下,会产生不断的状态变化。当有输入之后,可以求出Hopfield的输出,这个输出反馈到输入从而产生新的输出,这个反馈过程一直进行下去。如果Hopfield网络是一个能收敛的稳定网络,则这个反馈与迭代的计算过程所产生的变
11、化越来越小,一旦到达了稳定平衡状态;那么Hopfield网络就会输出一个稳定的恒值。,2022/11/16,23,2.1 网络模型,分类离散Hopfield网络(DHNN)连续Hopfield网络(CHNN),DHNN中的激活函数 CHNN中的激活函数,2022/11/16,24,2.1 网络模型,2022/11/16,25,2.2 DHNN,Hopfield最早提出的网络是二值神经网络,神经元的输出只取1和0这两个值,所以,也称离散Hopfield神经网络。在离散Hopfield网络中,所采用的神经元是二值神经元;故而,所输出的离散值1和0分别表示神经元处于激活和抑制状态。,2022/11/
12、16,26,2.2 DHNN,对于一个离散的Hopfield网络,其网络状态是输出神经元信息的集合。对于一个输出层是n个神经元的网络,则其t时刻的状态为一个n维向量: Aa1,a2,anT 故而,网络状态有2n个状态;因为Aj(t)(j1n)可以取值为1或0;故n维向量A(t)有2n种状态,即是网络状态。,2022/11/16,27,2.2 DHNN,对于三个神经元的离散Hopfield网络,它的输出层就是三位二进制数;每一个三位二进制数就是一种网络状态,从而共有8个网络状态。这些网络状态如图所示。在图中,立方体的每一个顶角表示一种网络状态。同理,对于n个神经元的输出层,它有2n个网络状态,也
13、和一个n维超立方体的顶角相对应。,2022/11/16,28,2.2 DHNN,如果Hopfield网络是一个稳定网络,那么在网络的输入端加入一个输入向量,则网络的状态会产生变化,也就是从超立方体的一个顶角转移向另一个顶角,并且最终稳定于一个特定的顶角。,2022/11/16,29,2.2 DHNN,DHNN取b0,wii0权矩阵中有wijwji,2022/11/16,30,2.2 DHNN,DHNN网络结构可以用一个加权向量图表示,2022/11/16,31,稳定状态若网络从某一时刻以后,状态不再发生变化,则称网络处于稳定状态网络为对称连接,即;神经元自身无连接 能量函数在网络运行中不断降低
14、,最后达到稳定,2022/11/16,32,网络中神经元能量函数变化量,Hopfield网络状态向着能量函数减小的方向演化。由于能量函数有界,所以系统必然会趋于稳定状态 。,2022/11/16,33,2.3 CHNN,将霍普菲尔德网络推广到输入和输出都取连续数值的情形网络的基本结构不变,状态输出方程形式上也相同。则网络的状态转移方程可写为,2022/11/16,34,2.3 CHNN,神经元的激活函数f为S型的函数(或线性饱和函数),2022/11/16,35,2.3 CHNN,神经元的激活函数f为S型的函数(或线性饱和函数),2022/11/16,36,2.4 联想记忆与优化计算,联想记忆
15、问题稳定状态已知并且通过学习和设计算法寻求合适的权值矩阵将稳定状态存储到网络中优化计算权值矩阵W已知,目的为寻找具有最小能量E的稳定状态主要工作为设计相应的W和能量函数公式,2022/11/16,37,三、DHNN,3.1 神经元状态更新方式3.2 网络学习3.3 网络记忆容量3.4 权值设计,2022/11/16,38,3.1 状态更新,由-1变为1;由1变为-1;状态保持不变串行异步方式任意时刻随机地或确定性地选择网络中的一个神经元进行状态更新,而其余神经元的状态保持不变,2022/11/16,39,3.1 状态更新,串行异步方式任一时刻,网络中只有一个神经元被选择进行状态更新或保持,所以
16、异步状态更新的网络从某一初态开始需经过多次更新状态后才可以达到某种稳态。实现上容易,每个神经元有自己的状态更新时刻,不需要同步机制;异步状态更新更接近实际的生物神经系统的表现并行同步方式任意时刻网络中部分神经元(比如同一层的神经元)的状态同时更新。如果任意时刻网络中全部神经元同时进行状态更新,那么称之为全并行同步方式,2022/11/16,40,3.2 网络学习,联想记忆联想记忆功能是DHNN的一个重要应用范围。反馈网络实现联想记忆必须具备的两个基本条件网络能收敛到稳定的平衡状态,并以其作为样本的记忆信息;具有回忆能力,能够从某一残缺的信息回忆起所属的完整的记忆信息学习目的具有q个不同的输入样
17、本组PrqP1, P2 Pq通过学习方式调节计算有限的权值矩阵W以每一组输入样本Pk,k=1,2,q 作为系统的初始值经过网络工作运行后,系统能收敛到各自输入样本矢量本身,2022/11/16,41,3.2 网络学习,DHNN中运用海布调节规则(hebb)海布法则是一种无指导的死记式学习算法当神经元输入与输出节点的状态相同(即同时兴奋或抑制)时,从第j个到第i个神经元之间的连接强度则增强,否则减弱当k1时,对于第i个神经元,由海布学习规则可得网络权值对输入矢量的学习关系式为其中,0,i1,2,r;j=1,2,r。在实际学习规则的运用中,一般取1或1/r,2022/11/16,42,3.2 网络
18、学习,当k由1增加到2,直至q时,是在原有己设计出的权值的基础上,增加一个新量pjkpik,k2, q对网络所有输入样本记忆权值的设计公式为其中,0,i1,2,r;j=1,2,r。在实际学习规则的运用中,一般取1或1/r,2022/11/16,43,3.2 网络学习,向量形式表示1时神经网络工具箱中采用海布公式求解网络权矩阵变化的函数为learnh.m和learnhd.m。后者为带有衰减学习速率的函数dW1earnh(P,A,lr)dWlearnhd(W,P,A,lr,dr);对于简单的情况,lr可以选择1;对于复杂的应用,可取lr0.10.5,drlr3,2022/11/16,44,3.2
19、网络学习,简单验证q1, l求出的权值wij是否能够保证aipi? 对于第i个输出节点,有,2022/11/16,45,3.3 记忆容量,设计DHNN网络的目的,是希望通过所设计的权值矩阵W储存多个期望模式当网络只记忆一个稳定模式时,该模式肯定被网络准确无误地记忆住,即所设计的W值一定能够满足正比于输入和输出矢量的乘积关系但当需要记忆的模式增多时,网络记忆可能出现问题权值移动交叉干扰,2022/11/16,46,3.3 记忆容量,在网络的学习过程中,网络对记忆样本输入T1,T2,Tq的权值学习记忆实际上是逐个实现的。即对权值W,有程序:W=0for k=l qW=W+Tk(Tk)T-Iend,
20、2022/11/16,47,3.3 记忆容量,由此过程可知:当k=1时,有 此时,网络准确的记住了样本T1,2022/11/16,48,3.3 记忆容量,权值移动当k2时,为了记忆样本T2,需要在记忆了样本Tl的权值上加上对样本T2的记忆项T2(T2)T-I,将权值在原来值的基础上产生了移动由于在学习样本T2时,权矩阵W是在已学习了T1的基础上进行修正的,W起始值不再为零,所以由此调整得出的新的W值,对记忆样本T2来说,也未必对所有的s个输出同时满足符号函数的条件,即难以保证网络对T2的精确的记忆,2022/11/16,49,3.3 记忆容量,权值移动随着学习样本数k的增加,权值移动现象将进一
21、步发生,当学习了第q个样本Tq后,权值又在前q-1个样本修正的基础上产生了移动,这也是网络在精确的学习了第一个样本后的第q-1次移动对已记忆的样本发生遗忘,这种现象被称为“疲劳”,2022/11/16,50,3.3 记忆容量,在此情况下,所求出的新的W为:wij= tj1ti1+ tj2ti2,对于样本T1来说,网络的输出为:此输出有可能不再对所有的s个输出均满足加权输入和与输出符号一致的条件。网络有可能部分地遗忘了以前已记忆住的模式。,2022/11/16,51,3.3 记忆容量,交叉干扰设输入矢量P维数为rq,取=1/r。Pk-1,1,所以pjk*pjk1。当网络某个矢量Pl,l1,q,作
22、为网络的输入矢量时,可得网络的加权输入和nil为上式右边中第一项为期望记忆的样本,而第二项则是当网络学习多个样本时,在回忆阶段即验证该记忆样本时,所产生的相互干扰,称为交叉干扰项,2022/11/16,52,3.3 记忆容量,有效容量从对网络的记忆容量产生影响的权值移动和交叉干扰上看,采用海布学习法则对网络记忆样本的数量是有限制的通过上面的分析已经很清楚地得知,当交叉干扰项值大于正确记忆值时,将产生错误输出在什么情况下,能够保证记忆住所有样本?当所期望记忆的样本是两两正交时,能够准确得到一个可记忆数量的上限值,2022/11/16,53,3.3 记忆容量,有效容量的上界正交特性神经元为二值输出
23、的情况下,即Pj-1,1,当两个r维样本矢量的各个分量中,有r/2是相同,r/2是相反。对于任意一个数l,l1,q,有Pl(Pk)T0,lk;而有Pl(Pl)Tr,lk,2022/11/16,54,3.3 记忆容量,用外积和公式所得到的权矩阵进行迭代计算,在输入样本Pk,k=1,2, q中任取Pl为初始输入,求网络加权输出和Nl,只要满足,rq,则有sgn(Nl)Pl保证Pl为网络的稳定解,2022/11/16,55,3.4 权值设计的其它方法,学习规则:通过计算每个神经元节点的实际激活值A(t),与期望状态T(t)进行比较,若不满足要求,则将二者的误差的一部分作为调整量,若满足要求,则相应的
24、权值保持不变,2022/11/16,56,3.4 权值设计的其它方法,伪逆法对于输入样本PP1 P2 Pq,设网络输出可以写成一个与输入样本相对应的矩阵A,输入和输出之间可用一个权矩阵W来映射,即有:W*PN,Asgn(N),由此可得WN*P* 其中P*为P的伪逆,有P*(PTP)-1PT如果样本之间是线性无关的,则PTP满秩,其逆存在,则可求出权矩阵W但当记忆样本之间是线性相关的,由海布法所设计出的网络存在的问题,伪逆法也解决不了,甚至无法求解,相比之下,由于存在求逆等运算,伪逆法较为繁琐,而海布法则要容易求得多,2022/11/16,57,四、 TSP问题求解,所谓TSP(Travelin
25、g Salesman Problem)问题,即“旅行商问题”是一个十分有名的难以求解的优化问题,其要求很简单:在n个城市的集合中,找出一条经过每个城市各一次,最终回到起点的最短路径问题描述如果已知城市A,B,C,D,之间的距离为dAB,dBC,dCD;那么总的距离ddAB+dBC+dCD+,对于这种动态规化问题,要去求其min(d)的解对于n个城市的全排列共有n!种,而TSP并没有限定路径的方向,即为全组合,所以对于固定的城市数n的条件下,其路径总数Sn为Snn!2n (n4),2022/11/16,58,2022/11/16,59,4.3 TSP问题,TSP的解是若干城市的有序排列,任何一个
26、城市在最终路径上的位置可用一个n维的0、1矢量表示,对于所有n个城市,则需要一个nn维矩阵。以5个城市为例,一种可能的排列矩阵为,2022/11/16,60,4.3 TSP问题,若用dxy表示从城市x到城市y的距离,则上面路径的总长度为: dxydCA+dAD+dDB+dBE+dECTSP的最优解是求长度dxy为最短的一条有效的路径 采用连续时间的霍普菲尔德网络模型来求解TSP,开辟了一条解决这一问题的新途径。其基本思想是把TSP映射到CHNN上,通过网络状态的动态演化逐步趋向稳态而自动地搜索出优化解,2022/11/16,61,4.3 TSP问题,目标函数f(V)(旅行路线长度)约束条件g(
27、V) 约束条件要保证关联矩阵的每一行每一列中只有一个值为1,其他值均为零,用三项表示为总的能量函数E,2022/11/16,62,Hopfield 神经网络的MATLAB实现,例2-8 设印刷体数字由10 10点阵构成,就是将数字分成很多小方块,每个方块就对应数字的一部分,构成数字本部分的方块用1表示,空白处用-1表示。试设计一个Hopfield网络,能够正确识别印刷体的数字。,由点阵构成的数字1,由点阵构成的数字2,2022/11/16,63,选择离散Hopfield 神经网络, 设网络由10 个初始稳态值1、2 、3 、4、5、6、7、8、9 和0 构成, 即可以记忆10 种数字。每一个稳态由10* 10 的矩阵构成, 模拟阿拉伯数字点阵, 其中,有点处用1 表示, 空白处用- 1 表示。,2022/11/16,64,例2-8程序,