第07讲反馈网络 反馈网络( Recurrent Network),又称自联想记忆网络,其目的是为了设计一个网络,储 存一组平衡点,使得当给网络一组初始值时,网络通过自行运行而最终收敛到这个设计的平 衡点上 1982年,美国加州工学院物理学家霍普菲尔德(J. Hopfield)发表了一篇对人工神经网络 硏究颇有影响的论文。他提出了一种具有相互联接的反馈型人工神经网络模型,并将“能量 函数”的概念引入到对称霍普菲尔德网络的研究中,给出了网络的稳定性判据,并用来进行 约束优化问题,如TSP问题的求解,实现A/D转换等。他利用多元霍普菲尔德网络的多 吸引子及其吸引域,实现了信息的联想记忆( associative memory)功能。另外霍普菲尔德网络 与电子模拟线路之间存在着明显的对应关系,使得该网络易于理解且便于实现。而它所执行 的运算在本质上不同于布尔代数运算,对新一代电子神经计算机具有很大的吸引力 反馈网络能够表现出非线性动力学系统的动态特性。它所具有的主要特性为以下两点 第一、网络系统具有若干个稳定状态。当网络从某一初始状态开始运动,网络系统总可以收 敛到某一个稳定的平衡状态:第二,系统稳定的平衡状态可以通过设计网络的权值而被存储 到网络中。 如果将反馈网络稳定的平衡状态作为一种记忆,那么当网络由任一初始状态向稳态的转 化过程,实质上是一种寻找记忆的过程。网络所具有的稳定平衡点是实现联想记忆的基础。 所以对反馈网络的设计和应用必须建立在对其系统所具有的动力学特性理解的基础上,这其 中包括网络的稳定性,稳定的平衡状态,以及判定其稳定的能量函数等基本概念。 针对人工神经网络的特点,若按其运行过程的信息流向来分类,则可分为两大类:前向 网络和反馈网络。在前面的章节里,主要介绍了前向网络,通过许多具有简单处理能力的神 经元的相互组合作用使整个网络具有复杂的非线性逼近能力。在那里,着重分析的是网络的 学习规则和训练过程,并研究如何提高网络整体非线性处理能力。在本章中,我们将集中讨 论反馈网络,通过网络神经元状态的变迁而最终稳定于平衡状态,得到联想存储或优化计算 的结果。在这里,着重关心的是网络的稳定性问题,研究的重点是怎样得到和利用稳定的反 馈网络。 反馈式网络有多种,这里主要讨论由霍普菲尔德提出的反馈网络。霍普菲尔德网络是单
1 第 07 讲 反馈网络 反馈网络(Recurrent Network),又称自联想记忆网络,其目的是为了设计一个网络,储 存一组平衡点,使得当给网络一组初始值时,网络通过自行运行而最终收敛到这个设计的平 衡点上。 1982 年,美国加州工学院物理学家霍普菲尔德(J.Hopfield)发表了一篇对人工神经网络 研究颇有影响的论文。他提出了一种具有相互联接的反馈型人工神经网络模型,并将“能量 函数”的概念引入到对称霍普菲尔德网络的研究中,给出了网络的稳定性判据,并用来进行 约束优化问题,如 TSP 问题的求解,实现 A/D 转换等。他利用多元霍普菲尔德网络的多 吸引子及其吸引域,实现了信息的联想记忆(associative memory)功能。另外霍普菲尔德网络 与电子模拟线路之间存在着明显的对应关系,使得该网络易于理解且便于实现。而它所执行 的运算在本质上不同于布尔代数运算,对新一代电子神经计算机具有很大的吸引力。 反馈网络能够表现出非线性动力学系统的动态特性。它所具有的主要特性为以下两点: 第一、网络系统具有若干个稳定状态。当网络从某一初始状态开始运动,网络系统总可以收 敛到某一个稳定的平衡状态;第二,系统稳定的平衡状态可以通过设计网络的权值而被存储 到网络中。 如果将反馈网络稳定的平衡状态作为一种记忆,那么当网络由任一初始状态向稳态的转 化过程,实质上是一种寻找记忆的过程。网络所具有的稳定平衡点是实现联想记忆的基础。 所以对反馈网络的设计和应用必须建立在对其系统所具有的动力学特性理解的基础上,这其 中包括网络的稳定性,稳定的平衡状态,以及判定其稳定的能量函数等基本概念。 针对人工神经网络的特点,若按其运行过程的信息流向来分类,则可分为两大类:前向 网络和反馈网络。在前面的章节里,主要介绍了前向网络,通过许多具有简单处理能力的神 经元的相互组合作用使整个网络具有复杂的非线性逼近能力。在那里,着重分析的是网络的 学习规则和训练过程,并研究如何提高网络整体非线性处理能力。在本章中,我们将集中讨 论反馈网络,通过网络神经元状态的变迁而最终稳定于平衡状态,得到联想存储或优化计算 的结果。在这里,着重关心的是网络的稳定性问题,研究的重点是怎样得到和利用稳定的反 馈网络。 反馈式网络有多种,这里主要讨论由霍普菲尔德提出的反馈网络。霍普菲尔德网络是单
层对称全反馈网络,根据其激活函数的选取不同,可分为离散型的霍普菲尔德网络( Discrete Hopfield Neural Network,简称DHNN和连续型的霍普菲尔德网络( Continuous Hopfield Neural Network,简称CHNN)。DHNN的激活函数为二值型的,其输入、输出为{0,1}的反 馈网络,主要用于联想记忆。CHNN的激活函数的输入与输出之间的关系为连续可微的单 调上升函数,主要用于优化计算 霍普菲尔德网络已经成功地应用于多种场合,现在仍常有新的应用的报道。具体的应用 方向主要集中在以下方面:图像处理、语声处理、信号处理、数据査询、容错计算、模式分 类、模式识别等。 7.1霍普菲尔德网络模型 反馈网络的网络结构如图7.1所示。 P2 图7.1反馈网络结构图 该网络为单层全反馈网络,其中的每个神经元的输出都是与其他神经元的输入相连的 所以其输入数目与输出层神经元的数目是相等的,有r 在反馈网络中,如果其激活函数f(·)是一个二值型的硬函数,如图7.2所示,即a sgn(m),i=,2,…r,则称此网络为离散型反馈网络,如果a=f(n)中的f(·)为一个连续单调 上升的有界函数,这类网络被称为连续型反馈网络,图7.3中所示为一个具有饱和线性激 活函数,它满足连续单调上升的有界函数的条件,常作为连续型的激活函数。 2
2 层对称全反馈网络,根据其激活函数的选取不同,可分为离散型的霍普菲尔德网络(Discrete Hopfield Neural Network,简称 DHNN)和连续型的霍普菲尔德网络(Continuous Hopfield Neural Network,简称 CHNN)。DHNN 的激活函数为二值型的,其输入、输出为{0,1}的反 馈网络,主要用于联想记忆。CHNN 的激活函数的输入与输出之间的关系为连续可微的单 调上升函数,主要用于优化计算。 霍普菲尔德网络已经成功地应用于多种场合,现在仍常有新的应用的报道。具体的应用 方向主要集中在以下方面:图像处理、语声处理、信号处理、数据查询、容错计算、模式分 类、模式识别等。 7.1 霍普菲尔德网络模型 反馈网络的网络结构如图 7.1 所示。 图 7.1 反馈网络结构图 该网络为单层全反馈网络,其中的每个神经元的输出都是与其他神经元的输入相连的。 所以其输入数目与输出层神经元的数目是相等的,有 r=s。 在反馈网络中,如果其激活函数 f(·)是一个二值型的硬函数,如图 7.2 所示,即 ai= sgn(ni),i=l, 2, … r,则称此网络为离散型反馈网络,如果 ai=f(ni)中的 f(·)为一个连续单调 上升的有界函数,这类网络被称为连续型反馈网络,图 7.3 中所示为一个具有饱和线性激 活函数,它满足连续单调上升的有界函数的条件,常作为连续型的激活函数
图7.2DHNN中的激活函数 图7.3CHNN中的激活函数 7.2状态轨迹 对于一个由r个神经元组成的反馈网络,若将加权输入和n视作网络的状态,则状态矢 量N=[n,n2,…,n,网络的输出矢量为A=[a,a…,a]。在某一时刻t,分别用Nt)和 A(t)来表示各自的矢量。在下一时刻t1,可得到N(t1),而Nt+1)又引起At+1)的变化, 这种反馈演化的过程,使状态矢量Nt)随时间发生变化。在一个r维状态空间上,可以用 条轨迹来描述状态变化情况。从初始值N(to)出发,Nto+△t)→N(to+2△t→.→N(to+m△t) 这些在空间上的点组成的确定轨迹,是演化过程中所有可能状态的集合,我们称这个状态空 间为相空间。图7.4描述了一个三维相空间上三条不同的轨迹,对于DHNN,因为Nt)中 每个值只可能为±1,或{0,1},对于确定的权值w,其轨迹是跳跃的阶梯式,如图中A所 示,对于CHNN,因为f(·)是连续的,因而,其轨迹也是连续的。如图中B、C所示。 N6) N(t) B N() 2 N() 图7.4三维空间中的状态轨迹
3 图 7.2 DHNN 中的激活函数 图 7.3 CHNN 中的激活函数 7.2 状态轨迹 对于一个由 r 个神经元组成的反馈网络,若将加权输入和 n 视作网络的状态,则状态矢 量 N=[n1, n2, …,nr],网络的输出矢量为 A=[a1,a2…,as] T。在某一时刻 t,分别用 N(t)和 A(t)来表示各自的矢量。在下一时刻 t+1,可得到 N(t+1),而 N(t+1)又引起 A(t+1)的变化, 这种反馈演化的过程,使状态矢量 N(t)随时间发生变化。在一个 r 维状态空间上,可以用一 条轨迹来描述状态变化情况。从初始值 N(t0)出发,N(t0+Δt)→N(t0+2Δt)→…→N(t0+mΔt), 这些在空间上的点组成的确定轨迹,是演化过程中所有可能状态的集合,我们称这个状态空 间为相空间。图 7.4 描述了一个三维相空间上三条不同的轨迹,对于 DHNN,因为 N(t)中 每个值只可能为±1,或{0,1},对于确定的权值 wij,其轨迹是跳跃的阶梯式,如图中 A 所 示,对于 CHNN,因为 f(·)是连续的,因而,其轨迹也是连续的。如图中 B、C 所示。 图 7.4 三维空间中的状态轨迹
对于不同的连接权值w;和输入P(j=1,2,…r),反馈网络状态轨迹可能出现以下几种 情况 7.2.1状态轨迹为稳定点 状态轨迹从系统在to时状态的初值N()开始,经过一定的时间tt>0)后,到达Nt+t) 如果N(to+t+△t)=N(to+t),△t>0,则状态N(o+t)称为网络的稳定点,或平衡点。由于N(to+t) 不再变化,对于P(to+也达到了稳定值。即反馈网络从任一初始态P(0)开始运动,若存在某 有限时刻t,从t以后的网络状态不再发生变化:P(t+△t)=P(t),Δt>0,则称该网络是稳 定的。处于稳定时的网络状态叫做稳定状态,又称为定吸引子 对于非线性系统来说,不同的初始值N(to),可能有不同的轨迹,到达不同的稳定点, 这些稳定点,也可以认为是人工神经网络的解。在一个反馈网络中,存在很多稳定点,根据 不同情况,这些稳定点可以分为 1)渐近稳定点:如果在稳定点N周围的N(a)区域内,从任一个初始状态N(to)出发的 每个运动,当t→∞时都收敛于N,则称N为渐近稳定点。此时,不仅存在一个稳定点N 而且存在一个稳定域。有时称此稳定点为吸引子,其对应的稳定域为吸引域: 2)不稳定平衡点Nan:在某些特定的轨迹演化过程中,网络能够到达稳定点Ncn,但对于 其它方向上的任意一个小的区域N(o),不管N(o)取多么小,其轨迹在时间t以后总是偏 离Nn; 3)网络的解:如果网络最后稳定到设计人员期望的稳定点,且该稳定点又是渐近稳定点 那么这个点称为网络的解 4)网络的伪稳定点:网络最终稳定到一个渐近稳定点上,但这个稳定点不是网络设计所 要求的解,这个稳定点为伪稳定点 在一个非线性的反馈网络中,存在着这些不同类型的稳定点,而网络设计的目的是希望 网络最终收敛到所要求的稳定点上,并且还要有一定的稳定域 7.2.2状态轨迹为极限环 如果在某些参数的情况下,状态N(t)的轨迹是一个圆,或一个环,状态Nt)沿着环重复 旋转,永不停止,此时的输出A(t)也出现周期变化,即出现振荡,如图7.4中C的轨迹即 是极限环出现的情形。对于DINN,轨迹变化可能在两种状态下来回跳动,其极限环为2
4 对于不同的连接权值 wij 和输入 Pj(i, j=1, 2, … r),反馈网络状态轨迹可能出现以下几种 情况。 7.2.1 状态轨迹为稳定点 状态轨迹从系统在 t0 时状态的初值 N(t0)开始,经过一定的时间 t(t>0)后,到达 N(t0+t)。 如果 N(t0+t+Δt)=N(t0+t),Δt>0,则状态 N(t0+t)称为网络的稳定点,或平衡点。由于 N(t0+t) 不再变化,对于 P(t0+t)也达到了稳定值。即反馈网络从任一初始态 P(0)开始运动,若存在某 一有限时刻 t,从 t 以后的网络状态不再发生变化:P(t+Δt)= P(t),Δt>0,则称该网络是稳 定的。处于稳定时的网络状态叫做稳定状态,又称为定吸引子。 对于非线性系统来说,不同的初始值 N(t0),可能有不同的轨迹,到达不同的稳定点, 这些稳定点,也可以认为是人工神经网络的解。在一个反馈网络中,存在很多稳定点,根据 不同情况,这些稳定点可以分为: 1)渐近稳定点:如果在稳定点 Ne 周围的 N(σ)区域内,从任一个初始状态 N(t0)出发的 每个运动,当 t→∞时都收敛于 Ne,则称 Ne为渐近稳定点。此时,不仅存在一个稳定点 Ne, 而且存在一个稳定域。有时称此稳定点为吸引子,其对应的稳定域为吸引域; 2)不稳定平衡点 Nen:在某些特定的轨迹演化过程中,网络能够到达稳定点 Nen,但对于 其它方向上的任意一个小的区域 N(σ),不管 N(σ)取多么小,其轨迹在时间 t 以后总是偏 离 Nen; 3)网络的解:如果网络最后稳定到设计人员期望的稳定点,且该稳定点又是渐近稳定点, 那么这个点称为网络的解; 4)网络的伪稳定点:网络最终稳定到一个渐近稳定点上,但这个稳定点不是网络设计所 要求的解,这个稳定点为伪稳定点。 在一个非线性的反馈网络中,存在着这些不同类型的稳定点,而网络设计的目的是希望 网络最终收敛到所要求的稳定点上,并且还要有一定的稳定域。 7.2.2 状态轨迹为极限环 如果在某些参数的情况下,状态 N(t)的轨迹是一个圆,或一个环,状态 N(t)沿着环重复 旋转,永不停止,此时的输出 A(t)也出现周期变化,即出现振荡,如图 7.4 中 C 的轨迹即 是极限环出现的情形。对于 DHNN,轨迹变化可能在两种状态下来回跳动,其极限环为 2
如果在r种状态下循环变化,称其极限环为rs 7.2.3混沌现象 如果状态N(t)的轨迹在某个确定的范围内运动,但既不重复,又不能停下来,状态变化 为无穷多个,而轨迹也不能发散到无穷远,这种现象称为混沌( chaos)。在出现混沌的情况下, 系统输出变化为无穷多个,并且随时间推移不能趋向稳定,但又不发散。这种现象越来越引 起人们的重视,因为在脑电波的测试中已发现这种现象,而在真正的神经网络中存在这种现 象,也应在人工神经网络中加以考虑。 7.2.4状态轨迹发散 如果状态N(t)的轨迹随时间一直延伸到无穷远,此时状态发散,系统的输出也发散。在 人工神经网络中,由于输入、输出激活函数上一个有界函数,虽然状态N(t)是发散的,但其 输出A(t)还是稳定的,而A(t)的稳定反过来又限制了状态的发散。一般非线性人工神经 网络中发散现象是不会发生的,除非神经元的输入输出激活函数是线性的。 对于一个由r个神经元组成的反馈系统,它的行为就是由这些状态轨迹的情况来决定 的。目前的人工神经网络是利用第一种情况即稳定的专门轨迹来解决某些问题的。如果把系 统的稳定点视做一个记忆的话,那么从初始状态朝这个稳定点移动的过程就是寻找该记忆的 过程。状态的初始值可以认为是给定的有关该记忆的部分信息,状态N(t)移动的过程,是从 部分信息去寻找全部信息,这就是联想记忆的过程。如果把系统的稳定点考虑为一个能量函 数的极小点,在状态空间中,从初始状态N(to)=N(to+t,最后到达N。若N为稳定点,则 可以看作是N把N(t0)吸引了过去,在N(t)时能量比较大,而吸引到N"时能量已为极小了。 根据这个道理,可以把这个能量的极小点作为一个优化目标函数的极小点,把状态变化的过 程看成是优化某一个目标函数的过程。因此反馈网络的状态移动的过程实际上是一种计算联 想记忆或优化的过程。它的解并不需要真的去计算,只需要去形成一类反馈神经网络,适当 地讨论其权重值w,使其初始输入A(to)向稳定吸引子状态的移动就可以达到这个目的 霍普菲尔德网络是利用稳定吸引子来对信息进行储存的,利用从初始状态到稳定吸引子 的运行过程来实现对信息的联想存取的。通过对神经元之间的权和阈值的设计,要求单层的 反馈网络达到下列目标 (1)网络系统能够达到稳定收敛
5 如果在 r 种状态下循环变化,称其极限环为 r。 7.2.3 混沌现象 如果状态 N(t)的轨迹在某个确定的范围内运动,但既不重复,又不能停下来,状态变化 为无穷多个,而轨迹也不能发散到无穷远,这种现象称为混沌(chaos)。在出现混沌的情况下, 系统输出变化为无穷多个,并且随时间推移不能趋向稳定,但又不发散。这种现象越来越引 起人们的重视,因为在脑电波的测试中已发现这种现象,而在真正的神经网络中存在这种现 象,也应在人工神经网络中加以考虑。 7.2.4 状态轨迹发散 如果状态 N(t)的轨迹随时间一直延伸到无穷远,此时状态发散,系统的输出也发散。在 人工神经网络中,由于输入、输出激活函数上一个有界函数,虽然状态 N(t)是发散的,但其 输出 A(t)还是稳定的,而 A(t)的稳定反过来又限制了状态的发散。一般非线性人工神经 网络中发散现象是不会发生的,除非神经元的输入输出激活函数是线性的。 对于一个由 r 个神经元组成的反馈系统,它的行为就是由这些状态轨迹的情况来决定 的。目前的人工神经网络是利用第一种情况即稳定的专门轨迹来解决某些问题的。如果把系 统的稳定点视做一个记忆的话,那么从初始状态朝这个稳定点移动的过程就是寻找该记忆的 过程。状态的初始值可以认为是给定的有关该记忆的部分信息,状态 N(t)移动的过程,是从 部分信息去寻找全部信息,这就是联想记忆的过程。如果把系统的稳定点考虑为一个能量函 数的极小点,在状态空间中,从初始状态 N(t0)=N(t0+t),最后到达 N*。若 N*为稳定点,则 可以看作是 N*把 N(t0)吸引了过去,在 N(t0)时能量比较大,而吸引到 N*时能量已为极小了。 根据这个道理,可以把这个能量的极小点作为一个优化目标函数的极小点,把状态变化的过 程看成是优化某一个目标函数的过程。因此反馈网络的状态移动的过程实际上是一种计算联 想记忆或优化的过程。它的解并不需要真的去计算,只需要去形成一类反馈神经网络,适当 地讨论其权重值 wij,使其初始输入 A(t0)向稳定吸引子状态的移动就可以达到这个目的。 霍普菲尔德网络是利用稳定吸引子来对信息进行储存的,利用从初始状态到稳定吸引子 的运行过程来实现对信息的联想存取的。通过对神经元之间的权和阈值的设计,要求单层的 反馈网络达到下列目标: (1)网络系统能够达到稳定收敛