




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于MATLAB的改进BP神经网络的仿真1.引言神经网络(Neural Networks,简称NN)是由大量的、简单的处理单元(简称为神经元)广泛的相互连接而成的复杂网络系统,它反映了人脑功能的许多基本特性,是一个高度复杂的非线性动力学系统。神经网络具有大规模并行、分布式存储和处理、自组织、自适应和自学习能力,特别适合处理需要同时考虑许多因素和条件的、不精确和模糊的信息处理问题。神经网络的发展与神经科学、数理科学、认知科学、计算机科学、人工智能、信息科学、控制论、机器人学、微电子学、心理学、光计算、分子生物学等有关,是一门新兴的边缘交叉学科。1986年Rumelhart和McCelland等人
2、提出并行分布处理(PDP)的理论,同时提出了多层网络的误差反向传播学习算法,简称BP算法。这种算法根据学习的误差大小,把学习的结果反馈到中间层次的隐单元,改变它的权系数矩阵,从而达到预期的学习目的,解决了多层网络的学习问题。BP算法从实践上证明神经网络的运算能力很强,可以完成许多学习任务,解决许多具体问题。BP网络是迄今为止最常用、最普通的网络。2.论述BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形
3、式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。随着人工神经网络的发展,BP算法的用途日益广泛,应用领域也在不断扩展,已在人工智能、自动控制、计算机科学、信息处理、机器人、模式识别等各个领域中有着成功的案例。在众多神经网络中,又以BP(Back Propagation)网络的应用最为广泛,它所采用的BP算法已成为目前应用最为
4、广泛的神经网络学习算法,绝大部分的神经网络模型都是采用BP算法或它的变化形式。这样的算法具有很好的非线性映射能力、泛化能力、容错能力,已在各个领域中取得了广泛的应用。但是人们在使用过程中却发现,这种算法存在这样或那样的局限,比如收敛速度慢、容易陷入局部最小值以及忘记旧样本的趋势,这些局域性严重影响了BP算法的应用。本文主要针对BP算法的缺点,采用以下几种改进算法来对其进行改善:1.附加动量法;2.自适应调整参数法;3.弹性算法;4.BFGS拟牛顿法;5.Levenberg-Marquardt的改进算法。3.实例验证考虑以下Hermit多项式的逼近问题:,其中。训练样本产生方式如下:样本数N=1
5、00,其中样本输入服从区间-4,4内的均匀分布,样本输出为,为添加的噪声,服从均值为0,方差为0.1的正态分布。采用MATLAB软件进行编程仿真,分别运用附加动量法、自适应调整参数法、弹性算法、BFGS拟牛顿法、Levenberg-Marquardt法,对其训练结果进行考察如下。本仿真训练次数为20000,训练结果的间隔次数为50,训练目标误差为0.05,训练允许时间为50秒,学习率为0.003。1. 基本BP算法,工具函数为traingd()。图1 基本BP算法仿真曲线此时,训练时间为12s,训练次数为2092次。2. 附加动量法,工具函数为traingdm(),仿真曲线如图2所示。图2 附
6、加动量法仿真曲线此时,训练时间为11s,训练次数为2082次。3. 自适应调整参数法,工具函数为traingda(),仿真曲线如图3所示。图3 自适应调整参数法仿真曲线此时,训练时间为0s,训练次数为102次。4. 弹性算法,工具函数为trainrp(),仿真曲线如图4所示。图4 弹性算法仿真曲线此时,训练时间为0s,训练次数为12次。5. BFGS拟牛顿法,工具函数为trainbfg(),仿真曲线如图5所示。图5 BFGS拟牛顿法仿真曲线此时,训练时间为0s,训练次数为5次。6. Levenberg-Marquardt法,工具函数为trainlm仿真曲线如图5所示。图5 Levenberg-
7、Marquardt法仿真曲线此时,训练时间为0s,训练次数为1次。4.结论将以上各种BP算法的结果统计如1所示。表1 各种BP算法的结果统计学习算法训练时间(单位:秒)训练次数(精度要求0.05)基本BP算法(traingd)122092附加动量法(traingdm)112082自适应调整参数法(traingda)0102弹性算法(trainrp)012BFGS拟牛顿法(trainbfg)05Levenberg-Marquardt法(trainlm)01由表可知,改进的BP算法都优于基本BP算法,而优劣顺序为Levenberg-Marquardt法、BFGS拟牛顿法、弹性算法、自适应调整参数法
8、、附加动量法、基本BP算法,在实际的问题中,应根据具体要求选择适当的算法。5.程序clcclear%此函数的曲线图,教师信号%P=8*(rand(1,100)-0.5);N=20;for i=1:N train_P(i)=P(i); train_P(i+60)=P(i+60);%取样本中60个数作为训练集 test_P(i)=P(i+60);%取样本中20个数作为测试集 valid_P(i)=P(i+80);%剩下的20个数作为验证集endp0=sort(train_P);T0=1.1*(1-p0+2.*p0.2).*exp(-p0.2)./2); p1=sort(test_P);T1=1.1
9、*(1-p1+2.*p1.2).*exp(-p1.2)./2); p2=sort(valid_P);T2=1.1*(1-p2+2.*p2.2).*exp(-p2.2)./2); %归一化%Pn0,minp0,maxp0,Tn0,mint0,maxt0=premnmx(p0,T0);Pn1,minp1,maxp1,Tn1,mint1,maxt1=premnmx(p1,T1);Pn2,minp2,maxp2,Tn2,mint2,maxt2=premnmx(p2,T2); %网络的建立,目的实现非线性逼近% net = newff(-1,1, 10,1, 'logsig' 'purelin', 'Traingd');%10个中间隐层的BP训练 %神经网络工具箱参数设置%net.trainParam.epochs = 20000;net.trainParam.goal = 0.05;net.trainParam.show=50;net.trainParam.time=50;net.trainParam.lr=0.003; %开始训练%net = train(net,Pn0,Tn0);%画图%曲线拟合图%y1 = sim(net,Pn0);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年湖南省湘潭市雨湖区云塘街道招聘社区工作者考前自测高频考点模拟试题(共500题)含答案
- 预防网络诈骗13
- “综合性学习”教学策略(小学语文)
- 企业商标转让合同范例
- 辽宁风机安装施工方案
- 浙江水下桥梁切割施工方案
- 青海省西宁市示范名校2025届高三最后一模化学试题含解析
- 北京市2024年初中学业水平考试语文试卷
- 广东省东莞市第四高级中学2025届高三第五次模拟考试化学试卷含解析
- 2025届湖南湖北八市十二校高三最后一模化学试题含解析
- 《ai课件制作》课件
- 第10章 流体的力现象 综合素质评价卷(含答案)2024-2025学年教科版八年级物理下册
- 中国血管性认知障碍诊治指南(2024版)解读
- 《压缩空气系统培训》课件
- 电脑采购安装施工方案
- 2025年中考语文复习:散文阅读 试题解析+习题演练
- 物业客服主管转正述职报告
- 《中国成人支气管扩张症诊断与治疗专家共识2021》
- 中学美术《剪纸艺术》完整课件
- Unit 8 单元基础练习 人教版英语八年级下册
- 【基于Django框架的网上商城设计(论文)6800字】
评论
0/150
提交评论