无法找到favicon icoyab19收视的站了,道底是怎么yab19原因照成com的

豆丁微信公众号
君,已阅读到文档的结尾了呢~~
初级测量放线工模拟试题
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
初级测量放线工模拟试题
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口赞助商链接
当前位置: >>
改进BP神经网络在模式识别中的应用及研究
南京理工大学 硕士学位论文 改进BP神经网络在模式识别中的应用及研究 姓名:周凌翱 申请学位级别:硕士 专业:模式识别与智能系统 指导教师:曹国
硕士论文改进BP神经嘲络在模式识别中的应用及研究摘要人工神经网络具有强大的非线性映射能力,已经被应用于模式识别、智能控制、图像处理以及时间序列分析等各种领域,它特有的自组织、自学习和高容错性等功能使得其在解决复杂的非线性问题时有独特的功效,成为国内外广泛关注的热点。 本文首先详细介绍了应用神经网络进行模式识别的发展概况,通过与传统模式识 别的比较,得出神经网络模式识别的优越性。针对已有的神经网络模式识别系统,本文介绍了该系统中使用最广泛的BP神经网络,通过对其关键技术及算法的研究,针对BP算法的不足,提出了BP算法的启 发式改进,同时,通过对遗传神经网络模型及其算法进行分析和研究,针对遗传算法的主要缺陷介绍了几种常用的改进类型。本文结合遗传算法对BP算法进行优化,建立了改进的GA.BP神经网络模型。最后,充分利用VC++和MATLAB两种语言的各自优势,进行混合编程,设计开发了基于GA―BP算法的遗传BP神经网络模式识别系统,并投入实际应用。并利 用该模型对两个实际的模式识别问题进行了模式分类训l练和测试,结果表明GA,BP 算法有效克服了网络训练时容易陷入局部极小值,导致网络训练失败的缺陷,提高了系统的泛化能力。关键词:模式识别,人工神经网络,BP算法,遗传算法 Abstract硕上论文AbstractArtificial Neural Network has great nonlinear mapping ability and it has been widely used in many fields suchasPattern Recognition,artificial controlling,image processing,SOtinae series analyst.Havingmanyspecial functions like self-organization,self-studyingand fault.tolerant,it has particular effects when processing complicated nonlinear problems, and it has been the hotspot at home and abroad.This thesis first introduces the development of pattern recognition using ArtificialNeural Network in details to get the superiority of Neural Network Recognition traditional pattem recognition methods.overThenonthe basis of existing NeuralNetwork Recognition system,the thesisintroduces the BP NeuralNetwork,whichis most widely used in the system.By studyingonthe critical technology and algorithm and focusingthe disadvantage of BPAlgorithm,andwe bring out the heuristic improvement of BP Algorithm.Meanwhile,by analyzingof studying the Genetic BP model and its algorithm,we introduce several common typesimprovements Thisaimingat the main defection of GeneticAlgorithm.thesis improves t11e BP Algorithm combined with Genetic Algorithmandestablishes the modified GA.BP Genetic Algorithm Model. Finally.by taking advantage of the twoprogramminglanguages,VC++andSystem basedMATLAB,thisonthesis designs the Genetic BP Neural NetworkRecognitionthe proposed GA.BP algorithm and puts it into operation.The Recognition System hasonbeen used to carr--ytraining and testing of two actual pattern recognition problems.Theexperimental results indicate that the GA.BP GeneticAlgorithmcandeal with the problem during theof the network training failure defection because of the partial minimumnetwork training,and canimprove the generalizing ability.KeyWords:PatternRecognition,Artificial Neural Network,BP Algorithm,GeneticAl_oorithm on 声明本学位论文是我在导师的指导下取得的研究成果,尽我所知,在 本学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发 表或公布过的研究成果,也不包含我为获得任何教育机构的学位或学 历而使用过的材料。与我一同工作的同事对本学位论文做出的贡献均 已在论文中作了明确的说明。研究生签名:j虱垄勤油年1cf月功日学位论文使用授权声明南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅 或上网公布本学位论文的部分或全部内容,可以向有关部门或机构送 交并授权其保存、借阅或上网公布本学位论文的部分或全部内容。对 于保密论文,按保密的有关规定和程序处理。研究生签名:同历釉 刚活粕加矽年占月媚 硕士论文改进BP神经网络在模式识别中的应用及研究1绪论迄今为止,模式识别技术在社会的各行业中都拥有广泛的应用。例如:(1)对各 种嵌入式系统如信息家电、手机、PDA等中进行人性化处理,进行语音识别、指纹 识别或汉字识别;(2)自动化仪器如自动搬运机、自动售货机、监视装置等;(3)医疗仪器上,如X射线摄像、样本检查分析、肠镜摄像、胃镜等;(4)在工业自动检测上的如零件尺寸的动态检查、包装、产品质量监测、形状识别、表面缺陷检测等;(5) 人工智能方面有无人自动驾驶、机器入视觉、邮件自动分检等;(6)军事上有卫星侦察、微光夜视、航空遥感、目标跟踪、导弹制导、军事图像通信等。随着人们对自动化智能系统要求的不断提高以及相关技术和器件的发展,模式识 别的应用范围变得越来越广泛,人们不仅要求自动化系统能够代替人类完成繁重单调或危险环境下的工作,更要求模式识别系统能使人们的生活更加方便和舒适,如智能 机器人、安全防伪系统、智能卡等等的出现。因而,模式识别技术所面临的挑战除了要求解决大数量模式类的识别和复杂畸变不变性识别的传统难题,而且开始了更复杂 的带有感性色彩的识别,诸如运动员训练及姿势校正,根据人走路的姿势识别人,对人的嘴形变化甚至面部表情的识别等等。 人工神经网络(Artificial NeuralNetwork,ANN)是当今最重要的模式识别技术,随着神经网络理论的不断发展,将会带来模式识别技术的提高和突破,从而进一步推动模式识别技术在各行各业中的应用,推动社会的进步。因此,开展人工神经网络在模式识别技术领域的研究和运用具有很大的潜力,同时也具有很大的魅力。1.1人工神经网络模式识别概述模式识别的任务是把模式正确地从特征空间映射至类空间,或者说是在特征空间 中实现类的划分。模式识别的难度与模式在特征空间中的分布状况密切相关,假如特 征空间中的任意两个类可以用一个超平面来区分,那么该模式是线形可分的,这时的识别比较容易。但实际应用中,模式的分布往往是很不规则的,这就要求所用的分类器能够在模式空间里形成各种非线性分割平面。其中,神经网络是解决非线性平面分割的较好方法。利用神经网络进行模式识别,首先需要根据具体模式识别问题,确定好使用的神 经网络;然后用一组分别代表不同类别的训练样本对神经网络进行训练,来修改神经 网络的权值和结构;最后用测试样本对神经网络测试其识别效果,如果达到实际要求 的标准,就可以利用该神经网络进行模式识别了,如果达不到,则仍需要重新进行训练。 1.绪论硕士论文1.I.1神经网络模式识别的发展与现状模式识别是信号处理与人工智能领域的一个重要分支,它己发展成为-I'-J独立的学科,并成为当代高科技研究及应用的重要领域之一。模式识别理论的发展与计算机 科学的发展是密不可分的,人们在研究中发现计算机科学随着电子技术日新月异的发 展,虽然取得了巨大的成就,但它对直接感知声音、文字、图像等外界信息则十分困难。因此,需要以神经网络、人工智能为核心开辟新的研究领域来解决这一难题。 作为一门活跃的边缘性交叉学科,人工神经网络的研究与应用己成为人工智能、 认识科学、非线性动力学等相关专业的热门课题。人工神经网络的应用涉及模式识别、联想记忆、自动控制、信号处理、计算机图形、优化、诊断等众多方面,取得了诸多令人瞩目的进步…。技术的进步包含两点内容:概念和实现方式。首先,必须有描述问题的概念,并 依据这些概念明确要解决的问题:这要求概念包含一种简单的思想并能引入相应的数学描述。但仅仅靠概念及其数学描述还不足以使新技术变成熟,除非能够通过某种方 式来实现其基本思想。人工神经网络的发展就包含了概念创新与实现方式的进步,尽 管其历程并非一番风顺11J。 神经网络领域研究的背景工作始于19世纪末。它源于神经生理学、物理学、心 理学的跨学科研究。代表人物有HermanVon Helmholts、ErnestMath和IvanPavlov,早期的研究工作主要注重于学习、视觉与条件反射等基础理论。 现代人工神经网络的研究起源于上个世纪40年代初期,Warren McCuUon和 Walter Pitts从理论上证明了人工神经网络可以计算任何算术和逻辑函数;他们还提出 了M.P人工神经元数理模型,人工神经网络的研究以此为标志拉开序幕。1949年DonaldHebb从心理学的角度提出了连接权值强化的Hebb学习法则,认为神经元之间突触的连接强度是可变的,这种可变性是神经网络学习与记忆的基础;该法则为构 造具有学习能力的人工神经网络模型奠定了基础,至今仍对神经网络有着相当重要影 响。1952年Hodgldn和Huxley建立了长枪乌贼巨大轴索非线性动力学微分方程,方程可以用来描述神经膜中发生的诸如自激振荡、混沌和多重稳定等非线性现象,因此具有重大理论价值。人工神经网络的第一个实际应用于1958年实现。Frank Rosenblatt提出了感知器网络及其联想学习规则,他与同事构造了一个感知器网络并将其应用于模式识别。试 验的成功激起了许多人对人I-i*经网络的研究兴趣,掀起了研究人工神经网络的第一 次高潮。1962年Bernard Widrow和Ted Ho型3J提出了自适应线性网络模型 (ADALINE),并提出了网络学习新知识的方法。神经网络的研究进入了一个新的高 潮。遗憾的是Rosenblatt和Widrow的网络模型都存在固有局限性,二人始终未能找 到能训练更为复杂网络的新学习算法。' 硕士论文改进BP神经网络在模式识别中的应用及研究受到当时神经网络理论研究水平的局限以及冯?诺依曼式计算机发展的冲击等因素的影响,神经网络的研究陷入了低潮。尽管如此,少部分有识之士依然继续着神经 网络模型和学习算法的研究,提出了许多有意义的理论和方法,为日后人工神经网络 的复兴奠定了基础。例如,1972年,Teuvo Kohonen提出了自组织神经网络SOM(Self-Organizing feature Map);1976年,Stephen Cn.ossberg提出了著名的自适应共振理论ART(AdaptiveResonanceTheory),并建立了自适应共振网络;1980年,KunihikoFukushima提出了新认知机(Neocognitron)。 到了1980年代,随着个人计算机与工作站计算能力的急剧增强,两个新理论的 提出对人工神经网络的复兴有重大意义。1982年,物理学家Hopfield提出的一种用于联想记忆和优化计算的反馈型网络模型,由于引入了“能量函数”的概念,使得网 络走向具体的电路实现得到了保证,从而大大推动了神经网络研究的发展,再一次唤 起人们对神经网络研究的兴趣14J。1986年,David Rumelhart和James McClelland等出版了((ParallelDistribmedProcessing))一书,从中提出了并行分布处理(PDP)理论,并对具有非线性连续转移函数的多层前馈网络的误差反向传播算法一一BP算法(Back Propagation Algorithm)进行了详尽的阐述和分析,解决了长期以来人工神经网络没有有效的权值调整算法问题。他们从实践上证明了人工神经网络拥有强大的计算能力,BP算法从此成为迄今为止最引人瞩目、应用最为广泛的人工神经网络算法 之一,BP神经网络也成为人工神经网络最为精华的组成部分。 1973年,Watanabe提出了模式识别最直观的概念,也就是使用模式子空间的概 念来设计不同类别对应的子空间,由不同类别聚类的子空间来实现模式识别。70年 代末,Kohonen提出了学习子空间法(LSM),0;a在此基础上又给出了平均学习子空间方法(ALSM)【5J,从而使子空间模式识别形成了较完整的体系,并将这种方法成功地应用在语音音素识别实验中。实际上,学习子空间方法是一种无教师学习的神经网络模式识别方法。1991年, L.Xu与E.Oia等人用大量并行结构的神经元来实现了此方法,从而将学习子空间方法与硬件结构形式的神经网络联系起来,使这项工作走向实用化【6】。 文献[3】中提出的自适应线性元件网络模型,就是为当时研究大脑的自适应学习系统而提出来的。由于60年代后期神经网络的研究陷入低潮,因此,Widrow将这一模型理论主要用于自适应信号处理的研究。80年代中后期,人们发现这些理论实际 就是神经学习系统的基本法则,并完全可以解决自适应模式识别问题。70年代,Anderson提出的盒中脑模型(BSB),Kokonen提出的自组织特征映射网络模型,Gross.berg等提出的自适应共振理论(ART)等等都为神经网络模式识别 理论提供了进一步的理论依据。可以说,几乎所有现有的神经网络物理模型都在模式 识别领域取得了成功的应用。神经网络理论所得到的进步都会为模式识别理论的发展 1.绪论硕上论文带来鼓舞,与此同时,模式识别理论的深入研究和进步又会大大推动神经网络理论的 发展。它们两者的关系是相互影响、相互渗透的。目前,国际上人工智能、神经网络都是热门的课题,这些理论的发展都会给模式识别理论带来新的希望。因此,开展神经网络模式识别理论的研究具有相当重要的价值和意义。1.1.2神经网络模式识别方法与传统模式识别方法的关系 神经网络模式识别与传统的模式识别在很多方面都是相互关联的,这种关联不仅在于它们都是试图从样本数据出发完成模式识别问题,更重要的是它们在方法上具有一定的等价关系。神经网络拥有强大的非线性映射能力,它能够把在低维高度非线性的输入空间变换到由其隐含层构成的高维输出空间,在这个高维空间中可以较容易找 到合适的判决表面,甚至变得线形可分。这与Fisher线性判别准则相对应,可以看作是Fisher线性判别的非线性多维推广。Fisher线性判别分析就是找出一种线性变换,并使变换后的Fisher准则函数最大。而线性的多维感知机,在其隐含层输出的空间中就可以实现该准则函数最大。当训练样本数趋于无穷大时,以使目标训练的多层感知机的输出为均方误差最小,在统计意义上是对样本贝叶斯后验概率的最小均方误差估 计。 1,1.3神经网络模式识别的特点 与传统的模式识别算法相比,人工神经网络有很多的不同和优势。它具有以下特 点: (1)函数逼近能力。神经网络的输入与输出可以看作一个函数映射。神经网络通过不断地调整节点权值,实现了在最小二乘误差条件下输入与输出的最佳逼近。(2)大规模并行协同处理能力。传统的计算机对信息方式的处理为串行处理。这 样处理的速度再快,处理的信息也是有限的。计算与存储被分成完全独立的两部分。因此,存储器和运算器之间的通道就成为了计算机运算的瓶颈,因而大大地限制了它 的运算能力。而神经网络中的神经元之间有着大量的相互连接,所以信息输入之后可以很快地传递到各个神经元之间进行同时处理(并行处理)。 (3)自学习、自组织性。目前基于符号推理的专家系统还不具备自学能力,即不 能在运算过程中自我完善、发展和创新知识。系统的功能取决于设计者的知识和能力。 神经网络具有很强的自学习能力,可以在学习过程中对自我进行不断完善和发展。 (4)联想记忆功能。神经网络可以看成是包含大量子系统的大系统,系统的最终行为完全由它的记忆功能决定,初态可以认为是给定有关记忆的部分信息。(5)具有很强的鲁棒性和容错性。在神经网络中,信息的存储不像传统的计算机 那样存在存储器的某一特定位置,而是分布式地存在整个网络中相互连接的权值上,4 硕上论文改进BP神经网络在模式识别中的应用及研究这就使它比传统的计算机具有较高的抗毁性【7】【剐。总之,人工神经网络对人的形象思维能较好地模拟,具有大规模并行协同处理能 力、较强的容错与联想能力、较强的学习能力。它是~个大规模自组织、自适应的非 线性动力系统。1.2本文研究的内容、目的与组织结构 本文主要研究BP神经网络在模式识别中的应用,探讨BP算法与遗传算法进行结合提高系统模式识别能力的方法,其主要目的在于提出~个改进的结合遗传算法的BP算法,为提高模式识别能力提供~个新方法。具体内容与组织如下: 第l章绪论,本章分析了模式识别的神经网络进行模式识别的方法,比较它与传统方法的异同,指出了神经网络模式识别的特点与优越性。最后,对本课题主要的研究内容和本文的组织结构做出简要的介绍。 第2章本章详细研究了神经网络模式识别的理论基础,说明了其实现的可行性。讨论了神经网络的生物基础、神经网络的模型结构及构成和其用于模式识别的可行性 理论与方法。 第3章本章通过对多层前馈网络中应用最广泛的BP算法的关键技术及其算法 的研究,针对BP算法的不足,提出了BP算法的三种提高其训练速度的改进方法。 第4章本章通过对遗传算法的研究,针对遗传算法的限制与不足进行分析,介绍了遗传算法的几种常用改进类型。第5章本章对遗传算法改进BP神经网络的优化策略进行深入的分析探索,提 出了结合遗传算法的BP算法――_GA.BP算法,并建立了相应的神经网络模型。第6章本章针对GA.BP算法相应的模式识别系统模型,进行软件开发。探讨了 开发过程的几个关键问题,介绍了整个系统,并对关键功能模块进行了说明。利用开发的软件对两个实际的模式识别问题进行了模式分类训练和测试,结果表明GA―BP 算法有效克服了网络训练时容易陷入局部极小值,导致网络训练失败的缺陷,提高了系统的泛化能力。第7章总结全文的研究成果,并对今后的研究问题和方向提出了展望。 2人_亡神经网络理论摹础硕:l:论文2人工神经网络理论基础2.1生物学启示在复杂的人脑里,包含着约千亿个神经细胞和胶质细胞。其中80%为胶质细胞,它们主要负责供应脑的营养工作。其余的神经细胞总数大约为10¨个,它们是神经系统的结构和功能单元,因此又称为神经元【9】,大脑皮层神经元的基本结构如图2.1所 示。神经元负责接收或产生信息,传递和处理信息。 树突细胞核2.1神经元结构图人工神经元的研究源于脑神经元学说,神经元是由细胞体、树突与轴突组成。树 突是树状的神经纤维接收网络,它相当于细胞的输入端,负责将电信号传递到细胞体。 细胞体是神经元的主体,负责对输入信号进行整合并进行处理。轴突是单根长纤维, 它把细胞体产生的电化学信号传到其它神经元,相当于细胞体的输出端。一个神经细 胞的轴突与另一个神经细胞树突的结合称为突触。神经元的排列和突触的强度(由复 杂的化学过程决定)确定了神经网络的功能。 一些神经网络结构是与生俱来的,而其它部分则是在学习的过程中逐渐形成的。 在学习的过程中,将会陆续产生一些新的连接,同时一些连接则会消失。神经结构在 整个生命期内不断地进行改变,以适应环境。例如,现在已经确认,新记忆的形成是 通过突触强度实现的,认识一位新朋友面孔的过程中就包含了各种突触的改变过程。 一般认为,包括记忆在内的所有生物神经功能,都存储在神经元及其之间的连接上。 学习被认为是在神经元之间建立新的连接或对已有的连接进行修改的过程。既然我们 已经对生物神经网络的工作机理有了一定的了解和认识,那么能否利用一些简单的人 工“神经元”构造一个小系统,然后对其训练,从而使它们具有一定的有用功能呢?6 硕士论文改进BP神经网络在模式识别中的I煎用及研究本文正是基于生物神经网络的工作机理进行人工神经网络的构造,并对其进行训练, 使其具有模式识别的能力。2.2神经元模型2.2.1传统神经元模型不论什么样的神经网络模型,神经元都是其一个最小的信息处理单元。到目前为 止,人们已经建立了数百种人工神经元模型。但最常用的神经元模型仍然是最早提出的MP模型【l 01。神经元是一个多输入单输出的信息处理单元,而神经网络就是由多个神经元加权连接而形成的网络。虽然单个神经元只能进行非常简单的信息处理,但多个神经元连接而成的网络就具有了强大的计算能力。神经元神经网络计算表现为神经元之间的互相作用,因此,通过改变神经元之间的连接方式和连接强度就可以将神经 网络的计算效果改变,其中,两个神经元之间的连接强度值由一个实数表示,该实数 称为连接权值。神经元之问的连接形式和连接权值通常由神经网络学习过程决定。由 于神经元类型、神经元连接方式和学习方式不同,设计形成了各种不同的神经网络模 型。人工神经元是对生物神经元的一种模拟和简化,它是神经网络的基本处理单元。图2.2给出了传统人工神经元结构模型图…】,一般由三部分组成:图2.2传统神经元结构模型 (1)一组连接,对于第f个神经元,x,为其第.,个输入信号(表示互连神经元的刺 激以及外界的直接刺激),各连接线上的权值W,,表示连接强度,权值为正表示激活, 为负表示抑制;(2)-个求和单元罗,用于求取各输入信号的加权和,即把输入信号的作用结合起来,形成它们的总效果,称为净输入(Net Input);(3)一个功能函数.厂(,.c),该功能函数起映射作用并将神经元输出幅度限制在一定 范围内(一般限制在(o.1)或(一1,+1)之间)。以上作用可分别用下列数学式表达: 硕士论文刀,:窆kx,)j=l(2.1)Y,=厂0-0,)口(2.2)其中,X,为神经元的输入信号,胛j为净输入,0,为阀值,Y,为神经元的输出信丐。2.72功能函数 图2.2中的功能函数厂(宰)可以是玎的线性或非线性函数。可以用特定的传输函数满足神经元要解决的问题。功能函数的形式多种多样,在解决实际问题时,根据不同的实际需要,可以使用 不同的线性或非线性函数。比较常用的函数形式有以下三种: (1)硬极限函数:当函数的自变量小于0时,函数的输出为O;当函数的自变量大 于或等于0时,函数的输出为1。如图2.3(a)所示。 (2)线性函数:线性传输函数的输出与输入相等。如图2-2(b)所示 (3)对数.S形函数:该函数的输入在(.∞,+∞)之间取值,输出则在0到l之 间取值,其数学表达式为:a=l/(1+em),如图2.3(c)所示。』J。+l‘H,‘+l●●●-7。7/’一,|/一一一―/700O7-17-1-1口=hardlim(n)(a)a=purelin(n)(b)a=logsig(,7),(c)图2.3常用传输函数2.2.3多输入神经元模型 通常,一个神经元有多个输入。具有R个输入的神经元结构如图2.4所示。PJ P2PR图2.4多输入神经元结构模型 硕±论文萆递BP种§HF在模武识别。的m月驶研究在该模型中,输入Pi,P",P^分别对应极值娅阵Ⅳ的元素w¨,¨∞.wl R,该神 经元存在一个偏置值b,它与所有输入的加权和累加,从而形成传输髓数,的净输入”:"=”jfpf+”’2P?++”}P,A+6(2.3)“式2 3”可以写成矩阵形式:月=叭16从而得到多输入神经元的数学表达式为:(2 4)a=厂咿已+6 J有一行元素的矩阵,p是只有列元素的矩阵,b,一,d为标量。(2 5)∥为杈值,b为偏置值,F为输入,,为传输函数,n为净输入。其中,∥是只 为了便于用数学矩阵工具来描述神经网络,本文最用常规的方法表示权值矩阵元 素的下标。权值矩阵下标的行下标表示权值相应连接所指定的目标神经元编号,列下 标表示权值相应连接的源神经元编号。例如:Ⅵ。的胄义为从第四个神经元到第一个 神经元的连接。 我们可以绘制一个由多个神经元组成的删络,每个神经元都有多个输入。并且, 一个网络还可以有多层神经元,然而.当一个网络的神经元特别多时,神经元之间的 连接将十分复杂,不便于进行分析,而且对连接的详细描述也会掩盖网络的主要特征, 因此,本文将采用简化符号柬表示神经元。多输入神经元的简化符号表示如图2.5所示。图2.5具有R个输入的神经元的倚化符号表示在该圉巾,左边垂直的实心条表示输入向量P,P下面的变量丑表示P的维数, 也即输入是由尺个元素组成的一维向量。这些输入被送入权值矩阵W,阡’为1行尤列。 常量1则作为输入与标量偏置值6相乘。"是传输酮数f的净输入,它是偏置值b与 矿。的和。这种情况下,神经元的输出d是一个标量。如果网络有多个神经元,那么 网络输出则是一个向量。2,3神经网络结构神经元和神经网络的关系是元素与整体的关系。神经元的结构非常简单,工作机 理也不深奥;但是用}自经元组成的神经网络却很复杂.其功能也十分奥妙。通常所说9 2人工种经嘲络理论基础硕士论文的神经网络结构,主要是指它的连接方式。从拓扑结构上考虑,神经网络属于以神经元为节点,以节点间的有向连接为边的有向图。其结构从大体上可分为层状与网状两 大类:层状结构的神经网络由若干层组成,每层中有一定数量的神经元,相邻层中的 神经元为单向连接,同层内的神经元不连接;在网状结构的神经网络中,任何两个神 经元之间都有可能双向连接。为了进一步了解网络结构的组成,我们先对多个神经元 组成的单层结构的神经网络进行讨论。 该神经网络的结构特点是:每个神经元都可以接受外来输入,然后对输入进行有 效处理,最后将结果输出,神经元相互之间没有任何连接,互不影响。由S个神经元 组成的单层结构如图2.6所示:PtPzP3:●PR图2.6 S个神经元组成的单层网络可以看出该层包括权值矩阵矽、累加器∑、传输函数.厂、偏置值向量b和输出向量口。输入向量P的每个元素均通过权值矩阵形和每个神经元相连。每个神经元有 一个累加器∑、一个偏置值b,、一个传输函数.厂和一个输出a,。将所有神经元的输出结合在一起,可以得到一个输出向量口。 输入向量通过如下权矩阵∥进入网络:W1.2●R●W=W2.2:●月(2.6)●●●●Ws。2Ⅵ№;%足如前所述,矩阵形中元素的行下标表示该权值相应连接输出的目标神经元,而 列下标表示该权值相应连接的输入神经元。这样可以将S个神经元组成的单层网络用 数学形式表达如下:口=/眈+6)10(2.7) 顿±论文a避BP神经月络在樽武识Ⅲ中的Ⅸ用&研究∥为SxR矩阵,R为每个神经元的输入个数,,为网络的输八向量,口和b是 长度为s的向量。由此得到具有S个神经元、R个输入的单层网络的简化符号如图2所示。7图27 S个神经元组成的单层网络简化表示典型神经网络一般具有下列几种网络结构: (1)前馈网络(前向网络)。前馈网络一般包括许多层,其特点是只有前后相邻两 层之间的神经元相互间存在连接,各,p经元之间不存在反馈。每个神经元可以从前一 层接收多个输入,而只有~个输出送给下一层的各神经元。 三层前馈网络分为输入层、隐台层与输出层。在前馈网络中有计算功能的节点称 为计算单元,而输入节点无计算功能。 (2)反馈厢络。反馈网络从输入层到输出层有反馈,即每个节点可同时接收外加 输入和来自其它节点的反馈输入,其中也包括神经元输出信号引回到本身输入构成的 自环反馈。这种网络结构中,每个节点都表示一个计算单元。 0)相互结合型网络。这种网络在任意两个神经元之间都可能存在连接。Hopfield 网络和Boltzman机均属于这种类型。在无反馈的前向网络中,信号一旦通过某个神 经元,该神经元的处理过程就结束了。而在相互结合网络中,信号要在神经元之问反 复传递多次,网络处于种不断改变状态的动态之中。从某初试状态开始,经过若干 次的变化,才会达到某种平衡状态。根据网络的结构和神经元的特性.网络的运行还 有可能进入周期振荡平衡状态I】q。2.4用于模式识别的神经网络模型2.4.1神经阿络模型目酊,神经网络已有几十种不同的模型。人们按不同的角度对神经网络进行分类 通常可按5个原则11”进行神经网络的归类: (1)按照网络的结构区分,可分为前向网络和反馈网络; (2)按照学习方式区分,可分为有教师学习和无教师学习网络: (3)按照网络性能区分,可分为连续型和离散性网鲻。随机型和确定型网络: 2人工神经网络理论基础硕士论文(4)按照突触性质区分,可分为一阶线性关联网络和高阶非线性关联网络; (5)按对生物神经系统的层次模拟区分,可分为神经元层次模型,组合式模型,网络层次模型,智能型模型和神经系统层次模型。通常,人们考虑较多的是神经网络的互连结构。一般而言,神经网络有分层网络, 层内连接的分层网络,互连网络,反馈连接的分层网络等4种互连结构。在人们提出的几十种神经网络模型中,人们沼的较多的是Hopfield网络、Kohonen网络、BP网络和ART(自适应共振理论)网络。 (1)Hopfield网络是最典型的反馈网络模型,它是目前研究得最多的模型之一。 Hopfield网络是由非线性元件构成的全连接型单层反馈系统,它由相同的神经元构成,并且是不具学习功能的自联想网络,它需要对称连接,这个网络可以完成制约优化和联想记忆等功能。(2)Kohonen网络是典型的竞争型神经网络。它通常是由输入层(模拟视网膜神经元)和竞争层(模拟大脑皮层神经元,也叫输出层)构成一个两层网络,神经元之间存在 以“墨西哥帽”形式进行侧向交互的功能。因而,在输出层中,神经元之间有近扬远 抑的反馈特性,从而使Kohonen网络可以作为模式特征的检测器。 (3)BP网络是前向传播(Back Propagation)网络。它是一种多层前向网络,采用 了最小均方差学习方式。在手写字体的识别、文语转换、语音识别、图像识别以及生 物医学信号处理方面已有实际的应用,是一种最广泛应用的网络。BP网络需有教师 训练。 (4)AI玎网络是一种自组织网络模型。它是一种无教师学习网络,能够较好地协 调适应性、稳定性和复杂性的要求。在ART网络中,通常需要两个功能互补的子系统相互作用,这两个子系统称为注意子系统和取向子系统。ART网络主要应用于模 式识别,它的不足之处在于对转换、失真和规模变化较为敏感。2.4。2神经网络的学习方式神经网络的学习也称为训练,是通过神经网络所在环境的刺激作用调整神经网络的权值和阈值,使神经网络对外部环境做出反映的一个过程。能够从环境中学习并在 学习中提高自身性能是神经网络最有意义的性质,根据学习过程的组织方式不同,学 习方式可区分为:有监督的学习和无监督的学习。 (1)有监督的学习 对于有监督的学习,网络训练往往要基于一定数量的训练样本。训练样本通常由输入向量和目标向量组成,在学习和训练过程中,网络需要根据实际输出与期望输出的比较,进行连接权值和阈值的调整,通常将期望输出称为教师信号,它是评价学习的标准,最典型的有监督的学习算法是BP算法,即误差反向传播算法。 硕士论文改进BP神经网络在模式识别中的应用及研究(2)无监督的学习对于无监督的学习,则无教师信号提供给网络,网络能根据其特有的结构和学习规则,进行连接权值和阈值的调整,在该种方式中,网络的学习评价标准隐含于网络 内部。2.5神经网络模式识别系统2.5.1神经网络模式识别系统概述 神经网络是由大量神经元广泛互连而成的网络。网络的信息处理由神经元之间的 相互作用来实现,神经网络的知识与信息的存储取决于神经元连接的权值和阈值以及网络结构。神经网络识别系统的输入层接受待识别样本的特征向量,经过各隐含层神经元的运算,最终将识别结果(待识别样本的种类数)从输出层输出,输出层的每个神经元代表一类,哪个输出神经元获胜(所谓获胜就是该单元的输出远大于其他单元的输出),该样本就是该输出神经元所代表的那一类。 神经网络的工作过程主要由学习期和工作期两个阶段组成。学习期就是对神经网 络的连接权值进行修改,工作期就是对于给定的输入进行计算,得到识别结果。若希 望神经网络识别系统识别准确,除了好的网络结构外,还需要有好的学习算法,即如何对神经网络的连接权值修改。学习过程是十分重要的过程,神经网络在此阶段通过学习样本或其它方法修改连接权值,使神经网络输出正确。神经网络识别是面向整个 特征记忆的,并非只根据某几个特征,只要大多数的特征是正确的,经各层神经元的 计算,对应的输出神经元还是能获胜的。因此,它有良好的容错能力。一般神经网络识别系统由预处理、特征提取和神经网络分类器组成【l 41。预处理就 是将原始数据中的无用信息删除,并对数据进行平滑和幅度归一化。由于神经网络识 别系统中的特征提取部分不一定存在,这样系统就被划分为两大类:第一类是有特征 提取的,这一类系统实际上是传统方法与神经网络方法技术的结合,这种方法可以充 分利用人的经验来获取模式特征并运用神经网络分类能力来识别对象。特征提取必须 满足提取后的特征能表示对象本身这一标准。第二类是无特征提取的,省去了特征提 取步骤,将对象模式直接作为神经网络的输入,这种方式下,系统的神经网络结构的 复杂度相应增加,神经网络结构要完全能够自己消除模式变形带来的影响。 选择适当的网络结构是构造神经网络分类器的第一要务:神经网络分类器的输入 就是模式的特征向量,神经网络分类器的输出节点应该是类别数。以字符识别为例,8个数字输出层就有8个神经元,每个神经元代表一个数字,隐含层数要选好,每层神经元数要合适,目前多采用一层隐含层的网络结构,然后要选择合适的学习算法, 这样才有良好的识另0效果。在学习阶段应该采用大量的样本进行训练学习,通过样本 2人工神经网络理论基础硕士论文的大量学习对神经网络各层的连接权值进行调整,使其对样本有正确的识别结果。这就像人对数字的记忆一样,网络中神经元就像是人脑细胞,权值的改变就像是人脑细胞的相互作用的改变,学习样本时的网络权值修正就相当于记住各个数字的形象,网络权值就是网络记住的内容,网络学习阶段就象人由不认识数字到认识数字反复学习的过程。因为神经网络是按整个特征向量的整体来记忆对象的,只要大多数特征符合 曾经学习过的样本就可识别为同一模式,所以当样本存在较大噪声时神经网络分类器 仍可正确识别。在识别阶段,只要将输入进行预处理、特征提取然后得到特征向量作为神经网络分类器的输入,经过网络的计算,分类器的输出就是识别结果【I 51。 2.5.2神经网络模式识别的典型方法在各种人工神经网络模型中,在模式识别中应用最广泛的也最成功的当数多层前馈网络和自组织网络。其中多层前馈网络多采用有监督的学习方式进行训练,通常有 以下两种应用方式: (1)多输出型 网络的每一个输入节点对应样本的一个特征,输出层节点等于类别数,一个输出节点对应一个类。在训练阶段,如果输入训练样本的类别标号是f,则训练时的期望 输出设为第f个输出节点为1,其余输出节点均为0。在识别阶段,当一个未知类别的样本作用到输入端时,考察各输出节点的输出,并将这个样本的类别判别为与输出值 最大的那个节点对应的类别。在某些情况下,如果输出最大的节点与其它节点输出的 差距较小(小于某个阈值),则被认为拒绝决策,这就是多层感知机进行模式识别的 最基本方式。 实际上,多输出型神经网络还存在许多其它的形式,上面这种方式只是其中的一个特例,把它称为“1-0”编码或“C中取1”模式。更一般地,网络可以有聊个输出节点,用它们的某种编码来代表一个类别。 (2)单输出型这种网络的每一个输入节点对应样本的某一特征,而输出层节点只有一个。为每一个类建立一个这样的网络(网络的隐含层节点数可以不同),对每一类进行分布训 练,将属于这一类的样本的期望输出设为l,而把属于其它类的样本的期望输出设为 0。在识别阶段,将未知类别的样本输入到每一个网络,如果某个网络的输出接近1 (或大于某个阈值,比如0.5),则判断该样本属于这一类;而如果有多个网络的输出均小于阈值,则或者作出拒绝,或者将类别判断为具有最大的那一类;当所有网络的输出均大于阈值时也可采取类似的决策方法。显然,在两类情况下,我们只需要一个单输出网络即可,将一类对应于输出l,另一类对应于输出0,识别时只要输出大于0.5则决策为第一类,否则决策为第二类;14 硕士论文改进BP神经网络在模式识别中的应用及研究或者也可以在两类之间设定一个阈值,当输出均在这个阈值之间时被认为拒绝决策。 自组织神经网络可以较好地完成聚类的任务,其中,每一个神经元节点对应一个 聚类中心,与普通聚类算法不同的是,所得的聚类之间仍保持一定的关系,也就是在自组织网络节点平面上相邻或相隔较近的节点对应的类别,它们之间的相似性要大于相隔较远的类别之间的相似性。因此可以根据各个类别在节点平面上的相对位置进行类另帕勺合并和类别之间关系的分析。 自组织特征映射最早的提出者Kohonen的科研组就成功地利用上述原理进行了芬兰语话音识别。他们的做法是,将取自芬兰语各种基本语音的各个样本按一定顺序轮流输入到一个自组织网络中进行学习,经过足够次数的学习后这些样本逐渐在网络节点中形成确定的映射关系,即每个样本都映射到各自固定的一个节点(在这个样本 作输入时,该节点为最佳匹配节点或具有最大输出),而映射到同一节点的样本就可 以看作是一个聚类。学习完成后,发现不但同一聚类中的样本来自同一音素,而且相 邻节点对应的聚类中的样本往往也来自相同或相近发音的音素。在识别时,对于新的 输入样本,将其识别为它映射到的节点所标的发音即可。 这种做法实际上是在非监督学习的基础上进行监督模式识别。其最大的优点就是,最终的各个相邻聚类之问是有相似关系的,即使识别时把样本映射到了一个错误 的节点,它也倾向于被识别成同一个音素或者一个发音相近的音素,这就十分接近于人的识别特性。2.6本章小结本章介绍了神经网络用于模式识别的理论基础。神经网络是一个模拟人脑功能和结构的网络模型。因此,本章首先从生物学启示入手,介绍了神经网络的基本组成单元――神经元的结构和功能;然后,介绍了神经网路的结构和学习训练的方法以及用于模式识别的常见神经网络模型和神经网络的学习方式;最后,介绍了神经网络模式 识别系统的组成及典型做法。 3BP神&H绢3B?神经网络BP网络在神经网络模式识别系统中的应用最为广泛,它是基于误差反向传播算法的一种具有非线性连续转移函数的多层前馈网络。由于多层前馈网络的训练经常采 月误差反向传播算法,人们常把多层前馈网络直接称为BP网络。 BP算法的基本思想是最小二乘法学习算法,它采用梯度搜索技术以期望使网络的实际输出值与期望输出值之间的误差均方值达到最小,这是一种可以避免统训平均 的递推算法。学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐含层运层处理后,传递至输出层。若输出层的实 际输出值与期望的输出值不符.则转入误差的反向传播阶段。误差反向传播是将输出 误差以某种形式通过隐含层向输入层逐层反传、并将误差分摊给各层的所有单元柬获 得各层单元的误差信号.此误差信号即作为修正各单元权值的依据。这种信号正向传 播与误差反向传播的各层权值修正过程是周而复始地进行的。权值不断修丁|三的过程,也就是网络的学习训练过程。此过程直进行,直到网络输出的误差减少到可接受的 程度或者达到预先设定的学习次数为止。3.1多层前馈网络的应用描述采用BP算法进行训练的多层前馈网络是到目前为止应用最广泛的神经网络,它 是具有一个输入层、一个或多个隐含层和个输出层的多层网络。隐古层和输出层上 的每个神经元都对应于一个功能函数和一个阀值,每一层上的神经元都通过权重与其 相邻层上的神经元互相连接。处于输入层上的神经元其阀值为零,其输出等于输入。 我们先通过分析一个多层前馈网络在模式分类的应用示例来了解BP神经网络的 模式识别能力。如图3 l所示为一个模式分类问题,其中,空心圆代表类1向量,实 心圆代表类2向量。显而易见,这些类别不是线形可分的。为此,我们设计一个能将 它们正确分类的多层前馈网络Il“。刚31分类问题实例我们用一个能用于任意分类问题的过程来解决这个问题。它需要一个三层网络 碗±论文改进BP神经目F在横式识别中的№用教研%并且每~层的神经元数目是固定的。第一层产生将类1向量和类2向量分开的线形判 定边界集合。这个问题需要用11个这样的边界,如图3 2所示。5 2 3 6―.。―――――――――11 罔3.2第一层判定区域:一●,j8G z,第一层权值矩阵中的每一行对应于一个边界。第一层的权值矩阵为:¨=E!,i1■1:{}:;;:_置矩阵b,如式3 3所示:JP 7P+^=O对于一个固定的输入向量P,利用判断边界总与权值垂直的公式3.2可以得到偏(32)0’r=[-230.50.5―1 752.25―3.253.756.25―5.75―475】(33)第二层将第一层产生的11个边界决定的区域用AND神经元划分成四个不同的 区域。第二层的权值矩阵和偏置值为:l 0 0 0 ●O O 0 ,O O OⅣ2:j ;0 i ;1O 00 O l 10 lO b7:1 l O●0O,0 1(3 4)第二层的四个判定边界如图3.3所示。例如.神经元4的判定边界由第一层的边界7,8,9和11组合而成。这可以在∥3的第4行中得到。●1一..~^图3.3第二层判定区域第三层的判定区域如图3.4所示。第三层的权值矩阵和偏置值为 3BP#h#日鲳顺l地女●。.‰矿图3.4晟终的判定慝域这样我们使片j了三层前馈网络完成了这个非线性模式的分类,得到的前馈网络如图3 5所示(其中传递函数是对称硬极限函数.当净输入小于0时.输出为一1,否则为1)。“-I×『嚼唧状∞。》酗3.5模式识别前馈网络需要注意的是,只要在隐含层中有足够多的神经元,设计上面网络的过程可用束 解决具有任意削定边界的分类问题。方法是用第一层网络产生一定数量的线性计算, 然后在第二层用AND神经元,第三层中用文献[z6]ee提出的OR神经元,将它们结 合起来。第二层的决策区域是凸状的,但第三层产生的晟终的判定边界可以是任意形 通过这个示倒,我们认tH到多层前馈网络具有非线性模式识别能力.前提是只要 给出嘲维台适的权值和偏置值就能解决具有任意判定边界的分类问题。然而,当解决 一个实际问题时,确定了使用的网络结构后.如何对之进行训练,使之有合适的权值 矩阵和偏置值雅?就神经网络目前的研究现状柬说,BP算法能很好地解决这一问题。32多层前馈网络模型与BP算法3.2.1多层前馈网络模型的数学描述 多层前馈网络通常包括许多层,其特点是只有前后相邻两层之间的神经元存在相 互连接,各神绎元之间没有反馈㈣。每个神经元可以从前层接收多个输入,并H有一个输出送给下一层的各神经元。图3.6表示了典型的三层前馈网络。 颧±论文改进BP神经同络&模式识别中的直用厦研究\型≯层~一二 意建id1第二屡第堡!●S1 x1上月^ 一。0F¨』F■毒塑● ;~,},.㈣一●蔓S:×输一啊龋曩a强讯jl_嘿兽一 一一一一.互口:,1(∥1 p+∥)。‘=/1(Ⅳ2p+6。聂一1一口厂矿”6图3.6三层前馈阿络如前所述,多层6U馈同络中某一层的输出为下一层的输入。 其数学描述为:n川=,川妒蒯a“+6川lm=o,l,,Ⅳ一l这里的M是网络的层数。第一层的神经元从外部接受输入日。=P(3.6)(3.7)虽后一层神经元的输出是网络的输出:㈣^I3.2.2BP算法首先输入O个样本集台:扫..r0 O=l,2参数以使均方误差最小化Q),这里的p,为网络的输入,f,为对应的目标输出。每输入一个样本,即将网绍的输出和目标输出相比较。通过调整网络,’(x)=£k 2】=Ek―n)2】的一般形式为:(3 9)这里,r为网络权值和偏置值的阿量,£为期望。当网络存在多个输出,则上式,扛)=£0Te)=£[(,~。)7 O―n目(3 10)然而,直接使用它作为衡量BP算法的好坏的性能标准.要求要在计算所有的样本输出值基础上求得,这在实际应用中存在一定圈难。按照文献口】中Widrow和Hoff的主要观点,可用F(x)来近似计算均方误差:P扛)=O啦)一。坼"7 O缸)一a瞎"=e 7忙k忙)种近似值作为衡量BP算法的好坏标准柬进行的。BP算洼为:(3 1I)这里.均方误差的期望值被第k次选代时的均方误差替代。BP算法就是利用这 3BP神经网络硕{:论文+ ,u 纯p卜引w 瓢@曲,,一(3.12)吖:二 “ “lI@≯Ⅸ瑶护万 堕蜕沪万(3.13)这里,cc为学习速度。现在若要求出近似均方误差的偏导,可作如下推导:OFOFan?(3.14)Ow?"1'jOFan?aW己OF锄:!,I(3.15)a6,a玎,Ob?其中,聊表示BP神经网络的具体层数,上两式中的第二项均可容易地计算出,m层的网络输入是那一层中的权值和偏置值的显式函数:一一I,2●=∑形:。1口,+卵j=l(3.16)因此,笪:口吵竖:1 。’Obj锄’0定义,对掰层的输入的第f个元素变化的敏感性:(3.17)s.I,I:堡 锄_I,I’(3.18)从而“式(3.14)”和“式(3.15)”可简化为:= 口 %。(3.19)驴矿矿万,一。叩 毫l,(3.20)现在可将近似均方误差的BP算法表示为:”乞(尼+1)=w0(七)一伽,口7― 6●@+1)="(尼)一∞;I,若用矩阵形式表示,则为:(3.21) (3.22)W”@+1)=缈”@)一∞”G册一lT(3.23) 硕{:论文改进BP神经网络为i模式识别中的应用及研究6肌@+1)=6”@)一∞…这罩,(3.24)^笪:l旦堡…旦l8n…l锄,锄罗(3.25)锄-卅,l到此,只需计算敏感性S”。计算敏感性J”的过程体现了反向传播这个概念,因 为它描述了第m层的敏感性通过第m+1层的敏感性来计算的递推关系。推出敏感性的递推关系需要使用下面的雅可比矩阵:a刀,+1锄,“锄? an7+1a以? (3.26)锄.I,, 锄“+1an”a聆?+1砌,锄爿西2,伽-'-,^m。++ll 锄?掣~畔训一嵋. .喇一蚌1’J这里,’哥m+l:一,m+夕m∽):掣 lan?8n?ra--m+]‘《t掣《中㈩8n鼍。J‘、J j3c、二73f\_8因而雅可比矩阵可写成:iOnm+l:∥一?户mG)Op0”):/L/L/L、 73 2 9 、,、,、,n”7…0。 广07)0 0 ,…∽)…0(3.30)00…fm∽)现在可以得到使用矩阵写出敏感性的递推关系式:儿嘉=f,笪017m+l 1)7驴af"妒’G””)7丛6n.,1∥∽”)7’∥1(3.3?)由此可以看到反向传播算法得名的原因了。敏感性从最后一层通过网络反向传播 3BP神经网络到第一层: J吖_sM~--+…-4 J2_s1(3.32)在完成BP算法前还要知道递推关系“式(3.31)"的起点S肼。这在最后一层得 到:^a以。 由于有:}I堕科=一∥∑盟户一 ◇一锄 计一=一之o,1)参J 。(3.33)暑:黔:掣矿似V'1)an?8―8世因而可以写出:“~。 限34,sy=-2(t,一al旷M∽)在这里可以用矩阵形式表示成:(3.35)3,M---2p(.M Xt一口)因此,BP算法可以小结为以下三个步骤: (1)通过网络输入反向传播:.(3.36)ao=P(3.37)口斛l=厂州修埘+1口”+6州),m=o∥1一,M一1a=aM(3.38) (3.39)(2)通过网络将敏感性反向传播:s聊=户”G脚炒洲)7’s埘+j,所=M一1,…,2,1(3)使用近似均方误差的BP算法更新权值和偏置值:(3.40)W”@+1)=W胂@)一ff.S册0”一1)716册@+1)=6”(后)一(IS”3.2.3(3.41) (3.42)BP多层前馈网络的主要能力 多层前馈网络是迄今为止应用最广泛的神经网络之一,这主要归功于基于BP算法的多层前馈网络具有以下一些重要能力: (1)非线性映射能力。BP多层前馈网络能够学>-3和存储大量输入输出模式映射关 硕士论文改进BP神经网络舀i模式识别中的应用及研究系,而无需事先了解描述这种映射关系的数学方程。只要能提供足够多的样本模式对 BP网络进行学习训练,它便可以实现从玎维输入空间到刀2维输出空间的非线性映射。 在工程上及许多技术领域中经常遇到这样的问题:对某输入输出系统已经积累了大量相关的输入输出数据,但对其内部蕴涵的规律却仍尚未掌握,因此无法用数学方法来描述这一规律。这一类问题的共同特征是:①难以得到解析解;②缺乏专家经验;③能够表示与转化为模式识别或非线性映射问题。对于解决这类问题,多层前馈网络具有无法比拟的优势。(2)泛化能力。BP多层前馈网络训练后将所提取的样本对中的非线性映射关系存储在权值矩阵中,在其后的工作阶段,当向网络输入训练时未曾见过的非样本数据时,网络也能完成由输入空间向输出空间的正确映射。这种能力称为多层自订馈网络的泛化 能力,它是衡量多层前馈网性能优劣的一个重要指标【1引。 (3)容错能力。BP多层前馈网络的能力还在于,允许输入样本中带有较大的误差 甚至是个别错误。因为对权矩阵的调整过程也就是从大量的样本对中提取统计特性的 过程,反映正确规律的知识来自全体样本,个别样本中的误差甚至错误不能左右对权矩阵的调整。3.3BP算法的改进BP多层前馈网络己成为神经网络的重要模型之一,但实际上的BP多层前馈网络并不是利用3.2中介绍的BP算法对网络进行训练的。这主要是因为BP算法对大多数实际应用来说都太慢了,往往对实际应用失去了意义。为了提高训练速度,人们对BP算法进行了启发式改进【19】【20】[21】。基于BP算法的神经网络的误差曲面有以下特点:存在一些平坦区域,在此区域 内误差改变很小,这些平坦区域多数发生在神经元的输出接近于0或1的情况,对不 同的映射,其平坦区的位置、范围各不相同,在有的情况下,误差曲面会出现一些梯 形形状;存在不少局部极小点,在某些初值的条件下,算法的结果会陷入某个局部极 小点。对此,首先不能把初始参数设置为0,其次,不能把参数设置得过大。因为在 远离优化点的位置,误差变化曲面十分平坦。3.3.1动量方法考虑到基于BP算法的神经网络的误差曲面的特点,不同的区域有不同的误差改 变率。如果开始给出一个较高的学习速度,算法可能开始收敛得很快,但当迭代到包 含极小点的平坦区域时,算法开始发敖,使得算法来回振荡,达不到极小点。如果用 平均改变参数的方法过滤轨迹,这样可以平滑掉振荡并产生一个稳定的轨迹。将“式(3.41)”和“式(3.42)"的参数更新为: 3BP神经嗍络硕士论文AW”@):稍肿0加1)『Ab“@)=一as”当动量滤波器加到参数的改变后,得到了反向传播的动量改进公式:(3.43) (3.44)AW”@)=yAW”@一1)=(1~丫必”G”一1厂Ab…(k)=yAb”@一1)一(1一丫hs”(3.45) (3.46)上两式中,丫是动量系数,第二项是动量项。由于使用了动量项,可以在维持算法稳定前提下,当网络训练落入局部极小值时,将产生一个继续向前的正向斜率运动,使搜索跳出较浅的峰值;当网络搜索处于误差曲面平坦区时,该方法会有更快的训练速度。 3.3.2可变的学习速率由于神经网络的误差曲面是非常复杂的多峰函数,因此对于一个特定问题,很难设计一个合适的学习速率,并且一个训练初期合适的学习速率,训练后期也未必合适。可以在平坦曲面时增加学习速率,在斜率增加时减少学习速率。当可变速率参数加入后,可得到如下改进的BP算法【22l: (I)如果均方误差(在整个训练集上)权值在更新后增加了,且超过了某个设置 的百分数芎(典型值为l%一5%),则权值更新被取消,学习速率被乘以~个因子p (0<p<1),并且动量系数丫(如果有的话)被设置为0。 (2)如果均方误差在权值更新后减少,则权值更新被接受,而且学习速度将被乘 以一个因子q>1。如果丫被设置为0,则恢复到以前的值。 (3)如果均方误差的增长小于亏,则权值更新被接受,但学习速度保持不变。如果 丫过去被设置为O,则恢复到以前的值。3.3.3LM算法 动量方法和可变学习速率方法是基于一阶梯度下降法发展而来,但用于复杂优化问题时训练速度仍然比较慢。而对于BP网络学习训练这一非线性优化问题,可以借助目标函数的二阶导数信息数值优化方法实现,其中比较有效的一种就是LM(Levenberg Marquardt)算法。该方法是牛顿法的变形,比较适合目标函数为均方误差的BP神经网络训练。LM算法的收敛速度比其他算法的都快,但是每次迭代的计算量也最大,其缺点就在于其对计算机存储能力的较大需求。但是对于中等数量的网 络参数,即使要做大量计算,LM算法也是最快的神经网络训练算法【23】。24 硕-}:论文改进BP神经网络征模式识别中的f逦用及研究3.4本章小结本章对多层前馈网络的模式识别能力及其常规的训练算法――-BP算法进行了研究,并介绍了三种提高其训练速嚏的改进方法。多层前馈网络具有非线性模式识别能 力,只要给出合适的权值,就能解决具有任意判定边界的分类问题。本章介绍的BP算法以及三种改进形式,为BP神经网络在模式识别中的应用提供了经典的学习算法。 4用于模式识别的遗传种经旧络模型硕上论文4用于模式识别的遗传神经网络模型4.1BP神经网络存在的问题BP网络是神经网络领域中应用广泛的一种简单的多层前馈网络,该类型神经网络具有良好的自学习、自适应、大规模并行处理、极强的非线性映射和容错能力等特 征。BP网络避免了复杂的数学推导,在样本缺省与参数漂移的情况下能保证稳定的输出。 尽管BP网络有很多显著的优点,但也存在着一定的局限性。其主要问题如下:(1)随着训练样本维数的增大,使收敛速度变缓慢,从而降低学习效率。(2)从数学角度上看BP算法是一种梯度最速下降法,这就可能出现局部极小值的 问题,而得不到全局最优。 (3)网络中隐节点个数的选取缺乏理论指导,尚无明确的定义。 由于BP神经网络存在局部性,因此利用BP网络进行模式识别时,所得网络模 型的参数容易陷入局部极小,因此需要针对BP神经网络容易陷入局部极小的缺陷进 行改进。4.2遗传算法遗传算法(GeneticAlgorithm叫A)正是以达尔文的自然进化论与遗传变异理论为基础的求解复杂全局优化问题的仿生型算法【24J。该算法摒弃了传统的搜索方式,模拟自然界生物进化的过程,采用人工进化的方式对目标函数空间进行随机导向优化搜索。遗传算法求解问题的基本思路是:从问题的解出发,将问题的一些可行解进行 编码,这些已编码的解即被当做种群中的个体,每个个体实际上是带有染色体特征的实体;个体对环境适应能力的评价函数就是问题的目标函数;模拟遗传学中的杂交、变异、复制来设计遗传算子,用优胜劣汰的自然选择法则来指导学习和确定搜索方向; 对由个体组成的种群进行演化,利用遗传算子来产生具有更高平均适应值和更好个体 的种群,经过若干代后,选出适应能力最好的个体,它就是问题的最优解或满意解【2引。 遗传算法采纳了达尔文“优胜劣汰,适者生存"的自然进化理论模型,如选择、 交叉、变异、迁移、局域与邻域等。如图4.1所示为标准遗传算法的运行流程图。开 始计算时,进行仞始化,产生第一代(初始代)个体:随机给定一组初始解,即创建 一个初始种群,并计算每个种群的适应度函数。如果不满足优化准则,则开始产生下 一代的计算。为了产生下一代,按照适应度选择个体,父代要求基因重组(交叉)从 而产生子代。所有的子代按一定概率变异。接着子代的适应度又被重新计算,子代被26 硕士论文改进BP神经网络在模式识别中的应用及研究插入到种群中将父代取而代之,构成新的一代。这一过程循环执行,直至满足优化准 则为止。遗传算法在运行的形式上属于迭代方法,即从初始解出发,通过不断迭代逐步进化当前解,直到最后得到最优解或满意解为止。最佳个体山r \结束、 /图4.1遗传算法的一般流程遗传算法的主要步骤为: (1)随机产生个体数目一定的初始种群,每个个体表示为染色体的基因编码;(2)计算个体的适应度,并判断是否符合优化准则。若符合,输出最佳个体及其代表的最优解,并结束计算;否则转向步骤(3); (3)根据适应度选择再生个体,适应度高的个体被选中的概率高;(4)依据一定的交叉概率和交叉方法,生成新的个体;(5)依据一定的变异概率和变异方法,生成新的个体; (6)由交叉和变异产生新一代的种群,返回到步骤(2)。 上述步骤(2)中的优化准则,一般根据问题的不同有不同的确定方式。可以采 用以下的准则之一作为判断条件: (1)种群中个体的最大适应度是否超过预先设定值: (2)种群中个体的平均适应度是否超过预先设定值; (3)进化代数是否超过预先设定值。27 4用于模式识别的遗传神经网络模型硕1.论文4.3遗传算法的特点随着问题种类的不同以及问题规模的扩大,要求寻求出一种能以有限的代价来解 决搜索和优化的通用方法,遗传算法为我们提供了一个有效的途径,它不同于传统的搜索技术和优化方法。它与传统算法的主要区别126J在于: (1)对可行解表示的广泛性:由于遗传算法处理的对象不是参数本身,而是以决策变量的编码作为运算对象,因此这种编码操作能够使遗传算法直接对结构对象进行操作。所谓结构对象,泛指集合、序列、矩阵、树、图、表等各种一维、二维甚至多维结构形式的对象。正是这一特点使得将遗传算法应用于人工神经网络的优化改进成 为了可能。 (2)群体搜索特性:遗传算法的搜索过程是从许多初始点开始搜索信息而非单一的初始点,这种搜索机制意味着寻优过程可以有效的跳出局部极值点和有效的遍历整 个解空间。这种特性使遗传算法拥有良好的全局寻优能力,大大提高了其搜索到全局最优解的概率。 (3)普适性:由于遗传算法在搜索中不需要求导或其他辅助知识,而只需要影响搜索方向的目标函数和相应的适应度函数,因此遗传算法具有良好的普适应,适用于无解析表达式的目标函数优化以及任何大规模、高度非线性的不连续多峰函数的优 化。 (4)隐并行性:遗传算法虽然在每一代问题的处理上只对有限的个体进行遗传操作,由于采用种群的方式组织搜索,可同时搜索解空间内的多个区域,因而实际的处 理信息量却是种群规模的高次方,因此遗传算法具有强大的信息处理能力。4.4遗传算法的缺陷遗传算法作为一种通用性好、鲁棒性强的新型优化搜索算法,为求解很多困难的问题打开了局面,但是在实际应用中,也暴露出了一些自身固有的缺陷【27】【281,现介 绍如下。 4.4.1早熟问题在实际应用中,人们常常发现遗传算法会收敛到局部最优解且不再进化,或是群体中不能再产生比父代更优的子代,群体中的各个个体之间非常相似,就是发生了所 谓的早熟现象(PrematureConvergencePhenomenon)。这种现象在运用遗传算法求解大范围复杂搜索空间的最优解时很普遍,而且难以被克服。早熟问题表面上很像其他 算法中的局部极小值问题,但是与局部极小值问题在本质上存在不同,早熟问题未必 会出现在局部极小值点,其产生带有随机性,因此很难被预见。导致早熟的直接原因 是模式多样性的丧失。因此在一般情况下,为了有效的保持群体的多样性,可以通过28 硕十论文改进BP神经嘲络在模式识别中的J逆用及研究增大群体模式种类和适当增大变异概率来解决。4.4.2局部搜索能力差遗传算法在搜索最优解时,尽管能够很快的接近全局最优解,但却很难精确的找到最优解的位置。因此遗传算法在针对多参数、高精度、大范围且搜索空间复杂的问题时,收敛速度会变慢,并且很可能经过长时间搜索后也不能找到全局最优解。 遗传算法的全局寻优(在广度空间中求泛)能力是由交叉操作实现,求泛能力是 指算法在寻优空问超越当前父代的超平面进而发现更优超平面的能力。而遗传算法的局部寻优(在深度空间中求精)能力由变异操作来实现,求精能力是在现有超平面内 寻找更优个体的能力。求泛和求精能力是一对矛盾的因素,交叉操作表现出较强的求泛能力而求精能力不足;而变异操作表现出较强的求精能力而求泛能力不足。因为遗传算法是以交叉算子为核心算子,其遗传操作以交叉操作为主要操作,所以遗传算法的求泛能力较强而求精能力明显不足。 为提高遗传算法的局部搜索能力,对于浮点编码的遗传算法而言,提高交叉和变异概率不但可以增强算法的寻优能力,而且会加快遗传算法的收敛进程,有助于改善 遗传算法的局部搜索能力。 4.4.3控制参数难以确定上述的遗传算法的早熟问题和局部搜索能力差不仅和遗传算子相关,还与控制参数的选择密切相关。控制参数的选择将影响到算法的性能,不当的控制参数会导致群体的多样性丧失,使得算法出现早熟现象。若要正确处理算法的求泛和求精能力的问题,控制参数的选取非常关键。增大群体规模种类和变异概率可以提高群体的多样性 并防止早熟问题的出现,但是增大的群体规模会导致算法搜索的计算量剧增;而过高的变异概率会使寻优过程发生动荡,甚至将遗传搜索转变为完全随机的漫游搜索(随机游走现象)。对于遗传算法控制参数的选取,目前还是主要靠经验和尝试,由于缺乏理论的支 持和定量分析,如何选择合适的控制参数来提高遗传算法的性能,是有待进一步解决的问题。4.5遗传算法的改进考虑到基本遗传算法容易出现4.4节所述的早熟现象、局部搜索能力差等缺点,有必要对其进行一些改进,本文总结目前已经提出的一些改进方法,概括起来主要有如下几种方式:(1)改进遗传算法的使用技术或者组成成分,如选用适合问题特性的编码技术、优化控制参数等。29 硕士论文(2)采用混合遗传算法,即融合一些优化方法来提高遗传算法运行效率和求解质 量的方法。如将遗传算法和模拟退火算法、爬山法等方法结合的混合遗传算法。 (3)采用动态自适应技术,在遗传过程中自适应的调整控制参数和编码精度,在保持种群多样性的同时保证遗传算法的收敛。(4)采用非标准的遗传操作算子,如记忆算子、顶端增强算子等。(5)采用并行遗传算法。-q6本章小结本章探讨了遗传算法核心思想和基本理念:介绍了标准遗传算法的运行框架;研 究了算法的特点并探讨了遗传算法的不足,最后介绍了遗传算法常见的改进类型。30 硕士论文5改进的遗传神经网络模型遗传算法具有良好的全局搜索能力,但在另一方面,遗传算法对问题的求解,用到大量的概率计算,其收敛速度慢,往往不能满足实际需要;训练的结果泛化能力也 不如BP算法,达不到实用的效果。而人工神经网络则具有学习和记忆能力,因此,将神经网络和遗传算法结合起来,则可以充分利用两者的优点,从而获得更强大的表 达和解决实际问题的能力。具体而言,结合遗传算法和人工神经网络,使得新的模型 既有学习能力和泛化能力,又有遗传算法的强全局随机搜索能力和鲁棒性,意义十分明显。目前结合的方向有两个:(1)人工神经网络需要高效的自动设计方法,而遗传算法为其提供了一个很好的途径;又由于BP算法是基于梯度下降法的经典优化搜索方法,收敛速度和局部极小 值问题一直是制约其发展的瓶颈问题,而利用遗传算法则可以摆脱这个困境口9l。(2)人工神经网络为遗传算法提供工具,建立一种基于人工神经网络支持的遗传 算法,改善遗传算法的收敛性130j。5.1BP算法与遗传算法的结合BP神经网络的学习是基于梯度下降法的,由于该算法搜索速度缓慢以及对初始值的依赖,容易导致存在局部最小值问题。而遗传算法作为一种具有较强全局搜索能力的算法,其搜索能够遍布整个寻优空间,因此容易接近全局最优解;且遗传算法有很强的鲁棒性,不要求目标函数连续可微,甚至不要求目标函数具有显函数形式,只 要求问题可以计算【3¨。因此将擅长全局搜索的遗传算法和具有很强局部寻优能力的BP算法结合起来,可以避免局部极小值问题并提高收敛速度,很快获得全局最优解。本文利用改进的遗传算法对BP神经网络同时进行权值和阈值的同步学习优化,提高 算法的收敛速度和收敛精度,构造了一个能够获得待求问题满意解的三层GA.BP神经网络。5.1.1GA.BP神经网络的优化策略BP网络的权值训练是利用算法不断调整网络的权值系数,使网络的实际输出和期望输出之差达到最小。遗传算法作为一种全局的寻优算法,若把BP神经网络待训 练的权值系数看作遗传算法的寻优参数,就可以把遗传算法与BP神经网络结合起来, 利用遗传算法作为学习算法对BP神经网络的权值进行训练[32】。传统的BP算法只改变神经元之间的权值,并以权值形式保留网络的学习结果, 忽略阈值的影响,这与实际情况不相符【33】――阈值相当于神经元的开关,在同一次反 5.改进的遗传种经网络模型硕士论文应中不是所有神经元的输出贡献都一致,因此,阈值的作用不可忽略。考虑阈值的影 响后,可以将阈值也列为神经元的调整参数,这就形成了同步学习权值和阈值的BP 神经网络。其优势在于考虑了阈值作为调整量后,可以使得输出结果远离功能函数的 饱和区,从而加快学习过程,跳出局部极小;还可以在阈值开关的控制下,自动关闭 或减弱隐节点的输出,从而选择最佳的网络神经元数量;甚至可以削弱或减少神经元 之间的连续,避免过拟合现象的出现。 若利用遗传算法同时优化BP神经网络的权值向量和阈值向量,就可以构造出比传统BP神经网络或同步学习权值和阈值的BP神经网络更先进的新型神经网络一一改进的GA.BP神经网络。由此,BP算法的训练学习问题就转化成了一个遗传算法的优化问题――通过遗传算法搜索最佳的BP神经网络权值向量和阈值向量组合,从而使网络实际输出和期望输出的误差达到人们的满意程度;这时的人工神经网络仅保留了其结构形式,而其运算则完全由遗传算法来完成【3引。整个搜索过程的收敛速度将取 决于该遗传算法的性能。 尽管遗传算法比其他传统搜索方法有更强大的全局收敛性,将它作为BP网络的权值和阈值训练能较好解决局部解和训练平台现象,但由于缺乏明确的搜索方向,遗 传算法的局部搜索能力依然不能令人满意。有研究发现遗传算法可快速达到最优解的90%左右,但真正要精确地找到最优解的位置,仍需花费大量的时间。换句话说,如要兼顾收敛速度和解的品质这两个目标,单纯的遗传算法和其他搜索方法相比未必具有优越性。5.1.2NFL定理的启示上个世纪八十年代以来,以模拟退火和进化算法为代表的随机优化搜索计算得到 了快速的发展,这类算法的共同特点是不需要利用有关体系自身特有的信息,可以称为“无先验知识”的算法,被广泛的应用于许多优化问题。 由此进化算法界认为【35】:能够设计出一种算法,在求解任何优化问题时,其表现 都比其他算法好;或即使在个别问题上该算法不如某个其他方法,但是在绝大多数问题上它还是胜过其他的方法。类似的想法也存在于遗传算子的设计中,认为通过改进 遗传算子,就能忽略待求解问题本身的各种信息从而求解问题。然而NFL(NoLunch)定理指出这种信念并不可靠。FreeNFL定理【36】认为:对于所有可能的问题,给定两个算法A和B,如果A在某些问题上表现的比B好,那么A在其他问题上表现的一定比B差。由此得知,万能的‘算法是不存在的。 由上述NFL定理我们可以得知,对于BP神经网络的权值和阈值优化问题,遗传 算法能够快速接近全局最优解的同时,收敛速度必然会受到影响,其真正要到达全局 改进BP神经嘲络在模式识别中的应用及研究最优解或满意解时亦要花费相当多的时间。因此,要完全抛弃BP算法精确的梯度搜索信息是不合理的,待求解问题本身的信息也应该善加利用;且遗传算法的优势正是BP算法的不足,而遗传算法的不足又正是BP算法的优势,因此应当充分发挥二者的优势,将二者结合起来训练,使得混合的GA.BP神经网络既有较好的全局收敛性,又能够较快速的收敛至全局最优解或满意解【37】。5.2GA.BP神经网络的模型GA.]3P神经网络的基本构造思想就是先通过遗传算法在解空间中搜索到一个较优的网络形式,再利用BP算法在这个较优的解空间内定位最优解或满意解【381;具体地说就是先通过遗传算法对最佳的网络权值和阂值做快速的全局搜索,当群体收敛至全局最优解附近区域时,以群体中的最优个体作为BP算法的初始点,利用BP算法进行进一步的局部搜索,同步学习网络的权值和阂值。当几代内遗传算法进化的目标 函数不再减小或目标函数小于预设值时,表示两种算法需要进行切换。由于在实际应用中,求得的网络目标误差函数往往为人们预先设定的一个满意值,因此利用这种GA.BP顺序寻优的方法被证明是切实可行的。为了提高收敛速度,BP算法运行部分可以采用前文3.3.3节中所述的改进方法而非仅仅使用传统的梯度下降法,因此本文采用基于数值优化技术的LM.BP算法用于网络的后续训练。 5.2.1编码设计遗传算法通过遗传操作对群体中具有某种结构形式的个体实施结构重组,不断搜索出群体中适应度较高的个体,并在群体中逐渐增加其数量,以逐渐逼近最优解;因 为遗传算法不能直接处理问题空间的参数,所以必须将它们转换成染色体串。由于网 络的性能对连接权值和闽值的精度很敏感,且寻优搜索问题空间较大,因此本文采用 高精度的浮点编码代替普通的二进制编码,避免编码和解码过程带来的映射误差【391。对于一个输入层结点数为f,隐含层结点数为,,输出层结点数为k的神经网络,染色体码串由各层的权值向量和阈值向量依次排列形成,每一个码串代表一种特定的神 经网络形式,编码方案如图5.1示:【w,,】[瓦】[0『】[0々】图5.1编码方案图中[W。】为输入层和隐层之间的连接权值,[瓦『]为输出层和隐层之间的连接权 值,[9,]为隐层各神经元的阈值,[e。]为输出层各神经元的阈值。5.2.2适应度函数的确定遗传算法在进化搜索过程中一般不需要其他信息,只通过评估适应度函数的值来 硕十论文评价个体性能的优良程度,从而为后代的遗传操作提供依据。适应度函数是遗传算法中指导搜索的评价函数,它不受函数连续性或求导等条件的限制,一般要求适应度函 数的结果为非负数。前馈网络的一个重要特点就是网络的输出值与期望值之间的误差 平方和SSE越小,则表示该网络性能越好,因此本文将适应度函数定义为:尸:―LSSE(5.1)5.2.3种群的初始化遗传操作的任务就是对群体中的个体按照它们的环境适应度施加一定的操作,从而实现优胜劣汰的进化过程。在遗传算法的处理流程中,编码方案确定之后就要创建 初始群体,并以初始群体作为起点进行进化。在进化过程中,群体的规模对遗传操作 的效果有着重大影响。群体规模越大,群体中个体的多样性越高,算法陷入局部解的危险就越小,因而从群体多样性角度出发考虑,群体规模应较大。但群体规模过大会 增加计算量,从而影响算法效能。同时群体中个体太多时,少量适应度很高的个体会被选择而生存下来,但大多数个体被淘汰,这会对配对库的形成造成影响,从而影响交叉操作。另一方面,群体规模过小,会使遗传算法的搜索空间中分布范围有限,因而搜索有可能停止在未成熟阶段,引起未成熟收敛现象。本文随机产生网络的初始群体popO(N,£),N是群体规模,三是码串长度。其中 每个个体可以表示为一个独立的人工神经网络形式,记为pop(i,:),i=l,2….,N。综合考虑,在实际应用时,群体规模人r取值在4~100之间,网络初始权值和阈值的取值范围为(_l,1)。5.2.4遗传算子的设计(1)选择算子的选择本文采用轮盘赌选择方法(适应度比例方法),即每个个体的选择概率和适应值成正比。另外,如果新群体中最大适应度值若小于父代群体中最大适应值,则将父代 群体中适应值最大的个体无条件地直接复制到下一代。 (2)交叉算子的选择 采用浮点编码的交叉算子直接在问题空间进行运算而无需编码和解码过程。在浮 点编码的执行过程中,每个染色体向量被编码成一个对应的浮点数向量,且各向量均 在规定区域内,因此交叉算子的设计首先要保证交叉操作产生的后代也在规定的区域 范围内。 本文采用算术交叉来满足交叉算子的运算要求。假定种群中X。和%被选定为交叉运算的父代双亲,则由父代双亲产生的后代X:和x:为: 硕_{二论文改进BP神经网络在模式识别中的应用及研究扣吲一(1吨)X2lx22(5.2)0cx2+(1一仅∥1其中仅∈lo,1 l。(3)变异算子的选择遗传算法中引入变异算子的目的有两个:一是使遗传算法具有局部的随机搜索能力;二是使遗传算法可维持群体多样性,以防止出现未成熟收敛现象。 均匀变异分别利用符合某一范围内的均匀分布的随机数,通过某个较小的概率来 替换个体编码串中各个基因座上的原有基因值。尽管均匀变异存在诸多优势,但由于 均匀变异不便于对某一重点区域进行局部搜索,为了改进其性能,本文采用了均匀变异的变形――非均匀变异(Non.Uniform Mutation)作为变异算子。 在执行非均匀变异时,不采用均匀分布的随机数代替原有基因值,而是对原有的基因值做随机扰动,将扰动后的结果作为变异后的新基因值。通过对每个基因座都以 相同的概率进行变异运算,相当于整个解向量在解空间作了一个轻微的变动。具体操 作为:有一个父代x,如果X选择被变异,则变异结果为:z。=b;,xo∥■o:)(5.3)稿xk+A[Gc,r(k)-xk]若sgn(k)=:;^r:1(5.4)、J‘咔7其中,△是计算基因上元素改变量的函数:△(G。,y)=yrf 1一号}1Y为元素到取值边界的距离:(5.5)丁户r(k)-翼xk若。sgn(,k、)~ lY=‰一,(足),若s口(尼)=1进化代数;b是确定非均匀度的参数,即形状系数。(5.6) ~…7G。是当前进化代数;厂是取值在[0,1]区间内均匀产生的对应随机数:T是最大随着进化代数的增加,△(G。,J,)接近0的概率会相应增大。这种改进后的算子在进化计算的初期能均匀的搜索问题空间;进化的后期拥有更好的局部精确搜索能力。5.2.5基于数值优化技术的LM算法 经过遗传操作后,适应度最大的个体就是当前遗传算法寻优的最优网络状态,将对应的基因码串解码形成BP神经网络,此后将利用BP算法进行进一步的训练,此时为了提高模型训练速度,本文采用基于数值优化技术的LM算法对网络的阈值和权 硕士论文值进行同步学习优化,LM算法作为牛顿法的变形,对于网络参数数量适中的学习训练效果最佳【40】。 在LM算法中,阈值和权值的调整公式统一为:‰+,=%一I,7’G。VG。)+/-tk J『】_1,rG。卜G。) 血。=一prG。VG。)+p。,】-1,7G。弘G。)应调整的系数;v为网络的误差向量。(5.7) (5.8)J为雅各比矩阵,矩阵元素是网络误差对权值14'和闽值0的一阶导数:p为自适LM算法在学习调整过程中,p按照一定的规律调整,当误差呈增大趋势时,p 也相应增大,于是,7’,就逐渐被忽略,此时只剩下“11,丁v项,但是由于p增加,p-1将减小,u-1,7。1,就不会随误差的增大而增大太多,于是厶在较短时间内得到正确调 整,学习时间被缩短,搜索到满意解时学习就停止。在系统计算资源允许的情况下, 实践汪明LM算法运行较快,因此可以用来执行GA.BP神经网络的下一步寻优搜索的任务。5.2.6GA.BP神经网络运行流程 根据上述的设计,得到如图5.2所示的GA―BP神经网络的运行流程图:图5.2 GA.BP神经网络运行流程图36 硕上论文改进BP神经网络征模式识别中的应用及研究5.3本章小结本章针对BP算法训练多层前馈网络模式识别系统的缺陷,提出了结合遗传算法的BP改进算法――GA.BP算法,并建立了对应的模式识别系统模型。 硕士论文6GA―tLP的模式识别系统6.1神经网络开发环境介绍Microsoft公司在1998年推出的一个功能强大的可视化应用程序开发工具Visual C++6.0,用于Windows环境下的应用程序的开发,是业界公认的最优秀的集成开发 环境之一。Visual C++6.0不仅提供了可视化的编程方式,而且适用于编写直接对系统 进行底层操作的程序,并且生成代码的质量也优于其他的开发工具。MATLAB是一个将矩阵计算、数值分析、信号处理和图形显示结合在一起,包 含大量高度集成的函数可供调用,适合科学研究及工程设计等众多学科领域使用的一 种简洁、高效的编程工具。MATLAB拥有强大的科学计算与可视化功能,简单易用 的开放式可扩展环境以及多达30多个面向不同领域而扩展的工具箱(Toolbox)支持,使得MATLAB在许多学科领域中成为计算机辅助设计与分析、算法研究和应用开发 的基本工具。但是由于它的编译器采用伪编译的方式,因此在MATLAB中编写的程 序无法脱离其工作环境而独立运行。针对这个问题,Mathworks公司为MATLAB提 供了多个应用程序接口,允许MATLAB和其他应用程序进行数据交换,并且提供了 C/C++数学和图形函数库,为在其他语言中调用MATLAB的高效算法提供了可能。 充分利用VC++和MATLAB各自在开发基于遗传神经网络的模式识别系统的优 势,可以缩短开发时间、提高开发效率及增加系统的交互性。本模式识别系统利用 ACCESS数据库存放数据,MATLAB提供的画图命令进行图形化的输出,VC++编制 软件主体,从而生成本系统,不但缩短了开发时间,而且提高了它的移植性和可维护 性。6.2系统概述系统的核心功能是网络训练。在本系统中,就是要利用一种智能方法针对模式样 本数据进行学习,训练网络结构及参数,从而使系统达到能进行仿真和用于实际模式识别的能力,所以本课题不但具有一定的理论研究价值,而且还有实际的经济意义。 由于模式识别多种多样,不同的模式识别有不同的对应关系,因此利用常规的编程方 法,很难找出模式数据和其类

我要回帖

更多关于 二级域名无法找到站点 的文章

 

随机推荐