前馈网络一般指前馈神经网络或前馈型神经网络。它是一种最简单的神经网络,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层,数据正想流动,输出仅由当前的输入和网络权值决定,各层间没有反馈。包括:单层感知器,线性神经网络,BP神经网络、RBF神经网络等。

  递归神经网络(RNN)是两种人工神经网络的总称。一种是时间递归神经网络(recurrent neural network),又名循环神经网络,包括RNN、LSTM、GRU等;另一种是结构递归神经网络(recursive neural network)。

  反馈网络(Recurrent Network),又称自联想记忆网络,输出不仅与当前输入和网络权值有关,还和网络之前输入有关。其目的是为了设计一个网络,储存一组平衡点,使得当给网络一组初始值时,网络通过自行运行而最终收敛到这个设计的平衡点上。包括Hopfield,Elman,CG,BSB,CHNN、DHNN等。

反馈网络具有很强的联想记忆和优化计算能力,最重要研究是反馈网络的稳定性(即其吸引子)

离散Hopfield神经网络

Hopfield神经网络是一种单层反馈,循环的从输入到输出有反馈的联想记忆网络。离散型为DHNN(Discrete Hopfield Neural Network)和连续型CHNN(Continues Hopfield Neural Network)。

Hopfield最早提出的网络是二值神经网络,各神经元的激励函数为阶跃函数或双极值函数,神经元的输入、输出只取{0,1}或者{ -1,1},所以也称为离散型Hopfield神经网络DHNN(Discrete Hopfiled Neural Network)。在DHNN中,所采用的神经元是二值神经元;因此,所输出的离散值1和0或者1和-1分别表示神经元处于激活状态和抑制状态。

离散Hopfield神经网络DHNN是一个单层网络,有n个神经元节点,每个神经元的输出均接到其它神经元的输入。各节点没有自反馈。每个节点都可处于一种可能的状态(1或-1),即当该神经元所受的刺激超过其阀值时,神经元就处于一种状态(比如1),否则神经元就始终处于另一状态(比如-1)。

对于中间层,任意两个神经元链接权值为Wij,Wij=Wji,神经元的连接是对称的,。如果Wii等于0,即神经元自生无连接,则称为无自反馈的Hopfield网络,如果不为0,则为有自反馈的Hopfield网络,但是出于稳定性考虑,应避免使用具有自反馈的网络,在这里,第一层Xi仅仅作为输入,没有实际功能。第三层为输出神经元,其功能是使用阈值函数对计算结果进行二值化。

仅考虑中间神经元节点发现,每个神经元输出将成为其他神经元输入,每个神经元输入又都来自其他神经元。神经元输出数据经过其他神经元之后又反馈给自己。

Hopfield网络的稳定性

Hopfield网络按照神经动力学方式运行,对于给定的初始状态按照能量减小的方式演化,最终达到稳定状态。

  • DHNN网实质上是一个离散的非线性动力学系统。网络从初态X(0)开始,若能经有限次递归后,其状态不再发生变化,即X(t+1)=X(t),则称该网络是稳定的。

  • 如果网络是稳定的,它可以从任一初态收敛到一个稳态:

  • 若网络是不稳定的,由于DHNN网每个节点的状态只有1和-1两种情况,网络不可能出现无限发散的情况,而只可能出现限幅的自持振荡,这种网络称为有限环网络。
  • 在有限环网络中,系统在确定的几个状态之间循环往复,系统也可能不稳定收敛于一个确定的状态,而是在无限多个状态之间变化,但是轨迹并不发散到无穷远,这种现象叫做混沌。

网络的状态 :

DHNN网中的每个神经元都有相同的功能,其输出称为状态,用 xj 表示。所有神经元状态的集合就构成反馈网络的状态
反馈网络的输入就是网络的状态初始值,表示为 X(0)=[x1(0),x2(0),…,xn(0)]T
反馈网络在外界输入激发下,从初始状态进入动态演变过程,变化规律为
xj=f(net(j))
DHNN网的转移函数常采用符号函数 :

净输入为:

网络计算的过程就是初始输入向量经过逐次迭代向吸引子演化的过程,演化的规则是向能量函数减小的方向演化,指导最终达到稳定状态。能量函数的定义为(为什么这样定义呢):

吸引子,吸引域与能量函数

吸引子:网络达到稳定时的状态X,称为网络的 吸引子。

吸引域:能够最终演化为该吸引子的初始状态集合称为该吸引子的吸引域。

若网络的状态X 满足 
X=f(WX-T) 
则称X为网络的吸引子。

对于DHNN 网,已被证明:

若按异步方式调整网络状态,且连接权矩阵W 为对称阵,则对于任意初态,网络都最终收敛到一个吸引子。
若按照同步方式调整网络,且链接权矩阵为非负定对称矩阵,则对于任意状态,网络最终都收敛到一个吸引子。

DHNN有两种向吸引子演化的工作方式:

1)串行(异步)方式:在时刻t时,只有某一个神经元j的状态发生变化(即一次只修改这一个神经元),而其他n-1个神经元的状态不变,称为串行工作方式。

若按照同步方式调整网络,且链接权矩阵为非负定对称矩阵,则对于任意状态,网络最终都收敛到一个吸引子的证明:

2)并行(同步)方式:在任一时刻t,所有的神经元的状态都产生了变化,称为并行工作方式。

设计离散Hopfield网络

Hopfield网络可以用于联想记忆,因此又称为联想记忆网络,与人脑类似,该网络实现联想记忆需要两个阶段:

  1. 记忆阶段:外界输入数据,使得系统自动调整网络的权值,最终用合适的权值使得系统有若干个稳定状态(即吸引子)。其吸引域半径定义为吸引子所能吸引的状态的最大距离,吸引域越半径越大,说明联想能力越强,联想记忆网络的记忆容量为吸引子的数量。
  2. 联想阶段:对于给定的输入模式,系统经过一定的演化,最终稳定收敛于某个吸引子。

假设待识别的数据为向量U=[u1,u2,.....uN],则系统将其设为初始状态,即Y=U。

网络中神经元个数与输入向量长度相同,初始化完成后,根据上面的式子反复迭代,直到神经元的状态不改变为止,此时输出的西营子就是 对应于输入Y的联想返回结果。

完成联想记忆的关键在于用恰当的学习算法得到网络权值。常见以下学习算法:

  • 外积法
  • 投影学习法
  • 伪逆法
  • 特征结构法

K:需要记忆的K个吸引子

N:输入向量的维度,神经元的个数,吸引子的维度。

另外离散Hopfield网络中存在伪吸引子,伪吸引子也是稳定的状态,但它不是设计者所需要的,减小伪状态是改进离散Hopfield网络的一个方向。

由于网络中各节点的状态只能取1 或 –1 ,能量函数E(t)
作为网络状态的函数是有下界的,因此网络能量函数最终将收敛于一个常数,此时ΔE(t)=0
综上所述,当网络工作方式和权矩阵均满足条件时,网络最终将收敛到一个吸引子。

以上分析表明,在网络从初态向稳态演变的过程中,网络的能量始终向减小的方向演变,当能量最终稳定于一个常数时,该常数对应于网络能量的极小状态,称该极小状态为网络的能量井,能量井对应于网络的吸引子。

实例:

网络的权值设计

⑴为保证异步方式工作时网络收敛,W应为对称阵;

⑵为保证同步方式工作时网络收敛,W应为非负定对称阵;

⑶保证给定样本是网络的吸引子,并且要有一定的吸引域。

五.反馈(Hopfield)神经网络的更多相关文章

  1. Hopfield神经网络

    神经网络分类 多层神经网络:模式识别 相互连接型网络:通过联想记忆去除数据中的噪声 1982年提出的Hopfield神经网络是最典型的相互连结型网络. 联想记忆 当输入模式为某种状态时,输出端要给出与 ...

  2. Hopfield神经网络和TSP问题

    一.TSP问题 旅行商问题,又叫货郎担问题.它是指如下问题:在完全图中寻找一条最短的哈密尔顿回路. 哈密尔顿回路问题:给定一个图,判断图中是否存在哈密尔顿回路. 哈密尔顿回路:寻找一条回路,经过图中所 ...

  3. Hopfield 神经网络及稳态性的证明

    根据其提出者,John Joseph Hopfield 命名.Hopfield 在 1982 年提出的划时代的:Neural networks and physical systems with em ...

  4. 数模学习笔记(五)——BP神经网络

    1.BP神经网络是一种前馈型网络(各神经元接受前一层的输入,并输出给下一层,没有反馈),分为input层,hide层,output层 2.BP神经网络的步骤: 1)创建一个神经网络:newff a.训 ...

  5. Hopfield神经网络实现污染字体的识别

    这个网络的内部使用的是hebb学习规则 贴上两段代码: package geym.nn.hopfiled; import java.util.Arrays; import org.neuroph.co ...

  6. tensorFlow(五)深层神经网络

    TensorFlow基础见前博客 上实例: MNIST 数据集介绍 MNIST 是一个手写阿拉伯数字的数据集. 其中包含有 60000 个已经标注了的训练集,还有 10000 个用于测试的测试集. 本 ...

  7. 反馈神经网络Hopfield网络

    一.前言 经过一段时间的积累,对于神经网络,已经基本掌握了感知器.BP算法及其改进.AdaLine等最为简单和基础的前馈型神经网络知识,下面开启的是基于反馈型的神经网络Hopfiled神经网络.前馈型 ...

  8. 神经网络hopfield的学习

    Hopfield神经网络使用说明. 该神经网络有两个特点: 1,输出值只有0,1 2,Hopfield没有输入(input) 这里解释一下第二个特点,什么叫没有输入?因为在使用Hopfield网络的时 ...

  9. Hopfield 网络(上)

    讲的什么 这部分主要对 Hopfield 网络作一大概的介绍.写了其模型结构.能量函数和网络的动作方式.主要参考了网上搜到的一些相关 PPT.   概述 早在 1982 年,Hopfield 发表的文 ...

随机推荐

  1. struts2的default.properties详解

    Struts 2框架有两个核心配置文件:struts.xml和struts.properties 其中struts.xml文件主要负责管理应用中的Action映射,以及该Action包含的Result ...

  2. codeforces 1131D-Gourmet choice

    传送门:QAQQAQ 题意:有两个数组,一个数组有n个数,另一个数组有m个数.s[i][j]表示第一个数组第i个数和第二个数组第j个数的大小关系,要求构造出一种方案,使条件成立. 先考虑没有等于号的情 ...

  3. 关于socket的setsockopt的使用

    关于setsockopt的使用 学习python的时候学习到了socket,其中有个setsockopt方法的使用,于是乎整理一下关于这个方法的一些内容. 本节目录 一 功能描述 二 用法(getso ...

  4. 分布式事务的2PC、3PC和TCC

    1.2PC协议 2PC 是二阶段提交(Two-phase Commit)的缩写,顾名思义,这个协议分两阶段完成.第一个阶段是准备阶段,第二个阶段是提交阶段,准备阶段和提交阶段都是由事务管理器(协调者) ...

  5. java编程题古典算法之兔子问题

    1.题目如下. 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 分析每个月的兔子对数: 1---- ...

  6. linux命令补全工具

    一:下载bash-competion工具 https://files.cnblogs.com/files/zgngg/bash-completion.zip 二:解压  unzip bash-comp ...

  7. jdom xpath定位带xmlns命名空间的节点(转)

    jdom xpath定位带xmlns命名空间的节点 2013-06-29      0个评论       作者:baozhengw 收藏    我要投稿 关键词:jdom xpath xmlns 命名 ...

  8. noi.openjudge 二分法求函数的零点

    二分法求函数的零点 总时间限制: 1000ms 内存限制: 65536kB 描述 有函数:f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已 ...

  9. 错误 2 error C2059: 语法错误:“::”

    设置项目属性,在预定义处理器中添加定义NOMINMAX来禁止使用Vsual C++的min/max宏定义. 项目属性   ——> C/C++ ——> 预处理器 ——> 预处理器定义 ...

  10. jeecms框架单点登录功能的实现

    单点登录的功能实现主要原理: 1: 在点击登录按钮的时候使用reponse.addCookie()方法向浏览器发送cookie: 2: 在前段拦截器中的request.getCookie()在接收到设 ...