管理决策方法(神经网络及遗传算法)_第1页
管理决策方法(神经网络及遗传算法)_第2页
管理决策方法(神经网络及遗传算法)_第3页
管理决策方法(神经网络及遗传算法)_第4页
管理决策方法(神经网络及遗传算法)_第5页
已阅读5页,还剩449页未读 继续免费阅读

下载本文档

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

文档简介

第1章神经网络基础知识1.1人工神经网络的发展史1.2生物神经元和人工神经元1.3生物神经网络和人工神经网络

1.1人工神经网络的发展史

人工神经网络(ArtificialNeuralNetwork,简称ANN或AN2)是由大量而又简单的神经元按某种方式连接形成的智能仿生动态网络,它是在不停顿地向生物神经网络(BiologicalNeuralNetwork,简称BNN或BN2)学习中开始自己学科生涯的。

BN2作为一门科学,兴起于19世纪末期。1875年意大利解剖学家Golgi用染色法最先识别出单个神经细胞。1889年西班牙解剖学家Cajal创立神经元学说,该学说认为:神经元的形状呈两极,细胞体和树突可以接受其他神经元的冲动,轴索的功能是向远离细胞体的方向传递信号。

1943年,法国心理学家W.S.McCuloch和W.Pitts在分析、综合神经元基本特征的基础上,提出了第一个神经元数学模型(M-P模型),开创了人类自然科学技术史上的一门新型学科——AN2的研究。从1943年到现在,半个多世纪过去了,AN2的发展历经波折,颇具戏剧性。今天,当神经网络和神经计算机已经发展成为一门多学科领域的边缘交叉学科的时候,当传统的智能学科,如人工智能、知识工程、专家系统等也需要发展而把目光转向AN2的时候,如实地介绍AN2当前面临的难题,客观地评价AN2的应用成果,探讨AN2研究的突破口,都是极有益处的。1.1.120世纪40年代——神经元模型的诞生

1943年提出的M-P模型采用神经节概念,把神经元看做双态开关,利用布尔逻辑函数对神经过程进行数学模拟。这个模型不仅沿用到今天,而且其创建方式一直启发后人发扬

并贯穿至今,直接影响了这一领域研究的全过程。

1948年,JohnVonNeumann(指令存储式电子计算机以他的名字冯·诺依曼命名)研究比较过人脑结构和指令存储式计算机的联系与区别,提出以简单神经元构成自再生自动机

网络。

1949年,心理学家D.O.Hebb提出神经元群、突触和返响回路的概念。他根据心理学中条件反射基理,研究AN2中合适的学习方式,探讨了神经细胞间连接强度的变化规律,

概括成著名的Hebb学习法则:如果两个神经元都处于兴奋激活状态,那么彼此的突触连接权就会得到增强。40年后,有人指出了Hebb法则的局限性。1.1.220世纪50年代——从单神经元到单层网络,形成第一次热潮

1958年,F.RoSenblatt提出具有学习能力的“感知机”模型,完成了从单个神经元到三层神经网络的过渡。

原型感知机由感知层S、连接层A和反应层R等三层构成,由于从感知层S到连接层A的连接权固定,从连接层A到反应层R的连接权具有因学习而变化的能力,因此它实质上只是一种只有输入层和输出层的单层神经网络。这种模型以强化控制系统作为“教师”信号指导网络开展学习,首次把理论探讨付诸工程实践,引起人们广泛注意并广为效仿。世界上许多实验室都仿制感知机用于文字识别、声音识别、声纳信号识别及学习记忆。1.1.320世纪60年代——学习多样化和AN2的急剧冷落

1960年,Widrow和Hoff提出自适应线性元Adaline(adaptivelinearelement)网络,这是在当时研究大脑自适应学习系统的基础上提出的单层前馈感知机模型。它使用的均方误差最小化算法与感知器的误差修正算法虽然形式上相同,但阈值符号发生了改变,使得两者的学习有着本质的区别:前者的数学基础在于超平面位置调整,后者的数学基础在于误差曲面上的梯度下降。20多年以后,人们发现Widrow的这些理论成了神经学习系统的基本法则。

1961年,Caianiello发表了关于神经网络数学的理论著作,提出了神经元方程,用布尔代数模拟机能的动力过程、分析并研制细胞有限自动机的理论模型。

1969年,美国人工智能学家M.Minsky和S.Papert出版了《Perceptrons》(感知机)一书,证明了单层神经网络甚至不能解决像“异或”这种简单运算问题,并且不能训练已发现的许多模式。甚至还有观点认为:把感知机扩展成多层装置是没有意义的。由于人工智能的巨大成就以及作者的权威和影响很大,使神经网络沿感知机方向的发展急剧降温。1.1.420世纪70年代——在低迷中顽强地发展

AN2出现低潮的原因有三个:第一,VonNeumann型计算机的发展处于鼎盛时期,运算速度和存储容量日益提高,软件需求日益增多,人们误以为发展了计算机的硬件及软件

就可以完成模拟人类的认知过程;第二,单层神经网络功能有限;第三,多层神经网络没有有效的学习算法。在研究基金锐减、大批研究人员转向的情况下,仍然有少数具有远见卓识的学者坚持不懈地持续研究工作。资料表明,在这十几年内提出的各类神经网络模型与20世纪五六十年代相比,种类还要繁多,结构还要复杂,性能还要完善。其中最主要的功能模型是联想记忆模型、认知模型和竞争性模型,例如Kohonen于1981年提出的具有竞争机制的自组织特征映射(SOM)网络。1.1.520世纪80年代——AN2研究热潮再度兴起

1982年,美国加州理工学院生物物理学家Hopfield采用全互连型神经网络模型,应用能量函数的概念,成功地解决了数字电子计算机不善于解决的经典人工智能难题——旅行商最优路径(TSP)问题,这是AN2研究史上一次重大突破,引起了全世界的极大关注。各国学者纷纷跟随其后介入神经网络领域。

1983年,Sejnowski和Hinton提出了“隐单元”概念,推出大规模并行处理的Boltzmann机,使用多层神经网络并行分布改变各单元连接权,克服了单层网络的局限性,为神经网络进入非线性处理领域奠定了基础。随后,Fukushima将单层感知机增加了隐层,通过抑制性反馈和兴奋性前馈作用实现自组织学习,从而使多层感知机实现了联想学习和模式分类识别。为了给AN2的发展扫清障碍,彻底清除人们对多层感知机网络的疑点,1986年,Rumelhart和McClelland提出多层前馈网络的反传学习算法,简称BP算法,该算法从后往前修正各层之间的连接权,否定了1969年对多层网络的错误结论。自那以后到现在,BP算法成为应用最广、研究最多、发展最快的算法。

1987年6月21日至24日,第一届世界神经网络会议在美国SanDiego市召开,标志着AN2研究已遍及全世界。从1988年到现在,学术活动、研究机构、专著、专刊越来越

多,有敏锐洞察力的其他学科学术杂志也纷纷大量刊登AN2的研究文章。1.1.620世纪90年代——再现热潮,产生许多边缘交叉学科

进入20世纪90年代后,AN2的各类模型已达几十种,与之相伴的是大量出现的边缘交叉学科。其中形成的主要学科有以下几种。

1)脑科学和神经生理科学

人们已不再满足于对曾为AN2做出贡献的长枪乌贼、小白鼠、海马等一类低等智能动物的研究,直接探讨人脑智能结构体系,研究如何通过自组织将神经元群体转化为高度有序的系统。尽管目前还不能充分解释大脑的学习和记忆机理,还不能完整绘制大脑思维的控制结构,但仍然在神经结构特点和信息活动特点等方面取得了积极进展。

2)计算神经科学

计算神经科学是计算机科学与神经科学结合的产物。计算神经科学立足于试验、理论和计算三大支柱,通过建立脑模型阐明神经系统信息加工原理。它的研究方法是将智能活动和行为过程中整体水平、细胞水平和分子水平进行数学概括,寻求规律和算法,用计算机或AN2模拟,寻求如何表达和处理神经信息及智能活动的变化规律。当前,对于学科中涉及的PDP(并行分布处理)理论讨论得十分热烈。

3)数理科学

AN2的学习与训练实质上是网络非线性动态特征方程的迭代求解,因此必须先行提供数学工具和物理意义。需要建立随机连接的网络状态变化变迁方程、联想存储模型容量和

回忆过程的统计动态方程、自组织激励方程。此外,讨论收敛性、Lyapunov意义上的稳定性、局部或全部最优解等,都是至关重要的。而物理上的一些概念,如熵、混沌、最小能量函数等,也不可缺少。

4)思维科学和认知科学

思维科学和认知科学是关于人类思维规律和认知方式的科学,研究的主体是人类在抽象思维、形象思维、灵感思维和社会思维活动中,对外界信息的感悟、知觉、推理、思考、意识、心灵等一系列心理认知和语言表达。认知科学中的连接主义原理已为AN2学界接受并广为引用。例如,按照这一原理,神经网络中所有神经元的数字化活动形成一个巨大的状态空间,包括连接权在内的控制器作用方程都可以按照学习规则训练权重。因此,现有的神经网络模型就能够供人们选择,有针对性地而又极为方便地移植到以状态变量描述的现代控制系统中,形成名符其实的智能系统。

5)信息论和计算机科学

信息的分析、综合方法如何用在AN2的联想存储之中,是一个需要解决的问题。在计算机科学领域,一方面AN2的算法要可靠“过渡”到VonNeumann计算机上仿真运算,

另一方面,构成模拟人类智能活动的神经计算机成为新的时尚。1.1.7进入21世纪——实现机器智能的道路漫长而又艰难

在今后的若干年内,AN2从理论上、实践上和应用上呈现出如下发展趋势:

(1)理论上重点在对模型和算法进行探讨,建立AN2各种不同特性的模型并分析其功能。算法的探讨包括拓扑结构、网络容量、稳定性、收敛性、复杂性、输入模式样本的致

密性。现在的问题是:对各种模型及算法的构成及性能评价,缺乏评价体系,只能依靠模拟仿真结论一个一个地具体分析,没有严密、科学的一般规律和方法。

(2)实践上重点在使用硬件制作神经网络和神经计算机,但困难重重。这迫使人们不得不在今后相当长的一段时间内利用VonNeumann计算机模拟,无法对比两种不同类型的计算机运行结果。

AN2研究面临上述两个困难,制约和影响到它的应用。

(3)应用上希望早日突破。AN2的研究及应用已势不可挡地日益渗透到模式识别、反馈调节、智能仪表、模糊控制、信号处理、系统辨识、模糊判决、知识处理、组合优化、

专家系统、过程自动化、故障诊断、自动检测等领域,并且和它们密切结合形成新的分支,如模糊神经系统、神经网络模式识别等。但是另一方面,分析和统计在这些领域内的应用论文,可以看到如下几个鲜明特点:①神经网络能够解决传统技能如人工智能、PID控制等或其他方法能解决的一些问题,即对工程界而言,增加了一个仅仅有很大潜力的解决问题的方法。尽管仿真结果表明:在时域或频域的某一或某些指标性能对比上,神经网络的结果优于其他方法,但没有在一切系统行为的指标上神经网络方法全部占优势的报道。

②迄今为止基本上没有见到只能用AN2解决,而不能用现有其他任何方法完成的课题,即AN2在工程上还没有显示出不可替代的优越性。因此人们讨论较多的问题就是AN2突破口在哪里?需要多长时间才能找到突破口并取得突破?③越来越多的人清醒地认识到:用AN2实现机器智能的道路是漫长而又艰难的,急功近利是不现实的,短期内没有可能取得实质性突破。与此同时决不能放弃AN2研究、重蹈20世纪70年代的覆辙。

④AN2中的人工神经元和诸如Adaline这一类单层线性网络,因其具备PID功能而成为反馈控制系统或智能仪表的一部分,但目前的应用基本上停留在仿真层次上。想使它们进入实用阶段,还需要解决它们之间功能原理上的沟通、连接和接口。把三层或三层以上的AN2用于非线性鲁棒控制或测量,探索的时间将更长。⑤从1956年开始的人工智能研究,在25年内取得了骄人成绩,它所依循的传统研究方法建立在“基于符号假设”基础上,突出了输出与输入之间的逻辑关系、忽略信息传递过程中的网络结构特点,曾经很迅速出了成果。但对于复杂模式识别、景物理解、过程自动化适应性随机调节、非线性鲁棒测量中的不完整信息处理、非线性动态运行不完全知识结构的自动修复、同一语系中不同方言理解等等,常常感到吃力。如果把人工智能的成功经验用到神经网络,与神经网络相结合,发挥各自优势,取长补短,也许是通往智能系统的成功之路。⑥绝大部分加盟AN2的论文作者原本是不同领域内的专家学者,他们力图把模拟人类高级智能行为用于本领域遇到的一些难题,把希望寄托在AN2上,从而踏入神经网络高新领域。今后若干年内,AN2队伍扩大的趋势还将继续下去。这是AN2兴旺发达的标志之一,也是AN2必然成功的重要原因。比如,首届中国神经网络学术大会于1990年在北京

召开时,联合支持的我国国家一级学会仅有8个;而1996年在成都举行的第七次中国神经网络学术大会,联合支持的我国国家一级学会就有中国自动化学会、中国电子学会等15

个。

2006年8月5日,第十六届中国神经网络大会(CNNC2006)暨首届中国人工免疫系统专题会议(CAISC06)在哈尔滨工程大学召开。这次大会由中国神经网络委员会、中国电子学会、IEEEComputationalIntelligenceSocietyBeijingChapter主办,哈尔滨工程大学承办,上海海事大学协办。该系列会议每一年举行一次,现已成为国内神经网络领域最主要的学术活动。此次会议主要是为神经网络学习及相关研究领域的学者交流最新研究成果、进行广泛的学术讨论提供便利,并且邀请国内神经网络及人工免疫系统领域的著名学者做精彩报告。神经网络系统理论是近年来得到迅速发展的一个国际前沿研究领域,它通过对人脑的基本单元——神经元的建模和联结,来探索模拟人脑神经系统功能的模型,并研制一种具

有学习、联想、记忆和模式识别等智能信息处理功能的人工系统。神经网络系统理论的发展对计算机科学、人工智能、认知科学、脑神经科学、数理科学、信息科学、微电子学、

自动控制与机器人、系统工程等领域都有重要影响。

1.2生物神经元和人工神经元

生物神经元是生物神经细胞的学术名称;人工神经元是生物神经元的智能仿生模型。

1.2.1生物神经元

有了生物神经元,才有生物的生命。

1.生物

生物是物体的一种。世间万物就其有无生命而言,可以分成生物和死物两大类。这两类物体在存在状态方面有本质的差别。从统计物理学的观点看,生的状态是一种非平衡的

动态状态,死的状态是一种平衡的稳定状态。

生物为了维持自己的生命,采用了通过消耗物质和能量获取非平衡环境的耗散结构,通过不断地摄取和排泄,不停地演绎着新陈代谢,生命得以在动态非平衡中继续和延续。

一旦非平衡状态被破坏,平衡稳定状态到来,生命便将终结。生物的生命系统,是一种在严酷的生存环境下磨练出来的信息处理系统。从求生存的需要出发,这种信息处理系统被分成相互关联又相互独立的三个子系统,它们分别是脑

神经系统、免疫系统和内分泌系统,如图1-1所示。这三个子系统对于生命来讲,是缺一不可的。图1-1生物的生命系统脑神经系统的信息处理全过程如图1-2所示,信息来自于外部世界,通过感觉(视觉、触觉、味觉、听觉、嗅觉)器官接收信息,并通过神经传至大脑,在大脑中经过处理加工后,再通过神经传至执行器官,执行处理的结果。

人工神经网络控制实际上是脑神经系统信息处理功能的工程实现。

大脑内部的模拟结构如图1-3所示,其基本组织是由生物神经元组合成神经网络而构成的。而神经元内又细分成离子通道和受体,它们具有蛋白质结构。图1-2脑神经系统的信息处理全过程生物神经元的研究成果揭示了大脑皮层活动的物理基础。大脑皮层内存在许多界限分明、功能各异的小柱状区域,这些柱状区域内含有个数众多的皮层神经元,无论是哪种感

觉器官的神经元,都有一个共同的动作特征:当感觉器官传入信息形成一定的冲动时,神经元将做出反应,产生单位放电效应,迅速把信号传递过去。柱状区域能把输入冲动进行

放大、调整和综合,并能在较短的时间内调动相邻柱状区域的神经元,迅速做出准确的判断,并把判断结果发送到执行器官。

大脑皮层内约有200万个柱状区域,每个柱的直径约为0.1~0.5mm,高度约为2~3mm,一次输入冲动所能影响的柱状能达数百万之多。图1-3大脑模拟结构

2.生物神经元的基本结构

脑神经系统是由1010~1012个神经元组成的、结构异常复杂的、永远开放的一种自适应系统。在一个三维的空间内,如此众多的神经元紧密组成一个神经网络,完成大脑独有的信息处理功能。

生物神经元是形成大脑的基本元素,如同砖瓦是构成高楼大厦的基本元素一样。房屋由砖瓦构成,但一堆砖瓦胡乱堆放在一起,并不能构成房屋,必须有设计图纸,按图施工才能形成千姿百态、形状各异的建筑。生物神经元组成生物神经网络、进而形成大脑也是如此。迄今为止,人们已经发现了视觉处理神经元群的纵列结构,而类似于记忆、思维等大脑神经网络独有的一些功能还不十分清楚,有待进一步研究。不同的生物神经元有不同的功能,例如味觉神经元和视觉神经元的功能就不同,形成功能不同的主要原因是它们在结构上有差异。从完成功能的角度来看,不同的神经元内部

有不同的结构。

另一方面,无论是哪种生物神经元,从传递、记忆信息的角度看,它们都具有着相同的结构。图1-4画出了生物神经元的基本组成。它由四部分组成,分别是细胞体、树突、

轴突和突触。图1-4生物神经元的基本组成

(1)细胞体:由细胞核、细胞质和细胞膜组成。细胞体是生物神经元的主体,是神经细胞的核心组成,是存储、加工处理信息的地方。生物神经元信息处理的奥秘在于神经膜,其基本功能是一种电气反应。

(2)树突(树状突起):细胞体的外围延伸呈树状突起,简称树突,是生物神经元的输入部分。树突从细胞体开始逐渐变细,各处都能与其它神经元的突触连通,从其它神经

元的突触到树突,实现信息的输入。

(3)轴突:细胞体外围的突起有多个,绝大部分突起是树突,可以接受其它神经元的信息,还有一个突起具有传递并输出信息的功能,这个突起称为轴突。

(4)突触:轴突的末梢形成突触,在突触处将信息输送给另一个神经元。突触与树突相连,这种相连仅仅是功能上的连接,两个神经元的细胞质在突触处并不连通。

生物神经元的突触按传递信息的方式分成两种:一种是电突触,传递特征是在相邻两细胞的低电阻通道中快速交换离子,使突触后电位发生变化;另一种是化学突触,借助化

学媒介传递神经冲动。如果按动作状态划分,生物神经元的突触可呈现出兴奋性和抑制性两种状态。当突触前端接收到的输入信息能使突触膜电位超越神经冲动的阈值时,这时的生物神经元处于“兴奋”状态;如果突触膜电位不能超过引起神经冲动的阈值时,生物神经元则处于“抑制”状态。

3.生物神经元的基本功能

生物神经元的基本功能有两个:学习与遗忘,兴奋与抑制。

1)学习与遗忘

生物神经元的学习功能表现在外界输入信息的变化能改变神经元之间的关系,换句话说,就是生物神经元能感知外界输入信息的变化。脑神经系统由大量的神经元连成网络形

式工作,神经元和神经元之间彼此的细胞质虽然不连通,但是突触和树突之间的连接强度,却可以随着外界输入信息的变化而变化。

神经元之间的相互关系能够记录下外界输入信息的变化,表明神经元不仅能学习,而且能学会。对于神经元自适应环境变迁的能力,从宏观上看,是生物适应环境变化的本能,生物力图在激烈、多变的环境中生存、繁衍;从微观上看,生物神经元能够学会原来不懂的东西。

“遗忘”事实上也是神经元适应环境、接受外界输入信息的一种“学习”,新的输入信息来了,多个神经元彼此之间的关系必将重新排定,那么原来排定的关系被冲刷,原来的信息被放弃,便产生了“遗忘”。

人脑神经系统除了具有“遗忘”功能外,最为奇妙的是还具有将“遗忘”的输入状态重新恢复的功能。事实上,这一功能依旧是“学习”,是重新拾回已经丢失的样本。

2)兴奋与抑制

神经元的兴奋状态表现在大量突触进行活动的时候。这时,神经元的膜电位升高,一旦超过动作电位(ActionPontential)的某一阈值,神经元被激励,产生神经冲动,呈现出类似于放电样的响应。神经冲动能够经轴突神经末稍传出,刺激与突触相连的另一神经元树突,完成信息的传递。“兴奋”是神经元产生神经冲动的一种宏观表现。并不是大量的突触在活动时都能处于“兴奋”状态。当神经元的活动使膜电位升高但没有达到动作电位的阈值时,神经元不会产生神经冲动,这种状态称为神经元的抑制。被抑制的神经元没有神经冲动从突触传出,也不会影响到另一神经元。

“兴奋”和“抑制”的分水岭是神经元活动时,动作电位是否超过某一阈值。也就是说,生物神经元时时刻刻都处在活动状态之中,这是生物体的一种生命特征,但是生物神

经元的活动有时“兴奋”,有时“抑制”。“兴奋”和“抑制”与输入信息的强弱、持续时间的长短等因素直接相关。脑科学研究表明,生物神经元之间传递信息的速度较为缓慢,以动作电位的形式产生的电脉冲频率不超过500Hz。兴奋时经过一个突触的延时时间约为0.5ms。当外界输入信息极强、或输入频率极高、或输入信息变化急剧反差越大时,生物神经元的兴奋抑制状态会发生急剧的转换,或者当一个兴奋状态尚未稳定、信息尚未从一个神经元的突触传递到下一个神经元的树突、而新的信息已经到来时,神经元的兴奋活动将一直处于一个激烈的动荡状态中,人们将产生刻骨铭心的记忆。

记忆,是生物神经元反复兴奋与抑制的必然结果;

回忆,是对生物神经元兴奋与抑制的历史记录做出的搜索。1.2.2人工神经元

人工神经元是生物神经元信息传递功能的数学模型。

将生物神经元的信息传递功能用数学模型描述,所能构成的数学模型是多种多样的,这是因为生物神经元传递信息的内涵极为丰富,涉及到的外界和内在因素很多。在构造数学模型的时候,必然要舍弃一些因素,保留并突出另一些因素,从而使人工神经元的模型也有多种。

设第j个人工神经元在多个输入xi(i=1,2,3,…,n)的作用下,产生了输出yj,则人工神经元输入、输出之间的关系可以记为

yj=f(xi)式中,f为作用函数或激发函数(ActivationFunction)。人工神经元模型如图1-5所示。图1-5人工神经元模型

f(xi)的表达形式不同,可以构成不同的人工神经元模型,其中比较典型的有线性函数、阶跃作用函数和Sigmoid作用函数等几种。

1)线性函数

作用函数f连续取值,随x的增加而增大:

f(x)=x

这种情况下的作用函数是线性加权求和的一种特例。设人工神经元的n个输入之间有如下关系:

x1=x2=…=xn=x各输入的权值(突触强度)之间有

w1j+w2j+…+wnj=1

则线性作用函数f(x)=x如图1-6所示。图1-6线性作用函数

2)阶跃作用函数

MP模型的作用函数就是阶跃函数,它有两种不同的表达形式,一种是对称硬限幅函数:另一种是硬限幅函数:它们所对应的模式都可以记为

3)Sigmoid作用函数

Sigmoid作用函数是一个将人工神经元的输出限制在两个有限值之间的连续非减函数,简称S型函数。它分为对称型和非对称型两种。对称型Sigmoid函数又称为双曲正切S型函数,其表达式为函数的渐近线为f(x)=±1,且函数连续可微,无间断点。在实际应用的不同场合,可选取不同的表达方式,其一般形式为或不同的β取值,引起曲线的弯曲程度不同。图1-7(a)和(b)给出了β=1和β=2时的曲线。图1-7双曲作用函数(a)双曲正切S型函数(β=1);(b)双曲正切S型函数(β=2)非对称型Sigmoid函数又称单极性S型函数。表达式为或该函数可以看成是双曲正切函数水平上移而成的,渐近线f(x)=0和f(x)=1,且连续可微,无间断点。图1-8(a)和(b)分别给出了β=1和β=2时的曲线。表1-1列出了常用的人工神经元模型作用函数。图1-8单极性作用函数(a)单极性S型函数(β=1);(b)单极性S型函数(β=2)

1.3生物神经网络和人工神经网络

1.3.1生物神经网络

脑神经系统由大量神经元连接成网络形式开展工作,连接方法被称为连接主义机制。不同的神经系统有不同的连接方式,例如视觉神经和触觉神经的连接方式理应有差别。对于神经控制的应用来讲,既无必要也无可能彻底分清不同神经系统的不同连接形式。

人们研究生物神经网络,除了知道它是一个多输入、多输出的分层次结构组织以外,在构成方面的进展极为缓慢。到目前为止,已经发现有视觉功能单元集合成的神经元群具有纵列结构,这些神经元群与信息的传递与处理密切相关。尽管在小脑控制回路、各神经网络的投射等研究方面有较为明显的成果,但是对于有关思考、记忆等神经网络的活动形态还不十分清楚,而这一部分恰恰又是生物神经网络处理信息最具诱惑力的地方。

1.生物神经网络的研究方法

1)分析法

分析法要求合乎情理的逻辑推断,它用各种人工的、自动的观摩手段近距离观察生物神经元的活动,重点研究生物神经网络的外特性。其研究成果极为丰富,例如观察人从小到大的生长过程,不难发现人们从婴幼儿时期开始,就能表现出强烈而又巨大的学习模仿能力,并且从模仿中还能表现出巨大的创新能力。很多人在别人的启发下能发掘出自己的活力,而这些活力又能感染其他人。由此不难得出结论:创新是生物神经网络在先天遗传因素已经确定的条件下,对客观环境有限制的一种自组织过程。生物神经网络在胚胎发育过程中已经建立起一些信息处理的通道,但是只有在出生后一段时间内维持可塑性。因此,创新能力不能遗传(发明家的儿子未必是发明家),但是却能在一定客观条件具备时被启发出来。由于创新离不开群体,因此人们的创新成果是全人类的共同财富。

2)重构法

重构法采用人工构造神经网络,使用数学、物理工具研究网络的功能变化、稳定性等。这种研究方法具有极大的局限性。可能出现的问题有两个方面:

一个方面是人工构造神经网络时,依据的是生物神经网络的基本性质,尤其是其外特性——生物神经网络的输入、输出间关系。但是由于这种关系的复杂性,导致人工神经网络的多样性。不同的网络设计者偏重于不同的性能,取舍的角度不同,致使已经问世的人工神经网络模型多达上百种。确切地讲,任何人都可以从模拟生物神经网络的性质出发,构造出一个人工神经网络模型来。

另一个方面是数学工具和物理工具本身存在着研究误差。就数学工具而言,它忽略了很多实际存在的一些具体因素,把模型理想化,提出了一些问题求解的边界条件,这种理想化的研究公式离真实情况总存在一定的误差。

3)计算机理论法

生物神经网络的工作原理类似于计算机的工作原理。由于网络是由生物神经元通过神经键有机结合形成的,而生物神经元的基本性能是兴奋和抑制,对应于计算机基本逻辑电路的“1”状态和“0”状态,因此人们自然联想到使用计算机理论研究生物神经网络。但是,现行的计算机从结构上是程序存储式的,与生物神经网络的组织结构有天壤之别。计算机以串行工作方式执行程序,而生物神经网络的并行处理功能是无庸置疑的。于是,计算机学界的并行处理理论也被人们用于神经网络的研究。在以串行运行特征为主的冯·诺依曼型计算机上实现并行处理功能,开展神经网络信息处理特征的研究,是一种无可奈何的选择,毕竟人脑神经系统与程序存储式电脑在信息处理方面至少存在五个重大差别,这些差别由“连接主义机制”的五个一般特征造成。

2.连接主义机制的一般特征

所谓“连接主义机制”,通常指大量神经元以独有的方式连接成网络时的连接方法。它呈现出的一般特征有五个:

(1)信息处理时的巨量并行性。输入信息数量虽多但能同时输入到生物神经网络,处理这些信息采用并行或同时进行,用空间复杂性降低时间复杂性,众多神经元同时做出响应,多输出且同时输出。

(2)信息的处理和存储一致性。突触既是信息处理的地方,也是信息存储的地方,在存取信息的操作过程中,寻址和存取同步进行,不存在先地址后内容的问题。神经元有了这种性质,即使地址丢失也不会丢失内容。宏观表现为经过回忆,能由部分信息恢复全部信息。

(3)接受信息的多样性。

生物神经网络不仅能接收二进制信息,而且更擅长于接收模拟信息、模糊信息和随机信息,并能机动灵活地处理这些信息。

(4)输出信息的满意性。生物神经网络输出的是满意解而不是精确解,以解决问题为前提。由于网络内电脉冲

的传播速度慢,经过突触还需延时,因此寻求满意解或相对最优解比寻求精确解更合乎逻辑,能节省大量的信息处理时间,在进行智能决策方面具有得天独厚的优越性。

(5)对外界环境变化的自适应性。由于外界环境的变化能改变突触的连接强度,因此生物神经元相互关系的改动恰是神经网络自组织、自学习的结果,从而能自动适应外界环境的变化。

对应地,程序存储式计算机在信息处理方面的五个一般特征是:

(1)信息处理时的集中串行性。计算机所能执行的指令条数是有限的,且一条一条指令依次执行。若计算机执行指令为无限条,则陷入死机状态。

(2)信息的处理和存储不一致性。存储器的地址和内容虽然都是二进制数,但它们的性质不同,要想访问存储器,

必须先寻址。存储地址一旦丢失,内容也会丢失。

(3)接收信息的单一性。由于计算机的基本电路是数字电路,因此仅能接收二进制信息。

(4)输出信息的精确性。输出的数据能够精确到小数点后数万位,但由于计算公式本身的误差,使得这种计算在很多情况下无意义。

(5)容错能力差。不适应外界环境的变化,易受病毒攻击而陷入瘫痪。

20世纪50年代,人们在研究人类的思维过程中发现,“思维”是一种推理过程,该过程以概念为核心进行定义。用符号代表“概念”,通过形式化语言用符号串操作描述。因此人们得出结论:“思维过程”和程序存储式计算机的解题步骤在信息处理方面是一致的,都是一种形式的“符号串”操作,都是“物理符号系统”的一个用例。以为程序存储式计算机就是生物神经网络的工程实现。

人们在认识上的上述误区在20世纪80年代得到了彻底的纠正。当时认识到了一个最简单的事实:计算机求解是一种单一形式的物理符号系统,但生物神经网络不是,思维过程是多种思维形式和多种知识交织的辩证统一。这种认识无疑是给人工神经网络“正名”,从此人工神经网络得到了全人类的共同认可。1.3.2人工神经网络

1.人工神经网络的基本功能

1)大规模并行处理功能

由大量人工神经元以独有方式构成的人工神经网络,能同时接收多个输入信息并同时传输,多个人工神经元能以表决的形式做出响应,人工神经网络的输出是多个人工神经元同时举手表决的结果,能自动完成“少数服从多数”。

人工神经网络的大规模并行处理功能实质上最大限度地利用了空间复杂性,有效降低了时间复杂性。

2)分布存储功能

生物神经网络利用突触连接强度的变化来调整存储内容,存储的过程就是处理的过程。人工神经网络利用人工神经元之间的连接权值(又称权值、权重或加权值)来调整存储内容,使存储和处理同时通过权重来反映。这种模拟的最大优点源于:在生物神经网络中,虽然每天有大量的脑细胞死亡,但丝毫不影响存储与记忆。脑部的局部损伤可能会丧失部分记忆,但日后完全可能恢复记忆。

3)多输入接收功能

人工神经网络的多输入接收功能体现在既能接收数字信息,又能接收模拟信息;既能接收精确信息,又能接收模糊信息;既能接收固定频率的信息,又能接收随机信息。

4)以满意为准则的输出功能

人类大脑积存有丰富的经验智慧,遇到突如其来的变故或从未遇到过的情况,能够有效地、在极短时间内迅速做出判断。人工神经网络对输入信息的综合以满意为准则,力求

获得最优解。

5)自组织自学习功能

人工神经网络必须具备自组织自学习功能,以期自动适应外界环境的变化。由于生物神经网络在先天遗传因素存在的条件下,后天的学习与训练能够开发出形形色色的功能,

因此要求人工神经网络的学习权值能够按照一定规律改变。人工神经网络模型建立以后,使用之前应当进行训练,训练就是一种学习过程,学习也应有一定的学习规则。

不同的人工神经网络,有不同的训练方式,有不同的学习权值,也有不同的学习规则。

人工神经网络的重点研究课题,就是权值如何训练及如何调整。

2.人工神经网络的基本特征

人工神经网络在信息处理方面具备生物神经网络的智能特征。

1)联想记忆

人工神经网络的联想记忆性质是由它的分布存储功能和并行处理功能产生的。网络的输出是众多人工神经元表决的结果。在人工神经元之间存在着协同结构和处理信息的集体行为。这样,在事先已有分布存储的信息和网络已有的学习机制前提下,通过学习训练,能从不完整信息出发获得完整的信息。联想记忆可分为自联想记忆和异联想记忆两种。

自联想记忆的数学定义为:设有n个样本矢量Xi,其中i=0,1,2,…,n-1,如果网络输入是

Xj=Xk+Δ

式中,Xk表示第k个样本,Δ是由干扰、噪声、样本缺损等原因引起的随机误差。如果该网络能够使输出成为

Y=Xk

网络就具有消除误差而获得样本输出的能力,这种能力就称为自联想记忆。具有自联想记忆性质的人工神经网络能够恢复一度丢失的记忆,能把图像复原、恢复已变的声音等。异联想记忆的数学定义为:设有两组样本Xi和Yi,如果Xi和Yi一一对应,输入信号中仍然含有误差信号Δ,输入形式为

Xj=Xk+Δ

但网络能够使输出Z成为

Z=Yk

2)模式识别与分类

人工神经网络能模仿生物神经网络的辨识功能,对输入样本有较强的识别与分类能力。分类的过程实际上是把输入样本归到不同区间。找出符合分类要求的分界线,就能识别不同的输入样本并确定该样本的归属。

设网络的输入为Xi(i=0,1,2,…,n-1),样本归属于m类,输出Yj(j=0,1,2,…,m-1)属于m类中的某一类,网络的分类能力如图1-9所示。图1-9人工神经网络分类器设标准样本Sk(k=0,1,2,…,p-1)为已知,如果X∈Sk,则

上式表明,只要输入样本与标准样本匹配就可以归类。

3)I/O之间的非线性映射

人工神经网络能够实现从输入空间到输出空间的非线性映射,这种映射的实质是通过对输入样本的训练学习,使网络输出成为样本输出在L2范数意义下的逼近。理论上能以任意精度逼近任意复杂的非线性函数。

4)优化计算

优化计算不论采用哪种算法,其过程总是力图寻找一组参数,使得参数代入后的目标函数取得最小值。优化计算能够把一组样本的输入输出问题变为非线性问题,经过迭代法求解,待数值确定后,误差就可以达到允许的程度。

3.人工神经网络研究的基本内容

对人工神经网络的研究集中在三个方面:建模、学习方法和实现途径。

1)人工神经网络模型建模

建模就是构造人工神经网络模型。只有在建立了人工神经网络的模型以后,才能够讨论它的应用。建立模型需要考虑两个方面的因素,一个因素是人工神经元,它是建立模

型的基本元件;另一个因素是网络结构,即网络的连接方式。

构造人工神经网络模型时,对人工神经元的考虑主要有两个内容:一个是神经元的功能函数;另一个是神经元之间的连接。功能函数描述了神经元的输入、输出特征,它用数学形式集中概括了输入样本进入神经元、被激活及最后产生输出的全过程。提出不同形式的功能函数,将形成不同结构的神经元,直接导致人工网络的结构不同。

神经元之间的连接形式有很多,不同的连接形式将使连接的网络有不同的性质和功能。从目前现有广为流传的神经网络结构看,最基本的形式有前馈网络和反馈网络。其它一些连接形式可以由此而构建。

以前馈网络为例,前馈网络又称为前向网络,从输入到输出是一种开环形式的连接,无反馈出现。前馈网络的基本结构如图1-10所示。这种结构又称为拓扑结构。图1-10前馈网络的基本结构人工神经元在连接成前馈网络的时候,通常采用分层结构。接收输入信号的那一层叫做输入层,输出信号的那一层叫做输出层,中间传递信号的一层或几层叫做隐层,意即看不见的信号传送单元层。

输入层由若干个人工神经元组成,每个人工神经元称为一个节点。若干个输入节点构成了输入层,输入层仅用于表示多输入向量的输入情况。各层之间信号传递的规则是:

(1)第i层的人工神经元仅接受第i-1层的人工神经元输出信号;

(2)第i-1层的人工神经元节点可往第i层各节点输出,但输出的权值不同;

(3)第i层及其以后各层的人工神经元节点无反馈信号,只能前向输出。

网络输入层称为第0层,各输入节点无计算功能,仅表示输入信号的初始值。

隐层有N-1层,输出层有1层。隐层和输出层的各节点均具有计算功能,因此又可称为计算节点,计算方式就是节点输出与输入之间的关系。计算节点仅一个输出,但这一个输出可以同时送到下一层的多个节点作输入用,送到不同节点时允许有不同的权值。计算节点有多个输入,来自于上一层的不同节点。

输入层、隐层、输出层共有N+1层,它们构成的前向网络被称为N层前向网络。它们各自的节点分别称为输入节点、隐节点和输出节点。隐节点又可称为中间节点。输入层和输出层又被统一称为可见层。

2)有导师学习方法与无导师学习方法

有导师学习(训练)方法是指给出一些输入—输出样本对(Xi,Yi)并训练网络,使之尽可能地拟合这些样本,这些样本对通常称为训练样本对。

无导师学习(训练)方法是指只需要给出输入样本Yi,不需要给出对应的输出,网络会自动把输入样本按相似程度分类。以这种自学习方式工作的网络称为自组织网络,例如

Kohonen自组织映射就属于此类。

3)人工神经网络的实现途径

人工神经网络的实现途径有全硬件实现、全软件实现及软硬件结合实现等。第3章神经网络模型3.1

人工神经网络建模3.2感知器3.3BP网络与BP算法3.4自适应线性神经网络3.5自组织竞争型神经网络3.6小脑模型神经网络3.7递归型神经网络3.8霍普菲尔德(Hopfield)神经网络

3.1人工神经网络建模

3.1.1MP模型

MP模型是1943年由McCulloch和Pitts首先提出来的。它是一种较为典型的模型,突出了神经元的兴奋和抑制功能,设定了一个动作电位的阈值,把神经元是否产生神经冲动转化为突触强度来描述。所谓“突触强度”就是指突触在活动时所能产生神经冲动的强弱。

图3-1画出了MP模型的结构示意图。该图以第j个神经元为例,有n个神经元的输出信号x1,x2,…,xn作为输入。每个输入突触的突触强度分别为w1j,w2j,…,wnj,突触强度wij反映了第i个神经元对第j个神经元传递信号时的加权值。图3-1MP模型结构示意图人工神经元模型依靠突触输入xi和突触强度wij之间的运算关系建立。MP模型采用的是线性加权求和,神经元在n个突触进行活动时产生的动作电位为把突触强度wij模拟成突触输入xi的加权值,当突触强度越强时,该突触的输入对第j个神经元的动作电位影响越大。神经元的冲动是神经元的输出,用yj表示。如果用“+1”和“-1”分别表示神经元的兴奋和抑制状态,那么MP模型的作用函数可记为式中,θj是第j个神经元的动作阈值,sgn是符号函数:当神经元的动作电位Nj超越阈值θj时,神经元输出+1,处于兴奋状态;当Nj没超越阈值θj时,神经元输出-1,处于抑制状态。MP作用函数如图3-2所示。图3-2MP作用函数人工神经元模型有如下3个性质:

(1)i≠j,由于第j个神经元不可能自己对自身进行输入,因此第i个输入中不能包括第j个神经元。

(2)阈值θj可以看作是一个输入信号的权值,该输入信号和权值分别用x0和w0j表示,且x0=1,则有:

θj=w0jx0

于是式中,w0j=θj,x0=1。

(3)在需要考虑突触的延长作用时,神经元的作用函数应修正为t+1时刻的神经元冲动取决于t时刻的输入。人工神经元输出、输入之间的关系表达式决定了人工神经元具有PID调节功能。3.1.2Hebb学习法则

1949年,D.O.Hebb首先提出了神经网络的学习算法,史称Hebb学习法则。该法则的文字叙述是“神经元连接强度的变化与两个相互连接神经元的激活水平成正比”。这一学习法则源自于一个物理现象,就是当两个神经元都处在激活状态时,两个神经元之间的连接突触将增强。人们在生物能够形成“习惯”以及多次训练能够形成条件反射的观察中,看到了这一现象并把它归纳与总结。设网络中的第i个神经元对第j个神经元的连接如图3-3所示,传递信号时的权值为wij,连接强度的变化为wij,两个相互连接神经元的激活水平可以表示成ηyjxi,其中的η称为激活率(又称为学习率),激活率的大小将直接影响激活水平的高低。

Hebb学习法表示成

Δwij=yjxi

t时刻和t+1时刻的权值分别为wij(t)和wij(t+1),有

wij(t+1)=wij(t)+Δwij=wij(t)+ηyjxi图3-3两个神经元上式说明权值的调整与第j个神经元的输入输出乘积成正比。在批量出现的输入模式样本中,频率较高的输入样本将对加权值的调整产生较大影响。

Hebb学习法有以下四个特征:

(1)连接强度的变化与相邻两个神经元的输出乘积成正比,只要知道相连接神经元的输出,就能获得连接强度的变化。

(2)学习过程仅体现在信号前馈传送过程中,无反馈现象存在。

(3)是一种无导师学习,无须知道目标输出是什么。

(4)如果相连接两个神经元的输出正负始终一致,将使连接强度无约束地增长,为了防止这一状况出现,需要预先设置连接强度饱和值。

Hebb学习法则除了使用神经元在某一时刻输出信号乘积表示连接强度的变化外,还可以改进成使用差分形式。设t-1时刻两神经元的输出为xi(t-1)和yj(t-1);t时刻两神经元的输出为xi(t)和yj(t),则t+1时刻连接强度权值为:

wij(t+1)=wij(t)+η(yj(t)-yj(t-1))(xi(t)-xi(t-1))

wij(t+1)与前两个相邻时刻的神经元输出增量成正比。连接强度与每一时刻的输出或输出增量有关,反映了此时采用的神经网络结构为非线性结构。如果输出量与时间无关,这时的神经元就是线性神经元。但是线性神经元及由此

构成的线性神经网络存在表达能力有限的问题,不能真实模拟生物神经网络的信息处理特征。

为了说明Hebb学习法则的应用,现以线性联想网络为例说明其训练过程。设学习率η=1,连接强度矩阵初始化为0,用m个输入代入加权值调整公式后,得加权值调整矩阵的表达式:

若xk为标准正交矢量,则当网络的输入为xj时,网络的输出为考虑到xkT·xk=1,则表明神经元的输出就是网络的输出,对应每一个输入,Hebb学习法则将给出正确的输出结果。如果输入矢量xk不是标准正交矢量,则网络输入为xj时的网络输出为将Qk与yk比较后得知,当矢量xk非正交时,网络输出与神经元之间的输出有误差,误差的大小为输入模式的相关之和。现举一个实例来阐述如何利用Hebb学习法则设计线性联想网络。设神经网络的原型输入矢量为输出矢量为相应网络加权值调整矩阵为使用原型输入矢量验证加权值调整矩阵,网络输出为网络实际输出同于神经元输出,线性联想得以实施。

如果是非标准正交,需要对输出矩阵作规格化处理,即便如此,使用原型模式输入联想,设计加权值调整矩阵也只能使输出接近目标,而不能完全吻合。

3.2感知器

1958年,美国学者Rosenblatt提出只有一个神经元的神经网络模型,史称感知器或单层感知器,因不能解决异或运算问题,一度被束之高阁,这几乎断送了神经网络的发展。但随后出现的多层感知器不仅仅解决了异或问题,还能实现任意的二值逻辑函数处理,因而有力推动了神经网络的研究。在此基础上形成的多层前馈网络,已经成为当前静态神经网络最具代表性的研究模型。3.2.1单层感知器

单层感知器模型如图3-4所示,输入矢量X是一个n维矢量,仅有一个人工神经元,输出信号u是输入矢量的非线性作用函数,数值上等于各输出分量加权和并加一个阈值Q:感知器输出为若设Q=w0,x0=1,则上式成为图3-4单层感知器模型单层感知器的网络模型虽然与MP模型类似,但两个模型之间的差别在于连接权值的调整。MP模型的权值不能通过学习调整,是一种无导师学习。而单层感知器的权值可以通过学习调整,是一种有导师学习。单层感知器的学习规则如下:

(1)设输入样本连接权值wi(0)为一个较小的非零随机值,i=0,1,2,…,n。

(2)设输入输出样本对xj/yj,j=0,1,2,…,L,且xj=(x0j,x1j,…,xnj),其中x0j=1。

(3)输出样本dj作导师信号,选取如下的阈值函数:(4)感知器输出由下式给出:

(5)加权值按下式调整:

wi(t+1)=wi(t)+η(dj-yj)xij其中,η是学习率,取值范围为(0,1],不同取值影响到加权值调整快慢不同。

(6)学习在yj(t)=dj时结束,否则重选导师信号,从第(3)步再开始。学习一旦结束,输入输出模式样本将以连接权值和阈值的形式分布存储在网络中。这种单层感知器的学习规则对二进制神经元起作用,初始权值虽然小些为好,但理论上选取任意值都行。

单层感知器适用于线性分类,在多维样本空间中起到一个将两类模式样本分开的超平面作用。如果输入模式样本线性可分,学习法则一定收敛。如果输入模式样本线性不可分,则单层感知器的学习法则不收敛,也就不能正确进行分类。

先看线性可分的例子。设输入矢量为,网络模型如图3-5所示,则输出信号为这时二维平面上的两类模式呈现逻辑“与”关系,真值表如表3-1所示。图3-5网络模型将输入模式样本代入表达式中,有考虑到w0=-Q,Q是神经元的阈值,则有2Q>w1+w2>Q>0。表明总存在一组(w1,w2)满足上式。如果将输入模式样本(x1,x2)画在x1-x2平面上,则总可以找到一条直线,将“与”输入模式的4个样本隔开,如图3-6所示。图3-6隔开“与”输入模式样本隔开样本的直线方程可用

y=w1x1+w2x2-Q=0

或表示。凡具有线性边界的平面上二维模式识别都可以用单层感知器解决。将感知器看成一个二值逻辑单元,除了能实现“与”功能外,还能实现“或”、“非”功能。二维平面上隔开“或”、“非”输入模式样本如图3-7所示。图3-7隔开“或”“非”输入样本(a)实现“或”;(b)实现“非”设输入矢量,则感知器的输出可表示为逻辑“或”、“异或”的真值表如表3-2所示。将逻辑“或”关系用于感知器输出,有

w1·0+w2·0-Q<0,y=0

w1·0+w2·1-Q≥0,y=1

w1·1+w2·0-Q≥0,y=1

w1·1+w2·1-Q≥0,y=1

则有若取w1=w2>0,则有

0<Q<w1<2w1

可见,只要w1为正数,总可以找到一组w1、w2满足上式。

单层感知器不能实现逻辑“异或”关系。将“异或”关系代入输入表达式,有找不到(w1,w2)的任何一组满足上式。表现在x1-x2图上,找不出一根线能输出结果分类。“异或”结果如图3-8所示。图3-8“异或”的结果3.2.2多层感知器

1.多层感知器的结构

单层感知器由于只有一个神经元,功能单一,只能完成线性决策或实现“与”、“或”、“非”等单一逻辑函数。多层感知器是在单层感知器的基础上发展起来的,它由n层组成(n>1)。每一层有若干个非线性神经元,每个神经元就是一个单层感知器。多层感知器的结构如图3-9所示。图3-9多层感知器的结构(以n层为例)为分析方便起见,设第1层为输入层。输出信号的那一层叫输出层。输入层与输出层之间的各层叫隐层。

输入层是信号的起始点,没有函数处理功能,信号的出发点可以称为端口,不叫神经元。

隐层由若干层组成,每一层允许有不同数量的非线性神经元。

无论是输入层的端口,还是隐层或输出层的神经元,都可以叫做节点,对不同的层面,节点的名称不同。

输入层、隐层、输出层的节点分别被称为输入节点、隐节点和输出节点。各层之间的连接采用全连接方式,即第j层的某一节点有输出连接到第j+1层的每一节点,从输入到输出只有前馈连接,没有反馈连接。多层感知器形成的这种结构像一张网,因此多层感知器又有另一个别名,叫多层网。当隐层只有一层时,可称其为三层网,输入层、隐层、输出层各一层,且从输入层到输出层的编号依次为第1层、第2层、第3层。(编者按:由于输入层节点无神经元功能,在有些文献中把输入层、隐层、输出层各有一层的网络称为二层网,或隐一层网,而各层编号方法是:输入层为第0层,隐层从第1层开始依次编排,本书不用这种排法。)

2.多层感知器的功能

多层感知器虽然增加了一个隐层,但在功能运用上比单层感知器有了重大突破。概括起来,它有三个主要功能:

(1)实现任何一个逻辑函数;

(2)在模式识别中,识别任一凸多边形或无界凸区域,或者生成复杂的边界,划分输入空间;

(3)能逼近从Rn到Rm的任一连续映射。

定理如果隐层节点能够任意设置,用三层阈值节点的多层感知器能够实现任意二值逻辑函数。定理证明从略。

作为一种应用,可以看它如何求解异或问题。设三层网络如图3-10所示,设输入层和隐层各有2个节点,输出层有1个节点。图3-10三层网络输入层到隐层的连接强度为w1ij(i=1,2;j=1,2),隐层到输出层节点的连接强度为w2jk(j=1,2;k=1)。i、j和k分别是输入层、隐层和输出层的节点数。隐层和输出层节点的阈值分别是Qj1、Qj2和Qy。

隐层两节点的输出为

j1=f(w111x1+w121x2-Qj1)

j2=f(w112x1+w122x2-Qj2)

输出层节点的输出为

y=f(w211j1+w221j2-Qy)

如果神经元节点的作用函数选取阶跃函数:

则隐层和输出层节点的输出可分别表示为为实现逻辑关系,取三组连接强度加权值和阈值如下:w111=-1,w121=-1,Qj1=-1.2w112=1,w121=1,Qj2=0.8w211=1,w221=1,Qy=1.5由此确定出三层节点间关系,如表3-3所示,相应逻辑关系式为逻辑关系图及状态空间边界划分如图3-11和图3-12所示,图中说明了如何使用两个不同层面的平面来区分不同的类型。图3-11y=x1x2图3-12三层感知器解决异或问题(a)x1-x2-y三维空间;(b)x1-x2平面

3.3BP网络与BP算法

在1986年,Rumelhant和McClelland提出了多层前馈网络的误差反向传播(ErrorBackPropagation)学习算法,简称BP算法,这是一种多层网络的逆推学习算法。由此采用BP

算法的多层前馈网络也广泛被称为BP网络。3.3.1BP网络的基本结构

BP网络结构如图3-13所示,由输入层、隐层(中间层)、输出层组成,隐层可以是一层,也可是多层。每一层允许有不同数目的节点,隐层和输出层的每一个节点是一个神经

元,前一层的节点与后一层的节点采用完全连接方式,连接强度的加权值(简称权值)允许不同,权值越大表示该输入的影响越大。神经元的所有输入采用加权和的方式。输入、

输出向量分别用x和y表示,且x=(x1,x2,…,xn),y=(y1,y2,…,ym),表示输入层、输出层分别有n、m个节点。输入、输出向量分别是n维和m维。图3-13BP网络3.3.2BP算法及步长调整

BP算法由信号的正向传播和误差的反向传播两个过程组成。

正向传播时,输入样本从输入层进入网络,经隐层逐层传递至输出层,如果输出层的实际输出与期望输出(导师信号)不同,则转至误差反向传播;如果输出层的实际输出与

期望输出(导师信号)相同,结束学习算法。反向传播时,将输出误差(期望输出与实际输出之差)按原通路反传计算,通过隐层反向,直至输入层,在反传过程中将误差分摊给各层的各个单元,获得各层各单元的误差信

号,并将其作为修正各单元权值的根据。这一计算过程使用梯度下降法完成,在不停地调整各层神经元的权值和阈值后,使误差信号减小到最低限度。

权值和阈值不断调整的过程,就是网络的学习与训练过程,经过信号正向传播与误差反向传播,权值和阈值的调整反复进行,一直进行到预先设定的学习训练次数,或输出误

差减小到允许的程度。

1.标准BP学习算法的步骤

标准BP学习算法的步骤如下:

(1)用一个小的随机数初始化,例如用-0.1~0.1之间的一个随机数对权值进行初始化。

(2)选择S型函数作为神经元功能函数:

f(u)=(1+e-u)-1

其导数为每个节点的功能函数为式中,vk,j是第k层第i个神经元的输出,wk,j,i是第k-1层第i个神经元连接到第k层第j个神经元的权值。

(3)求网络目标函数J(t)。网络目标函数采用总误差平方和的指标衡量,设目标输出为dp,Jp(t)为第p组输入时的目标函数:将单个样本的误差平方和累积,得总误差平方和为网络目标函数J(t)用于评价网络学习状态。(4)事先确定误差值ε,将目标函数J(t)与ε比较,如果

J(t)-ε≤0

则算法结束,否则转入误差反向传播计算。

(5)误差反向传播计算。反向传播计算按梯度下降法进行,逐层调整权值。调整时取步长η为常值,从第i个神经元到第j个神经元连接权调整公式为步长η又称为学习率,是一个较小的正数。偏导数的计算方法如下:式中,uk,j是第k层第j个节点的输出。考虑到代入偏导数计算公式并层层递推计算,得上式表明求第k层输出节点的偏导数,能转变成对k+1层输出节点求偏导数,如此层层递推,直至输出层。输出层的偏导数为

在整个训练过程中,输入样本周期性进入网络,直至网络收敛,输出误差进入事先允许的范围之内。

2.连接强度加权值的调整

提高“标准BP学习算法”的收敛速度是长期以来研究的课题,其中有两种方法提高收敛速度较为有效,一种是调整连接权值,一种是调整学习率。

常用的连接强度加权值调整方法有两种:一种是逐个处理输入样本,另一种是批量处理输入样本。

逐个处理输入样本是对每一个输入样本完成连接权的调整,优点是调整速度快,立即见效,并且有助于逃离局部极小点,缺点是随机扰动随时存在导致精度不高。批量处理输入样本适用于高精度映射,这是因为参与训练的输入样本越多,每个输入对输出的影响越接近于实际情况,从而精度越高。使用误差反向传播处理成批输入样本时,连接权值的调整量由累加而成,方法是全部样本依次输入后通过累加实施,用数学表达式表示为式中,m是输入样本个数。无论选取哪一种调整连接强度加权值的方法,都希望在训练过程中,连接强度加权值不发生急剧变化,不引起训练过程振荡,使连接权值平滑变化。为了做到这一点,在权值表达式中增加一项,该项被称为惯性项,修改后的第p行连接权值增量表达式为式中第二项就是惯性项,ξ称为惯性因子,取值范围为[0,1]。若ξ取值为0,则本次连接权值的调整与前一步无关;若ξ取值为1,则前一步连接权的变化将全部施加到本次的调整上,必然会加快训练过程的收敛。ξ的通常首选值是在0.85~0.95之间。连接权值增量表达式是运用共轭梯度法运算的一种形式,共轭梯度法中的收敛系数既可以由算法在每一步计算中确定,也可以由用户选择。但无论哪种做法,其目的只有一个,就是既要收敛、避免振荡或陷入局部极小点,又要求收敛过程尽快完成。当训练过程处于目标函数曲线的平滑区间开展时,每一步的梯度将保持平稳,连接权增量表达式能进一步简化为

这意味着带有惯性项时的增量调整步长远大于不带惯性项的增量调整,由于ξ≥0,ξ越大,调整效果越显著。

3.学习率的调整

学习率η的大小直接关系到算法的收敛。η选择得足够小,有利于总误差极小变化,但学习进展的速度较慢;反之,η选择得足够大,虽然能够加快学习进程,但不利于收敛,容易产生振荡,或者陷入局部极小点,或者停止在误差函数的平稳段处。学习率的大小选择需要综合考虑,既要照顾到收敛性,又要兼顾到学习的速度。

左右学习率大小的上述两个因素中,首先应当考虑的是算法收敛性,在保证收敛的情况下尽快地提高学习速度,学习速度过慢的BP网络没有任何实用价值。调整学习率的具体做法是要改变学习率,使BP算法在按步骤进行的收敛过程中,每一步的学习率都将发生变化,而不是固定不变。学习率η固定不变的BP算法只能用来说

明多层前馈网络基本结构和工作原理。

学习率的改变要遵循一定的规律,这个规律就是每一步的步长尽可能大一些,但又必须保证训练过程不失稳定。从这一规律出发,实际操作可以采取不同的方法进行。其中最为简单的操作方法有两种:一种根据误差函数对学习率的梯度决定学习率的大小;另一种是按照误差函数的变化来决定学习率的大小。

4.根据误差函数对学习率的梯度来调整

设BP网络的学习目标函数为式中,k表示迭代次数,且每一个输入样本迭代一次;y表示网络的期望输出,y表示网络的实际输出;e表示期望输出与实际输出之间的误差。考虑到神经元的输出yi与输入xj之间的关系:学习目标函数对学习率ηij(k)的梯度定义如下:定义说明在第k时刻的梯度与目标函数对连接权在k-1时刻的梯度有关,表示多层网络中任意相邻两层间神经元之间的连接权调整都能对最终结果有影响。按照最陡下降规则,学习率的调整公式如下:式中,n是一个正实数,其取值大小反映了学习率步长。上式求偏导数的值可正可负。当目标函数的偏导数为正值时,反映出对wij的调整加快,相应学习过程也加快;反之,在连续两次迭代时,目标函数的偏导数改变符号,使得学习率调整值为负,学习过程也将减慢。

5.根据误差函数的变化来调整

按照误差函数的变化来调整,需要遵守的若干规则是:

如果误差函数在调整过程中向小的方向变化,表明新的误差比调整前一次误差小一些,学习率应当增加;

如果误差函数在调整过程中向大的方向变化,表明新的误差比调整前一次的误差大一些,学习率应当减小,当新误差与前一次误差之比大于1且超过一定数值时,学习率将快速下降。目标函数中每一个可调参数都允许一个独立的学习率,而一个学习率仅适合于一个权的调整,未必能适合其它连接权的调整。无论是固定不变的学习率,还是不恰当的选择,都可能导致BP算法收敛速度较慢,每一步迭代必然要求改变学习率参数。

前一次误差变化影响本次学习率可用下式表示:式中,a,b的取值满足

温馨提示

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

评论

0/150

提交评论