Hopfield神经网络综述_第1页
Hopfield神经网络综述_第2页
Hopfield神经网络综述_第3页
Hopfield神经网络综述_第4页
Hopfield神经网络综述_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

主题:霍普菲尔德神经网络概述1.概述:1.什么是人工神经网络人工神经网络是一种并行分布式信息处理网络结构,它一般由许多神经元组成,每个神经元有一个输出,它可以连接到许多其他神经元,它的输入有多个连接路径,每个连接路径对应一个连接权重系数。人工神经网络系统是通过工程技术模拟人脑神经元(包括细胞体、树突、轴突)网络结构和特征的系统。人工神经元可用于形成具有不同拓扑结构的神经网络。它是生物神经网络的模拟和近似。仿真主要从两个方面进行:一是结构和实现机制;第二是从功能上模拟它。根据神经网络的主要连接类型,目前有几十种不同的神经网络模型,其中前馈网络和反馈网络是两种典型的结构模型。1)循环网络反馈神经网络,也称为自联想记忆网络,旨在设计一个网络并存储一组平衡点,这样当给网络一组初始值时,网络将通过自操作最终收敛到设计的平衡点。反馈神经网络是一种经过一步时移后将输出连接到输入层的神经网络系统。反馈网络能够反映非线性动态系统的动态特性。其主要特点如下:(1)。网络系统有几种稳定状态。当网络从某个初始状态开始移动时,网络系统总是能够收敛到一个稳定的平衡状态。(2)。通过设计网络的权值,可以将系统的稳定平衡状态存储在网络中。反馈网络是一种动态网络,它需要工作一段时间才能达到稳定。该网络主要用于联想记忆和优化计算。在这种网络中,每个神经元同时将其输出信号作为输入信号反馈给其他神经元,并且需要工作一段时间才能达到稳定。2.霍普菲尔德神经网络Hopfield网络是神经网络发展史上的一个重要里程碑。加州理工学院的物理学家霍普菲尔德教授于1982年提出,是一个单层反馈神经网络。Hopfield神经网络是反馈网络中最简单、应用最广泛的模型,具有联想记忆功能。Hopfield神经网络模型是一个从输出到输入具有反馈连接的循环神经网络。在输入的激励下,会有连续的状态变化。反馈网络既稳定又不稳定,如何判断其稳定性也需要确定。对于Hopfield网络,关键是在稳定条件下确定其权系数。在下图中,层0是输入,而不是神经元。第二层是神经元。霍普菲尔德网络图1984年,霍普菲尔德设计并开发了网络模型电路,成功地解决了旅行商(TSP)计算问题(快速优化问题)。根据网络的输出是离散的还是连续的,Hopfield网络也分为离散的和连续的。Hopfield神经网络有两种类型:离散Hopfield网络(DHNN)和连续Hopfield网络(CHNN)。1)离散Hopfield网络(DHNN):神经元的输出只有1和0,表明神经元分别被激活和抑制。对于二元神经元,其计算公式如下xi是外部输入。还有:2)连续Hopfield网络(CHNN)的拓扑结构与DHNN相同。不同的是,它的函数G不是阶跃函数,而是S形的连续函数。一般来说,G (u)=1/(1)二、特征分析1.离散Hopfield网络的结构和工作模式离散Hopfield网络是一个具有N个神经元节点的单层网络,每个神经元的输出连接到其他神经元的输入。每个节点都没有自我反馈,每个节点都有一个阈值。每个节点可以处于可能的状态(1或-1),即当对神经元的刺激超过其阈值时,神经元处于一种状态(例如1),否则神经元总是处于另一种状态(例如1)。分布式神经网络的网络状态是一组输出神经元信息。对于输出层为n个神经元的网络,t时刻的状态是一个n维向量:因为yi(t)可以取值1或0,所以n维向量Y(t)有2n个状态,也就是说,网络有2n个状态。如图所示,如果Hopfield网络是具有3个神经元的稳定网络,则有8个状态。从右图中可以直观地看出,如果输入向量被添加到网络的输入端,网络的状态将改变,即从超立方体的一个顶点到另一个顶点,并最终稳定在特定的顶点6。8种状态下3个神经元的立方体模型假设一个分布式神经网络,它的状态是Y(t):如果对于任何t,当神经网络从t=0开始时,存在初始状态Y(0)。在有限时间t之后,如果Y(t t)=Y(t),则网络被称为是稳定的。Hopfield网络稳定的充分条件:权系数矩阵W是对称矩阵,对角元素为0。无自反馈的加权对称Hopfield网络是稳定的。稳定霍普菲尔德网络离散Hopfield网络的一个功能是用于联想记忆,也就是联想记忆。这是人类智力的特征之一。人类所谓的“触景生情”,就是看到一些与过去相似的场景,很容易产生对过去的回忆和思考。对于Hopfield网络,当它被用作联想记忆时,网络中的权重系数首先通过学习和训练过程来确定,以便最小化网络的N维超立方体的顶角中存储的信息的能量。在网络的权重系数被确定之后,只要输入向量被给予网络,该向量就可以是本地数据,即不完整或部分不正确的数据,但是网络仍然产生记忆信息的完整输出。1)应用示例(数字识别)问题设计了一个具有联想记忆功能的Hopfield网络,能够正确识别阿拉伯数字。当数字被噪音污染时,它们仍然可以被正确地识别出来,。设计理念假设网络由0到9的10个稳定状态组成,每个稳定状态由一个10*10的矩阵组成,用于模拟阿拉伯数字点阵。也就是说,每个数字被分成10*10的方阵,具有数字的部分由1表示,空白由-1表示。数字表示示意图设计步骤(1)设计数字点阵(0-9)(2)创建Hopfield网络(3)设计受噪声污染的数字点阵(4)数字识别(5)结果分析(代码和仿真结果在第三仿真部分给出)2.连续Hopfield网络的结构和工作模式(CHNN)连续Hopfield网络(CHNN)是通过连接一些简单的电子电路实现的。每个神经元都有一个随时间连续变化的输出值。用一个具有饱和非线性的运算放大器模拟神经元的S型单调输入输出关系,即由电子电路连接的连续Hopfield网络(1)由电子电路连接的连续Hopfield网络(2)对于一个N节点CHNN模型,神经元状态变量的动态变化可以用下列非线性微分方程来描述能量函数定义为CHNN的能量函数不是物理意义上的能量函数,但在表达形式上与物理意义上的能量函数是一致的,代表了网络状态的变化趋势。定理:如果作用函数是单调递增和连续的,能量函数E是单调递减和有界的。CHNN用一个非线性微分方程来描述。通过构造网络的能量函数(也称为李雅普诺夫函数)和李雅普诺夫第二稳定性定理来判断网络的稳定性。解释7: (1)李雅普诺夫函数不是唯一的;(2)如果找不到网络的李雅普诺夫函数,就不能证明网络的不稳定性;(3)目前没有统一的方法来寻找李雅普诺夫函数;(4)用能量函数法研究网络的稳定性在数学上并不严格。如果将优化问题的目标函数转化为网络的能量函数,并且问题的变量对应于网络的状态,则可以用Hopfield神经网络来求解优化组合问题。应用霍普菲尔德神经网络解决优化计算问题的一般步骤如下:(1)分析问题:网络输出对应于问题的解决方案;(2)构造网络能量函数:使其最小值对应问题的最优解;(3)网络结构设计:从能量函数和网络稳定条件设计网络参数,得到动态方程;(4)硬件实现或软件模拟。1)应用实例(旅行商问题)它假设有n个城市a,b,c,它们的相互距离分别是。它需要找到一条封闭的路径,穿过每个城市一次,然后返回到起始城市。要求这条路是最短的。不管方向性和周期性如何,给定n,可能的闭合路径的数量是1/2(n-1)!随着n的增加,计算量急剧增加,而所谓的“组合爆炸”问题将发生在7。城市数量路径数量城市数量路径数量31121.995810743132.3950108512143.1135109660154.358910107360166.5384101182520171.04611013920160181.7784101410181440193.20121015111814400206.08231016位移矩阵a、b、c、d、e(对应每行)代表城市名称;1、2、3、4、5(对应于每一列)代表路径顺序;矩阵中的“1”表示城市在整个路径中的居住顺序,其余元素为“0”。这里,路径顺序是c a e b d c。特点:(1)每行只有一个“1”,其余元素为“0”;(2)每列只有一个“1”,其他元素为“0”;(3)所有元素中“1”的和是n12345A01000B00010C10000D00001E00100思路Hopfield神经网络由神经网络神经元组成。当网络达到稳定状态时,每个神经元的状态对应于置换矩阵的每个元素值,城市之间的距离作为一组约束信息来确定神经元之间的连接强度。期望网络演化的最终结果将给出一个最优解,即置换矩阵将指示最短距离条件下的路径顺序。能量函数在公式中,a、b、c、d是权重,代表城市x和城市y之间的距离。前三项是问题的约束条件,最后一项是优化目标项。改进动力方程具体的算法步骤(1)设置初始值和重量,t=0,A=1.5,D=1.0(2)读出n个城市之间的距离;(3)神经网络输入的初始化;其中,n是城市的数量,是(-1,1)区间的随机值;(4)采用动态方程计算;(5)根据一阶欧拉方法;(6)用sigmoid函数计算;(7)计算能量函数e;(8)检查路径的合法性,判断迭代是否完成,如果没有,返回步骤(4);(9)输出迭代次数、最优路径、能量函数、路径长度和能量变化。用于模拟的键盘命令:* sumsqr(X):求矩阵X中每个元素的平方和;* sum(X)或sum(X,1)是矩阵X中所有行的相加,sum(X,2)是矩阵X中所有列的相加;* repmat:用于矩阵复制;* dist(x,y):计算两点之间的距离。(代码和仿真结果在第三仿真部分给出)3.模拟1.号码识别问题1号代码:数组1嘈杂_数组_ 1数字2编码:数组2嘈杂_数组_二这些代码在matlab中分别建立成M个文件,并以data0和data0 _ noisy、data1和data1 _ noisy命名。以下是程序代码:基于% Hopfield神经网络的联想记忆数字识别%空环境变量清除所有clc%数据导入加载data1 array_one加载data2 array _%训练样本(目标向量)t=阵列_ 1;数组_二;%创建网络net=newhop(T);%数字1和2的带噪声数字点阵(固定法(人为添加噪声)load data1 _ noisy noisy _ array _ oneload data2 _ noisy noisy _ array _ two%数字1和2的带噪声数字点阵(随机法)4% noisy _ array _ one

温馨提示

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

最新文档

评论

0/150

提交评论