《[理学]第六章 人工神经元网络》由会员分享,可在线阅读,更多相关《[理学]第六章 人工神经元网络(99页珍藏版)》请在金锄头文库上搜索。
1、第六章 人工神经元网络学习指南人工神经元网络可以实现多种复杂的计算,其中相当多的计算与传统的模式识别要解决的问题是相同的。它的起源也可以追溯到第三章的感知准则函数,(我们称其 为感知器 perceptron)因此在学习人工神经元网络的多种功能时,我们可以联想到前几章学习过的一些重要概念。但是学习时还要注意它与传统模式识别处理方法上的不同点,因为它们在解决问题的方法上有很大区别。主要不同点有,在人工神经元网络中,计算是体现在一种网络结构中实现的,不同的网 络结构可以实现各种很不相同的功能,因此要掌握网络结构的计算方法。另一个不同点是该网络结构中的参数是通过学习而逐渐修正的。这种学习是类似于感知准
2、则函数中提倡的学习,即利用错误提供的信息来修正当前的参数,直至网络结构及其参数实现优化。人工神经元网络可以实现的功能比传统的模式识别要多一些,如实现输入输出是非线性关系,用 Hopfield 网络实现联想记忆等。要着重理解人工神经元网络如何实现这些功能的。由于人工神经元网络的功能很多,因此已应用到许多不同的领域。对它的各种技术问题的深入研究也很多,我们学习时要体会以下三种网络结构能实现不同功能的原理,这三种网络结构是:多层感知器, Hopfield 网络模型和竞争网络。 学习目标(1) 通过本章学习要掌握人工神经元网络实现各种计算功能的原理,及通过学习方法确定网络参数的原理;(2) 通过三种典
3、型的人工神经元网络结构:前馈网络、Hopfield 网络以及竞争网络,了解利用不同结构实现不同计算的原理;(3) 了解前馈网络能实现的基本功能输入与输出之间的非线性映射,掌握误差回传算法的原理;(4) 了解 Hopfield 网络实现 模式存储的工作原理;(5) 从各种网络工作原理与学习方法的学习,掌握人工神经元网络的工作特点与通过学习确定参数的方法。本章要点(1) 人工神经元的定义及典型结构与功能(2) 多层感知器( 前馈网络) 能实现非线性的原理(3) 多层感知器的基本学习方法(4) Hopfield 网络为什么能 实现存储模式的功能(5) 竞争网络的功能及网络结构(6) 用人工神经元网络
4、确定数据集的主分量方法(7) 自组织映射网络的工作原理本章难点(1) 为什么单层感知器只能实现线性分类器的功能,而双层的感知器就可以实现“异或”运算等复杂一些的功能?(2) 误差回传算法是如何将感知器准则函数学习方法推广到多层感知器的学习中去的?(3) Hopfield 网络为什么能存 储模式, 为什么具有联想记忆功能?联想记忆与按地址存储的不同点。(4) 为什么引入竞争机制?6.1 引言在第二章到第五章中所讨论的模式识别方法,一般称为传统的模式识别方法。实际上用人工神经元网络方法解决模式识别问题也十分普遍,尤其是近二十年来随着人工神经元网络的复兴与发展,它在信息领域,以及其它领域都得到广泛的
5、应用。在这一章中将讨论人工神经网络的工作原理,并侧重于讨论在模式识别中的应用。但是应该指出的是,人工神经元网络所涉及的应用领域比传统的模式识别方法更为广泛。除了在模式识别中作为分类器应用之外,人工神经元网络体现出来的非线性映射以及联想记忆等功能,使它在传统模式识别领域之外也得到了广泛的作用。人工神经元网络的研究有相当长的历史。如果从 1940 年 McCulloch-Pitts 模型的提出算起至今已有 60 年的历史。人们之所以对人工神经元网络感兴趣,主要是为了机器能有智能,做有智能的事。而人有智能是通过细胞构成的网络实现的,因此研究计算的人工神经网络方法, 对研究人类自身有好处。在本章的后续
6、节里,将要讨论一些十分典型的人工神经元网络,其工作原理,学习机制等,在这一节则对一些最基本的方面作一概括。人工神经元网络的组成包括两个基本组成部分,一是结点、二是网络、也就是结点之间的连接。作为人工神经元网络的结点是仿照生物细胞结构而造出的。典型的结点模型实际上还是 1940 年提出的 McCulloch-Pitts 模型。它的结构如图6-1 所示。其中 X1Xn 是模型的输入端,接受外界来的信息。这些信息经过加权,在求和器中实现线性加权组合。求和器的输出被送往一个非线性的映射单元,在该模型中使用的是阈值单元,其阈值函数可表示成(6-1)图 6-1 McCulloch-Pitts 模型 其中
7、y 是输出,h 是该阈值单元的输入,也就是求和器的输出。因此整个模型的输入输出关系可表示成(6-2)不难看出,这种模型所实现的功能正是在第三章提到的线性分类器。我们可以回顾一下用线性分类器实现两类样本的分类所使用的公式。所使用的判别函数的通用式子是:而分类的原则则是依据判别函数值是否大于零或小于零。由此我们可以看出对一个样本进行分类所要的计算共分两个部分,一个是计算一个样本各分量的加权和运算,得到 g(X)的值。另一个是 对该函数值作一个判断,是大于零还是小于零,如果将这个计算表示成一个框图的话,就与 图 6-1 中表示的一样,因此 设计一个线性分类器,实际上就是设计一个 McCulloch-
8、Pitts 模型中的参数。可以说我们曾讨论过的方法,如 Fisher 准则方法、支持向量机方法与感知准则函数方法都可用来设计 McCulloch-Pitts 模型的参数。然而从人工神经元网络这个体系来看,是在感知准则函数这个学习方法的基础上发展起来的,它特别强调感知准则函数这种自学习能力,即利用训练样本集中的数据,逐步修正当前参数,使参数得以优化的方法,这是学习本章要充分理解的,这是学习人工神经元网络的一个基本点。几十年来人工神经元网络这门学科有了很大的发展,但是就这结点模型来说,与 McCulloch-Pitts 模型没有太大变化。主要的变化是所使用的非线性映射函数,如 S 型,高斯型等。在
9、人工神经元网络中使用的结点类型除了 McCulloch-Pitts 外,常用的有 S 型与高斯型等。它们与 McCulloch-Pitts 模型的不同点主要是将判别函数,又称阈值函数,改成其它非线性函数,也就是说神经元网络的输出值 Y 不再只是(6-1)式中的 0 或 1,可以是 01 之间的任何实数值, 该值是 h 的函数。在数学上将只能取0 或 1 两种值的情况写成 ,而对在 01 之间(包含 0 与 1 的情况)可取任意值则写成 。具体来说常用的 S 型函数是:从中可以看出,y 的值是 h 的值的函数,它随 h 值变化在(0,1)之间变化,有时也可用则此时,y 的值将随 h 值在(-1,
10、1)之间变化。使用 S 型函数之后,神经元的输入与输出之间就可以实现一种连续的变化,而使用 McCulloch-Pitts 模型只能实现二值的映射,这是一种特殊的非线性映射,成为阈值函数映射。使用哪一种非线性函数取决于具体的网络结构及应用。人工神经元网络之所以能有许多复杂的功能,主要体现在将这些结点组合成网络。将执行最简单计算的结点组合起来, 实现复杂的运算, 这就是人工神经元网络最根本的特点。而之所以能将简单的运算组合成复杂的运算,最主要是一条是结点的运算中具有的非线性映射。有了结点运算的非线性映射,才使得人工神经元网络作为一个整体能实现复杂的非线性映射功能。除了将简单运算组合成复杂运算这一
11、特点之外,人工神经元网络的成功体现在通过学习机制确定参数这一点。在第三章中曾提到 Rosenblatt 提出用感知准则函数方法设计线性分类器的问题。其特点是利用监督学习方法的原理,利用错分类信息产生对参数进行自修正的机制。实际上感知准则函数方法在人工神经元网络中就是单层感知器。而通过学习确定网络各参数则成为人工神经元网络确定参数的最基本方法。人工神经元网络实现各种不同的功能与网络的结构有很密切的关系。下一节中讨论的 Hopfield 模型是一种全互联的结构( 图 6-2(a)。其中每个结点接受来自网内其余所有结点的信号,同时它又把自己的输出传送到所有其它结点上去。6.4节中讨论的网络是另一种典
12、型结构(图 6-9),在这种结构中,结点是分层的,信息也只由较低层向较高层传递。不同的结构实现不同的功能,也有自身相应的学习机制与学习方法。理解这些网络的基本工作方式与其学习机制是本章的主要内容。人工神经元网络为什么会实现复杂计算以二维空间的折线划分为例。我们知道,通常把用感知准 则函数方法设计的分类器称为感知器(perceptron),它只能实现对两类样本的线性分类。或者说他只能将特征空间用线性函数划分成两个区域。对一个二维特征空 间可用下图表示,补图 1 补图 2其中 f(x)是 x 的一个线性函数,可以具体表示成而 McCulloch-Pitts 模型中的阈值函数,可以写成其中 sgn
13、函数是常用的符号函数,他可以定 义成或 按照前一种定义,则 y 与 x 之间的关系就如该图显示。如果我们希望用一个复杂一些的判别函数将特征空间划分成两个区域,例如用图(a)中由两条射线组成的折线来划分。在折 线的一边为 y=1,在折线的另一边y=0,显然用一个神经元是不行的。对于这种情况我们可以通过图(b)作进一步分析。如果我们将该折线的两个直线各用一线性函数 和 表示,则整个空间将因这两个函数值的极性不同分成四个区域。图(a)中 y=0 这个区域所具有的特点是 与 都小于零。显然这需要在 与 计算的基础上增加一个逻辑运算才能解决问题。实际上这三个运算可以通过三个神经元结点组成如图(c)所示的
14、结构,选择出适当的参数就能实现。 这个例子说明了人工神经元网络的最基本工作原理与特点:(1) 人工神经元网络由数量较多的结点(每个结点是一个神经元)以适当的方式相互连接组成,每个结点的输入可以是输入数据的某一个分量,也可以是其他结点的输出。(2) 每个结点都执行简单的两步运算:对输入信号实现加权和;对加权和执行非线性映射。(3) 由于结点之间的相互连接,可实现对简单运算的组合,而实现复杂的运算。(4) 人工神经元网络实现各种功能取决于所采用的结点间连接方式以及每个结点的参数值的选择。网络结点数量的确定及它们之间的连接方式称为网络的结构设计问题,目前主要由设计者确定。而网 络中各个结点的参数,
15、则往往是通过用训练数据集以某种训练方法来确定。感知准则函数就是一种典型的学习方法。人工神经元网络研究曾有过曲折的历史。它的提出实际上与传统的 Von Neumann 计算机以及人工智能的 兴起都是同时代的。但是由于早期的神经元网络学习机制的缺陷,以致于只能构造单层感知器那样的简单网络,这种网络又不能解决诸如“ 异或” 、“奇偶校 验” 等十分简单的运算。将神经元结点以某种方式连接起来,成为一种网络结构,可以实现复杂的功能。下一个需要解决的问题是确定这个网络中的所有待定参数,对于一个很简单的网络可以通过解析的方式来确定这些参数。从求解“ 异或”计算这个例子看,所需的待定参数可通过分析确定,但对于
16、由多个结点组成的复杂网络,实现模式识别以及其它复杂运算时,如何确定所有参数的方法在当时没有研究出来,这导致了人工神经元网络研究的一度冷落。八十年代初对这些参数的学习方法有了突破,人工神经元网络的研究与应用才掀开了崭新的一页。因此人工神经网络的研究被冷落了相当长的时期。人工神经元网络的复兴出现在 1980 年左右,1982 年 Hopfield 发表的一篇文章对重新引起人们对这方面的研究兴趣起了十分主要的作用。在下一节以及后续节的讨论,也会在一定程度上反映了人工神经元网络发展的历程。6.2 Hopfield 模型6.2.1 Hopfield 模型与联想记忆问题在前一节中曾提到 Hopfield 在 1982 年发表的一篇文章,对重新引起人们研究人工神经元网络的兴趣起了十分重要的作用。对 Hopfield 模型的研究,不仅引发了许多学者对人工神经元网络的基本理论及方法进行了深入的研究,从而促使人工神经元网络的研究得到了迅猛的发展,并且将人工神经元网络方法应用到许多重要