您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 人工神经网络ANN及其MAtlab仿真
人工神经网络的研究方法及应用刘长安2004.12.31引言•利用机器模仿人类的智能是长期以来人们认识自然、改造自然和认识自身的理想。•研究ANN目的:•(1)探索和模拟人的感觉、思维和行为的规律,设计具有人类智能的计算机系统。•(2)探讨人脑的智能活动,用物化了的智能来考察和研究人脑智能的物质过程及其规律。研究ANN方法(1)生理结构的模拟:用仿生学观点,探索人脑的生理结构,把对人脑的微观结构及其智能行为的研究结合起来即人工神经网络(ArtificialNeuralNetwroks,简称ANN)方法。(2)宏观功能的模拟:从人的思维活动和智能行为的心理学特性出发,利用计算机系统来对人脑智能进行宏观功能的模拟,即符号处理方法。ANN的研究内容(1)理论研究:ANN模型及其学习算法,试图从数学上描述ANN的动力学过程,建立相应的ANN模型,在该模型的基础上,对于给定的学习样本,找出一种能以较快的速度和较高的精度调整神经元间互连权值,使系统达到稳定状态,满足学习要求的算法。(2)实现技术的研究:探讨利用电子、光学、生物等技术实现神经计算机的途径。(3)应用的研究:探讨如何应用ANN解决实际问题,如模式识别、故障检测、智能机器人等。人工神经网络概述•什么是人工神经网络?•T.Koholen的定义:“人工神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。”脑神经信息活动的特征(1)巨量并行性。(2)信息处理和存储单元结合在一起。(3)自组织自学习功能。ANN研究的目的和意义(1)通过揭示物理平面与认知平面之间的映射,了解它们相互联系和相互作用的机理,从而揭示思维的本质,探索智能的本源。(2)争取构造出尽可能与人脑具有相似功能的计算机,即ANN计算机。(3)研究仿照脑神经系统的人工神经网络,将在模式识别、组合优化和决策判断等方面取得传统计算机所难以达到的效果。神经网络研究的发展(1)第一次热潮(40-60年代未)1943年,美国心理学家W.McCulloch和数学家W.Pitts在提出了一个简单的神经元模型,即MP模型。1958年,F.Rosenblatt等研制出了感知机(Perceptron)。(2)低潮(70-80年代初):(3)第二次热潮1982年,美国物理学家J.J.Hopfield提出Hopfield模型,它是一个互联的非线性动力学网络他解决问题的方法是一种反复运算的动态过程,这是符号逻辑处理方法所不具备的性质.1987年首届国际ANN大会在圣地亚哥召开,国际ANN联合会成立,创办了多种ANN国际刊物。1990年12月,北京召开首届学术会议。神经网络基本模型细胞体突触轴突树突图12.2生物神经元功能模型输入输出信息处理电脉冲形成传输ANN类型与功能人工神经网络研究的局限性(1)ANN研究受到脑科学研究成果的限制。(2)ANN缺少一个完整、成熟的理论体系。(3)ANN研究带有浓厚的策略和经验色彩。(4)ANN与传统技术的接口不成熟。一般而言,ANN与经典计算方法相比并非优越,只有当常规方法解决不了或效果不佳时ANN方法才能显示出其优越性。尤其对问题的机理不甚了解或不能用数学模型表示的系统,如故障诊断、特征提取和预测等问题,ANN往往是最有利的工具。另一方面,ANN对处理大量原始数据而不能用规则或公式描述的问题,表现出极大的灵活性和自适应性。细胞体突触轴突树突图12.2生物神经元功能模型输入输出信息处理电脉冲形成传输黑箱神经网络在环境科学与工程中的应用人工神经网络以其具有自学习、自组织、较好的容错性和优良的非线性逼近能力,受到众多领域学者的关注。在实际应用中,80%~90%的人工神经网络模型是采用误差反传算法或其变化形式的网络模型(简称BP网络),目前主要应用于函数逼近、模式识别、分类和数据压缩或数据挖掘。•环境质量评价•环境系统因素预测•环境因素定量关系模拟构效分析、成因分析•污染防治系统建模神经网络在环境科学与工程中的应用李一平(河海大学环境科学与工程学院).《太湖生态系统的人工神经网络模拟研究》,环境科学与技术,2004年第二期构造了具有3层节点的人工神经网络模型,将太湖2001年5~12月全湖共26个采样点的实测值作为学习样本,一共有26×8=208组数据。从这些数据中分别随机抽取1/4的数据各52组作为检验样本和测试样本,其余的104组(占50%)数据作为训练样本。每个样本均含有12个输入因子,分别是风速、风向、水温、pH、DO、高锰酸钾指数、浊度、TN、TP、叶绿素a、透明度、BOD5。以浮游植物作为输出因子。用2002年8月的各点的浮游植物数据进行预测比较,汤丽妮(成都信息工程学院)《人工神经网络在生态环境质量评价中的应用》,四川环境,2003,3由于BP神经网络具有优良的非线性逼近能力,1994年以来,已在环境科学与工程的环境质量评价与预测、监测点的优化布置、社会经济环境可持续发展、污染物降解与释放、水(处理、生态)系统的模拟与预测等方面获得了广泛的应用。BP神经网络在环境科学与工程中的应用BP网络建模特点:•非线性映照能力:神经网络能以任意精度逼近任何非线性连续函数。在建模过程中的许多问题正是具有高度的非线性。•并行分布处理方式:在神经网络中信息是分布储存和并行处理的,这使它具有很强的容错性和很快的处理速度。•自学习和自适应能力:神经网络在训练时,能从输入、输出的数据中提取出规律性的知识,记忆于网络的权值中,并具有泛化能力,即将这组权值应用于一般情形的能力。神经网络的学习也可以在线进行。•数据融合的能力:神经网络可以同时处理定量信息和定性信息,因此它可以利用传统的工程技术(数值运算)和人工智能技术(符号处理)。•多变量系统:神经网络的输入和输出变量的数目是任意的,对单变量系统与多变量系统提供了一种通用的描述方式,不必考虑各子系统间的解耦问题。基本BP网络的拓扑结构b1bia1c1cqcjahbpan………………Wp1WiqWpjW1qW1jWijV11W11WpqWi1Vh1VhiV1iVn1VniV1pVhpVnp1kckjckqckhakna1ka输出层LC隐含层LB输入层LAWV1.样本数据1.1收集和整理分组采用BP神经网络方法建模的首要和前提条件是有足够多典型性好和精度高的样本。而且,为监控训练(学习)过程使之不发生“过拟合”和评价建立的网络模型的性能和泛化能力,必须将收集到的数据随机分成训练样本、检验样本(10%以上)和测试样本(10%以上)3部分。此外,数据分组时还应尽可能考虑样本模式间的平衡。1.2输入/输出变量的确定及其数据的预处理一般地,BP网络的输入变量即为待分析系统的内生变量(影响因子或自变量)数,一般根据专业知识确定。若输入变量较多,一般可通过主成份分析方法压减输入变量,也可根据剔除某一变量引起的系统误差与原系统误差的比值的大小来压减输入变量。输出变量即为系统待分析的外生变量(系统性能指标或因变量),可以是一个,也可以是多个。一般将一个具有多个输出的网络模型转化为多个具有一个输出的网络模型效果会更好,训练也更方便。由于BP神经网络的隐层一般采用Sigmoid转换函数,为提高训练速度和灵敏性以及有效避开Sigmoid函数的饱和区,一般要求输入数据的值在0~1之间。因此,要对输入数据进行预处理。一般要求对不同变量分别进行预处理,也可以对类似性质的变量进行统一的预处理。如果输出层节点也采用Sigmoid转换函数,输出变量也必须作相应的预处理,否则,输出变量也可以不做预处理。预处理的方法有多种多样,各文献采用的公式也不尽相同。但必须注意的是,预处理的数据训练完成后,网络输出的结果要进行反变换才能得到实际值。再者,为保证建立的模型具有一定的外推能力,最好使数据预处理后的值在0.2~0.8之间。2.神经网络拓扑结构的确定2.1隐层数一般认为,增加隐层数可以降低网络误差(也有文献认为不一定能有效降低),提高精度,但也使网络复杂化,从而增加了网络的训练时间和出现“过拟合”的倾向。Hornik等早已证明:若输入层和输出层采用线性转换函数,隐层采用Sigmoid转换函数,则含一个隐层的MLP网络能够以任意精度逼近任何有理函数。显然,这是一个存在性结论。在设计BP网络时可参考这一点,应优先考虑3层BP网络(即有1个隐层)。一般地,靠增加隐层节点数来获得较低的误差,其训练效果要比增加隐层数更容易实现。对于没有隐层的神经网络模型,实际上就是一个线性或非线性(取决于输出层采用线性或非线性转换函数型式)回归模型。因此,一般认为,应将不含隐层的网络模型归入回归分析中,技术已很成熟,没有必要在神经网络理论中再讨论之。2.2隐层节点数在BP网络中,隐层节点数的选择非常重要,它不仅对建立的神经网络模型的性能影响很大,而且是训练时出现“过拟合”的直接原因,但是目前理论上还没有一种科学的和普遍的确定方法。目前多数文献中提出的确定隐层节点数的计算公式都是针对训练样本任意多的情况,而且多数是针对最不利的情况,一般工程实践中很难满足,不宜采用。事实上,各种计算公式得到的隐层节点数有时相差几倍甚至上百倍。为尽可能避免训练时出现“过拟合”现象,保证足够高的网络性能和泛化能力,确定隐层节点数的最基本原则是:在满足精度要求的前提下取尽可能紧凑的结构,即取尽可能少的隐层节点数。研究表明,隐层节点数不仅与输入/输出层的节点数有关,更与需解决的问题的复杂程度和转换函数的型式以及样本数据的特性等因素有关。在确定隐层节点数时必须满足下列条件:(1)隐层节点数必须小于N-1(其中N为训练样本数),否则,网络模型的系统误差与训练样本的特性无关而趋于零,即建立的网络模型没有泛化能力,也没有任何实用价值。同理可推得:输入层的节点数(变量数)必须小于N-1。(2)训练样本数必须多于网络模型的连接权数,一般为2~10倍,否则,样本必须分成几部分并采用“轮流训练”的方法才可能得到可靠的神经网络模型。总之,若隐层节点数太少,网络可能根本不能训练或网络性能很差;若隐层节点数太多,虽然可使网络的系统误差减小,但一方面使网络训练时间延长,另一方面,训练容易陷入局部极小点而得不到最优点,也是训练时出现“过拟合”的内在原因。因此,合理隐层节点数应在综合考虑网络结构复杂程度和误差大小的情况下用节点删除法和扩张法确定。3.神经网络的训练3.1训练BP网络的训练就是通过应用误差反传原理不断调整网络权值使网络模型输出值与已知的训练样本输出值之间的误差平方和达到最小或小于某一期望值。虽然理论上早已经证明:具有1个隐层(采用Sigmoid转换函数)的BP网络可实现对任意函数的任意逼近。但遗憾的是,迄今为止还没有构造性结论,即在给定有限个(训练)样本的情况下,如何设计一个合理的BP网络模型并通过向所给的有限个样本的学习(训练)来满意地逼近样本所蕴含的规律(函数关系,不仅仅是使训练样本的误差达到很小)的问题,目前在很大程度上还需要依靠经验知识和设计者的经验。因此,通过训练样本的学习(训练)建立合理的BP神经网络模型的过程,在国外被称为“艺术创造的过程”,是一个复杂而又十分烦琐和困难的过程。由于BP网络采用误差反传算法,其实质是一个无约束的非线性最优化计算过程,在网络结构较大时不仅计算时间长,而且很容易限入局部极小点而得不到最优结果。目前虽已有改进BP法、遗传算法(GA)和模拟退火算法等多种优化方法用于BP网络的训练(这些方法从原理上讲可通过调整某些参数求得全局极小点),但在应用中,这些参数的调整往往因问题不同而异,较难求得全局极小点。这些方法中应用最广的是增加了冲量(动量)项的改进BP算法。3.2学习率和冲量系数学习率影响系统学习过程的稳定性。大的学习率可能使网络权值每一次的修正量过大,甚至会导致权值在修正过程中超出某个误差的极小值呈不规则跳跃而不收敛;但过小的学习率导致学习时间过长,不过能保证收敛于某个极小值。所以,一般倾向选取较小的学习率以保证学习过程的收敛性(稳定性),通常在0.01~0.8之间。增加冲量
本文标题:人工神经网络ANN及其MAtlab仿真
链接地址:https://www.777doc.com/doc-4223492 .html