《人工神经网络6HOPFIELD神经网络.ppt》由会员分享,可在线阅读,更多相关《人工神经网络6HOPFIELD神经网络.ppt(86页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、武汉科技大学1人工神经网络(Artifical Neural Network)张凯 副教授武汉科技大学 计算机学院2要点简介要点简介1.研究背景研究背景2.离散离散Hopfield神经网络神经网络3.连续连续Hopfield神经网络神经网络4.Hopfield网络求解网络求解TSP问题问题研究背景研究背景前几章介绍的神经网络模型属于前向神经网络,从学习的观点上看,它们是强有力的学习系统,结构简单,易于编程。从系统的观点看,它们属于一种静态的非线性映射,通过简单非线性处理单元的复合映射可获得复杂的非线性处理能力,但它们因缺乏反馈,所以并不是一个强有力的动力学系统。2022/11/183研究背景研
2、究背景Hopfield网络是神经网络发展历史上的一个重要的里程碑。由美国加州理工学院物理学家J.Hopfield教授于1982年提出,是一种单层反馈神经网络。2022/11/184研究背景研究背景1985年,和建立了相互连接型的神经网络模型,并用它成功地探讨了旅行商问题(TSP)的求解方法。2022/11/185研究背景研究背景Hopfield模型属于反馈型神经网络,从计算的角度上讲,它具有很强的计算能力。这样的系统着重关心的是系统的稳定性问题。稳定性是这类具有联想记忆功能神经网络模型的核心,学习记忆的过程就是系统向稳定状态发展的过程。Hopfield网络可用于解决联想记忆和约束优化问题的求解
3、。2022/11/186研究背景研究背景反馈型神经网络作为非线性动力学系统,可表现出丰富多样的动态特性,如稳定性、极限环、奇怪吸引子(混沌)等。这些特性是神经网络引起研究人员极大兴趣的原因之一。研究表明,由简单非线性神经元互连而成的反馈动力学神经网络系统具有两个重要特征:1.系统有若干个稳定状态,如果从某一个初始状态开始运动,系统总可以进入其中某一个稳定状态;2.系统的稳定状态可以通过改变各个神经元间的连接权值而得到。研究背景研究背景Hopfield神经网络设计与应用的关键是对其动力学特性的正确理解:网络的稳定性是其重要性质,而能量函数是判定网络稳定性的基本概念。Hopfield神经网络神经网
4、络Hopfield网络分为离散型和连续型两种网络模型,分别记作DHNN(DiscreteHopfieldNeuralNetwork)和CHNN(ContinuesHopfieldNeuralNetwork)。2022/11/1892022/11/1810网络模型表示法一离散Hopfield神经网络结构图12(状态)(阈值)(连接权值)离散离散Hopfield 神经网络神经网络2022/11/1811网络模型表示法二离散离散Hopfield 神经网络神经网络网络中每个神经元的输出都与其它神经元的输入相连2022/11/1812反馈网络结构反馈网络结构(单层全反馈网单层全反馈网)反馈网络的特性反馈
5、网络的特性网络输出不仅依赖网络参数和输入,还是时间的函数。对不同的输入和参数,网络的输出(或状态)可能 出现如下几种情况:发散:网络状态的轨迹随时间一直延伸到无穷远;混沌:网络状态随时间推移不能稳定,但又不发散,而是在某个确定范围内变化,状态有无穷多个;振荡:网络状态随时间呈现周期(环状)变化,永远不 会停止;收敛:经过一段时间后,网络状态停止在一点上,不再 变化,称该点为网络的平衡点反馈网络的特性反馈网络的特性平衡点可分为:渐近稳定平衡点:在该平衡点周围区域内,从任意一初始点出发,当时间趋向无穷时都收敛到这个点。不稳定平衡点:在某些特定的轨迹演化过程中,能够使网络达到该稳定点,但对该点其它方
6、向上任一个无论多么小的区域,其轨迹在某个时刻以后总是偏离该点。网络的稳定点解:网络最后是稳定到设计所要求的平衡点上,而且平衡点又是渐近稳定平衡点。网络的伪稳定点:网络最后是稳定到一个稳定平衡点上,但这个稳定平衡点不是设计所要求的解。反馈网络的作用反馈网络的作用反馈网络是利用渐近稳定平衡点来解决某些问题联想记忆:把渐近稳定平衡点视为一个记忆,从初始点朝这个渐近稳定平衡点流动的过程就是寻找该记忆的过程。初始点可认为是给定的有关记忆的部分信息,这时就是从部分信息去寻找全部信息的联想记忆过程。优化计算:把渐近稳定平衡点视为某能量函数的极小点,从初始点到达稳定点,可看作是稳定点把初始点吸引了过来,在初始
7、点时,能量比较大,而吸引到稳定点时能量比较小,渐近稳定平衡点就可以作为一个优化目标函数的极小点。反馈网络研究的内容反馈网络研究的内容网络稳定性:即研究在什么条件下,网络不会出现发散、振荡和混沌现象。网络稳定点:非线性的网络可能有很多个稳定点,如何设计权使其中的某些稳定点是所要求的解。对于用作联想记忆的网络,希望稳定点都是一个记忆,那么记忆容量就与稳定点的数目有关,若要求记忆容量大,稳定点的数目也就要大。但稳定点的数目增加可能会引起吸引域的减少,从而使其联想功能减弱。对于用作优化计算的网络,由于目标函数往往要求只有一个全局最小,因而希望稳定点(局部极小点)越少越好。反馈网络研究的内容反馈网络研究
8、的内容吸引域的设计:希望解的稳定点有尽可能大吸引域2022/11/1818网络模型表示法一离散Hopfield神经网络结构图12(状态)(阈值)(连接权值)离散离散Hopfield 神经网络神经网络2022/11/1819 注:注:或或连接权连接权阈值阈值-1输入输出关系:输入输出关系:离散离散Hopfield 神经网络神经网络离散离散Hopfield 神经网络神经网络激励函数2022/11/1820离散离散Hopfield 神经网络神经网络相关参数说明任意神经元i与j间的突触权值wij为,神经元之间连接是对称的,神经元自身无连接.每个神经元都同其他的神经元相连,其输出信号经过其他神经元又有可
9、能反馈给自己设Hopfield网络中有n个神经元,其中任意神经元的输入用xi(t)表示,输出xi(t+1)用表示,它们都是时间的函数,其中xi(t)也称为神经元在时刻t的状态。离散离散Hopfield 神经网络神经网络离散Hopfield网络的状态离散型Hopfield网络的状态由n个神经元的状态集合构成。因此,在任何一个给定的时刻t,离散型Hopfield网络的的状态可以表示为2022/11/1822离散离散Hopfield 神经网络神经网络离散Hopfield网络的运行规则(1)串行(异步)工作方式在任时刻,只有某神经元(随机的或确定的选择)依上式变化,而其他神经元的状态不变。(2)并行(
10、同步)工作方式在任一时刻,部分神经元或全部神经元的状态同时改变。2022/11/1823工作方式异步(串行)方式:同步(并行)方式:离散离散Hopfield 神经网络神经网络串行(异步)工作方式运行步骤第一步对网络进行初始化;第二步从网络中随机选取一个神经元i;第三步求出该神经元i 的输出;第四步求出该神经元经激活函数处理后的输出,此时网络中的其他神经元的输出保持不变;第五步判断网络是否达到稳定状态,若达到稳定状态或满足给定条件则结束;否则转到第二步继续运行。2022/11/1825离散离散Hopfield 神经网络神经网络例:一个3个节点离散型Hopfield神经网络的初始状态X(0)=(-
11、1,-1,-1),网络连接权值w和各个节点的阈值分别如下,试求解网络稳定状态。2022/11/1826离散离散Hopfield 神经网络神经网络2022/11/1827异步(串行)方式:离散离散Hopfield 神经网络神经网络X(0)=(x1,x2,x3)X(0)=(-1,-1,-1)x1(1)=sgn1(-1)+2(-1)-(-5)=sgn2=1X(1)=(1,-1,-1)离散离散Hopfield 神经网络神经网络X(1)=(x1,x2,x3)X(1)=(1,-1,-1)x2(2)=sgn11+(-3)(-1)-(0)=sgn4=1X(2)=(1,1,-1)离散离散Hopfield 神经网
12、络神经网络X(2)=(x1,x2,x3)X(2)=(1,1,-1)x3(3)=sgn21+(-3)1-3=sgn-4=-1X(3)=(1,1,-1)离散离散Hopfield 神经网络神经网络X(3)=(x1,x2,x3)X(3)=(1,1,-1)x1(4)=sgn11+2(-1)-5=sgn4=1X(4)=(1,1,-1)离散离散Hopfield 神经网络神经网络X(4)=(x1,x2,x3)X(4)=(1,1,-1)x2(5)=sgn11+2(-1)-5=sgn4=1X(5)=(1,1,-1)离散离散Hopfield 神经网络神经网络X(5)=(x1,x2,x3)X(5)=(1,1,-1)x
13、3(6)=sgn21+(-3)1-3=sgn-4=-1X(6)=(1,1,-1)离散离散Hopfield 神经网络神经网络能量函数(Lyapunovfunction)因因Hopfield并无训练目标值,因此无法以并无训练目标值,因此无法以MSE、RMSE或误判率来衡量网络误差大小或误判率来衡量网络误差大小因此,以能量函数进行误差的衡量2022/11/1834离散离散Hopfield 网络的能量函数网络的能量函数能量函数(Lyapunovfunction)用以判断是否会收敛能量函数趋近于0,表示会收敛2022/11/1835离散离散Hopfield 网络的能量函数网络的能量函数简化能量函数当各处
14、理单元的状态变量值所构成向量与训练范例特征向量之一相似或相同时,能量函数倾向较低的值2022/11/1836离散离散Hopfield 网络的能量函数网络的能量函数离散型Hopfield网络的能量函数网络中任意一个神经元 的能量为2022/11/1837离散离散Hopfield 网络的能量函数网络的能量函数稳定状态若网络从某一时刻以后,状态不再发生变化,则称网络处于稳定状态网络为对称连接,即;神经元自身无连接能量函数在网络运行中不断降低,最后达到稳定2022/11/1838离散离散Hopfield 网络的能量函数网络的能量函数网络中神经元能量函数变化量2022/11/1839 Hopfield网
15、络状态向着能量函数减小的方向演化。由于能量函数有界,所以系统必然会趋于稳定状态。离散离散Hopfield 网络的能量函数网络的能量函数离散型离散型Hopfield网络权值设计网络权值设计设计原则:为保证异步方式工作时网络收敛,权矩阵应为对称阵;为保证同步方式工作时网络收敛,权矩阵应为非负定对称阵;保证给定的样本是网络的吸引子,并且要有尽可能大的吸引域。离散型离散型Hopfield网络权值设计网络权值设计外积法当所需要的吸引子较多时,可采用Hebb规则的外积法。设给定m个要记忆样本设样本两两正交,且nm,则权值矩阵为记忆样本的外积和为例:一个3个节点离散型Hopfield神经网络的3个学习模式为
16、X 1=(-1,-1,-1),X 2=(-1,-1,-1),X 3=(-1,-1,-1),试计算其连接矩阵并验证其联想记忆能力。离散型离散型Hopfield网络权值设计网络权值设计2022/11/1843离散型离散型Hopfield网络权值设计网络权值设计2022/11/18441-1-3离散型离散型Hopfield网络权值设计网络权值设计定理:若DHNN网络的规模为n,且权矩阵对角元素为0,则该网络的信息容量上界为n。定理:若m个记忆模式aj=(a1,an),j=1,m,两两正交,nm,且权矩阵W由外积法得到,则m个模式都是网络(W,0)的吸引子。Hopfield的统计实验结论:DHNN的记
17、忆容量为0.13n0.15n。DHNN的存储容量的存储容量 DHNN的存储容量的存储容量 连续连续Hopfield 神经网络神经网络CHNN是在DHNN的基础上提出的,它的原理和DHNN相似。由于CHNN是以模拟量作为网络的输入输出量,各神经元采用并行方式工作,所以它在信息处理的并行性、联想性、实时性、分布存储、协同性等方面比DHNN更接近于生物神经网络。连续连续Hopfield 神经网络神经网络连续连续Hopfield网络模型网络模型连续连续Hopfield 神经网络神经网络连续连续Hopfield 网络能量函数网络能量函数令整理得连续连续Hopfield 网络能量函数网络能量函数若令若令电
18、导(electricalconductance)是表示一个物体或电路,从某一点到另外一点,传输电流能力强弱的一种测量值,与物体的电导率和几何形状和尺寸有关。连续连续Hopfield 网络能量函数网络能量函数若令若令则则连续连续Hopfield 网络能量函数网络能量函数连续连续Hopfield 网络能量函数网络能量函数连续连续Hopfield 网络能量函数网络能量函数稳定性分析连续连续Hopfield 网络能量函数网络能量函数稳定性分析连续连续Hopfield 网络能量函数网络能量函数稳定性分析E是李雅谱诺夫函数(Lyapunov),f(x)为sigmoid函数.我们对sigmoid函数做个小的
19、修改,函数特性不变连续连续Hopfield 网络能量函数网络能量函数的反函数可以写作能量函数的最后一项可以写为连续连续Hopfield 网络能量函数网络能量函数当很大时,最后一项可以忽略不计因此能量函数可以写作连续连续Hopfield 网络能量函数网络能量函数连续连续Hopfield 网络能量函数网络能量函数CHNN的能量函数不是物理意义上的能量函数,而是在表达形式上与物理意义的能量函数一致,表征网络状态的变化趋势。定理:若作用函数是单调递增且连续的,则能量函数E是单调递减且有界的。连续连续Hopfield 网络能量函数网络能量函数CHNN用非线性微分方程描述,网络的稳定性通过构造其能量函数(
20、又称李雅谱诺夫函数),并用李雅谱诺夫第二稳定性定理进行判断。(1)李雅谱诺夫函数并不唯一;(2)若找不到网络的李雅谱诺夫函数,不能证明网络不稳定;(3)目前没有统一的找李雅谱诺夫函数的方法(4)用能量函数的方法研究网络的稳定性,在数学上欠严谨。连续连续Hopfield 网络能量函数网络能量函数如果把一个最优化问题的目标函数转换成网络的能量函数,把问题的变量对应于网络的状态,那么Hopfield神经网络就能够用于解决优化组合问题。应用Hopfield神经网络来解决优化计算问题的一般步骤为:(1)分析问题:网络输出与问题的解相对应;(2)构造网络能量函数:使其最小值对应问题最佳解(3)设计网络结构
21、:由能量函数和网络稳定条件设计网络参数,得到动力学方程;(4)硬件实现或软件模拟。连续连续Hopfield 网络应用网络应用TravelingSalesmanProblem一个旅行推销员要到N个城市做生意,试找出一条从某城市出发,连贯这些城市,又回到原出发城市的最短路径(每个城市只能走一次)ABCDEFABCDEFABCDEFTravelingSalesmanProblem不考虑方向性和周期性,在给定n的条件下,可能存在的闭合路径数目为1/2(n-1)!。随着n的增大,计算量急剧增大,会发生所谓的“组合爆炸”问题。连续连续Hopfield 网络应用网络应用城市数路径数城市数路径数31121.9
22、95810743132.3950108512143.1135109660154.358910107360166.5384101182520171.04611013920160181.7784101410181440193.20121015111814400206.08231016连续连续Hopfield 网络应用网络应用vxiv:状态变量x:城市i:拜访的顺序 次序城市1234A0100B1000C0001D0010表示城市x是推销员所到的第i 站表示城市x不是推销员所到的第i 站状态矩阵连续连续Hopfield 网络应用网络应用状态要求设计限制每个城市只去一次每次只去一个城市N个城市都要到A
23、BCDEF起始点终点找出一条从某城市出发,连贯 这些城市,又回到原出发点的 最短路径连续连续Hopfield 网络应用网络应用状态表现对于n个城市的旅行推销员的一个解答可用n2个神经元的状态变量来代表状态变量的排列矩阵元素假设有四个城市 (其神经元连结 方式,举右上角 神经元为例)0100100000010010连续连续Hopfield 网络应用网络应用状态函数(限制函数)(1)每个城市只能经过一次,因此不会有第i 站等于第j 站的情形(2)每个城市只能经过一次,因此第i站的城市不可能会重复(3)每个城市都要到过一次(4)城市最短总距离设计连续连续Hopfield 网络应用网络应用综合上述四式
24、,设计以下能量函数连续连续Hopfield 网络应用网络应用每个状态的微分方程为输入输出函数为连续连续Hopfield 网络应用网络应用网络初始连接权值为连续连续Hopfield 网络应用网络应用权重值矩阵连续连续Hopfield 网络应用网络应用连续连续Hopfield 网络应用网络应用连续连续Hopfield 网络应用网络应用(1)网络参数的选择网络参数A,B,C,D,u0等对网络的变化相当敏感,原则上不能随意改变,Hopfield和Tank给出的参数值为:ABD500,C200,u00.02。这种选择是考虑了以下两点后的折中:D值较小时,容易获得合法路径;D值较大时,可增加路径长度的权重
25、,从而使合法路径趋于最优;u0是放大器的增益,太小时阈值函数接近于符号函数,不能获得较好的解;太大时,S型阈值函数过于平坦,神经元状态不易于收敛到0和1,从而使获得合法路径的概率下降。连续连续Hopfield 网络应用网络应用除了以上两点外,考虑网络参数对收敛速度的影响。实际上选择为ABD0.5C0.2,u00.02。这样的选择使能量函数数量级差异减小,从而使能量的数值也减小。程序中是以E为收敛判据,因而这种选择加快了程序收敛的速度。(2)网络初始状态的选择对于网络初始状态u0的选择问题,常采用随机扰动的方法。即给初始值u0增加一个小的扰动连续连续Hopfield 网络应用网络应用(3)阈值函
26、数的处理双曲正切函数阈值函数的计算包括二次指数计算、二次除法计算、三次加法计算,运算量很大,并且在每次迭代中都要调用N2次,这祥的运算严重彤响了网络的收敛速度。为此把该函数离散化,即在函数值变化敏感区域预先计算好足够多的离散函数值,形成表格存入计算机。这样在迭代过程中就无需经常计算函数值,而代之以查表值(只需一次乘法和一次加法),可大大提高计算速度。连续连续Hopfield 网络应用网络应用(4)神经元的状态值需取为模拟量由于在迭代过程中,城市位置的选取可能有很多种选择,采用模拟值来处理单元的状态是必然的。利用连续网络的模拟特性进行中间处理,可以在一次处理中同时考虑多条路径。这样可大量减少迭代
27、次数,使计算具有一定的并行特征。连续连续Hopfield 网络应用网络应用用上述方法对10个城市的TSP做100次仿真试验,发现在1000步迭代计算以内有15次收敛到有效路径的解(可行解),45次收敛到对应于无效路径的解(不满足约束条件),还有40次未达到收敛,试验中所用常数为a=b=d=500,c200,u00.02,I1000。说明上述方法存在问题,即经常收敛到无效解,而且对常数a,b等的选择较敏感,而这些常数的选择又没有可遵循的规律。针对上述问题,学者们做了许多研究来分析上述问题产生的原因和解决方法。连续连续Hopfield 网络应用网络应用2022/11/18函 数 名功 能satli
28、n()饱和线性传递函数satlins()对称饱和线性传递函数newhop()生成一个Hopfield回归网络nnt2hop()更新NNT 2.0 Hopfield回归网络pMATLABMATLAB中中HopfieldHopfield网络的重要函数和功能网络的重要函数和功能 Hopfield 网络的网络的MATLAB实现实现 MATLAB中与Hopfield网络有关的重要函数和功能 newhop()功能 生成一个Hopfield回归网络。格式 net=newhop(T)说明 net为生成的神经网络,具有在T中的向量上稳定的点;T是具有Q个目标向量的R*Q矩阵(元素必须为-1或1)。Hopfiel
29、d神经网络经常被应用于模式的联想记忆中。Hopfield神经网络仅有一层,其激活函数用satlins()函数,层中的神经元有来自它自身的连接权和阈值。Hopfield 网络的网络的MATLAB实现实现2022/11/1885MATLAB中与Hopfield网络有关的重要函数和功能satlins()功能 对称饱和线性传递函数格式 A=satlins(N)A输出向量矩阵;N是由网络的输入向量组成的S*Q矩阵,返回的矩阵A与N的维数大小一致,A的元素取值位于区间0,1内。当N中的元素介于-1和1之间时,其输出等于输入;当输入值小于-1时返回-1;当输入值大于1时返回1。Hopfield 网络的网络的MATLAB实现实现武汉科技大学86