首页 BP神经网络逼近非线性函数

BP神经网络逼近非线性函数

举报
开通vip

BP神经网络逼近非线性函数应用BP神经网络逼近非线性函一、实验要求1、逼近的非线性函数选取为y=sin(x1)+cos(x2),其中有两个自变量即x1,x2,一个因变量即y。2、逼近误差<5%,即:应用测试数据对网络进行测试时,神经网络的输出与期望值的最大误差的绝对值小于期望值的5%。3、学习方法为经典的BP算法或改进形式的BP算法,鼓励采用改进形式的BP算法。4、不允许采用matlab中现有的关于神经网络建立、学习、仿真的任何函数及命令。二、实验基本原理神经网络概述BP神经网络是一种多层前馈神经网络,该网络的主要特点是信号前向传播,误差反...

BP神经网络逼近非线性函数
应用BP神经网络逼近非线性函一、实验要求1、逼近的非线性函数选取为y=sin(x1)+cos(x2),其中有两个自变量即x1,x2,一个因变量即y。2、逼近误差<5%,即:应用测试数据对网络进行测试时,神经网络的输出与期望值的最大误差的绝对值小于期望值的5%。3、学习方法为经典的BP算法或改进形式的BP算法,鼓励采用改进形式的BP算法。4、不允许采用matlab中现有的关于神经网络建立、学习、仿真的任何函数及命令。二、实验基本原理神经网络概述BP神经网络是一种多层前馈神经网络,该网络的主要特点是信号前向传播,误差反向传播。在前向传递中,输入信号从输入层经隐含层逐层处理,直至输出层。每一层的神经元状态只影响下一层神经元状态。如果输出层得不到期望输出,则转入反向传播,根据预判误差调整网络权值和阈值,从而使BP神经网络预测输出不断逼近期望输出。BP神经网络的拓扑结构如图所示。BP神经网络训练步骤BP神经网络预测前首先要训练网络,通过训练使网络具有联想记忆和预测能力。BP神经网络的训练过程包括以下几个步骤。步骤1:网络初始化。根据系统输入输出序列(X,Y)确定网络输入层节点数n、隐含层节点数l、输出层节点数m,初始化输入层、隐含层和输出层神经元之间的连接权值ωij,ωjk,初始化隐含层阈值a,输出层阈值b,给定学习速率和神经元激励函数。步骤2:隐含层输出计算。根据输入变量X,输入层和隐含层间连接权值ωij以及隐含层阈值a,计算隐含层输出H。Hjnf(i1ijxiaj)j=1,2,⋯,l式中,l为隐含层节点数,f为隐含层激励函数,该函数有多种形式,一般选取为f(x)1x1e步骤3:输出层输出计算。根据隐含层输出H,连接权值ωjk和阈值b,计算BP神经网络预测输出O。lOkHjj1jkbkk=1,2,⋯,m步骤4:误差计算。根据网络预测输出和期望输出Y,计算网络预测误差e。ekYkOkk=1,2,⋯,m步骤5:权值更新。根据网络预测误差e更新网络连接权值ωij,ωjkijijHj(1Hj)x(i)jkeki=1,2,⋯,nj=1,2,⋯,lk1jkjkHjekj=1,2,⋯,lk=1,2,⋯,m步骤6:阈值更新。根据网络预测误差e更新网络节点阈值a,b。步骤7:ajajHj(1mHj)jkekk1j=1,2,⋯,lbkbkekk=1,2,⋯,m判断算法迭代是否结束,若没有结束,返回步骤2。附加动量法经典BP神经网络采用梯度修正法作为权值和阈值的学习算法,从网络预测误差的负梯度方向修正权值和阈值,没有考虑以前经验的积累,学习过程收敛缓慢。对于这个问题,可以采用附加动量法来解决,带附加动量的算法学习公式为(k)(k1)(k)a(k1)(k2)式中,ω(k),ω(k-1),ω(k-2)分别为k,k-1,k-2时刻的权值;a为动量学习率,一般取值为0.95。2.4程序流程图三、程序简述本次实验选择逼近的非线性函数为y=sin(x1)+cos(x2)。程序首先创建用于神将网路训9,程练的样本数据,取在区间[-4.5,4.5]之间均匀分布的数值,由于有两个自变量,所以一共产生361组输入输出数据。其次确定神经网络的训练参数,比如隐含层节点数、学习速率、学习目标、隐含层和输出层的权值阈值等,其中隐含层节点数在参考相关资料后确定为这样不仅在训练结束后可以获得较小的误差,而且也不会使训练次数过大从而耗时较长;序中隐含层和输出层的权值阈值是采取随机产生的方法获得的,并且之后的修改方法采用了附加动量法,减少训练次数加快网络收敛。由于matlab可以采用矩阵运算的形式,所以输入输出数据和网络权值阈值构建生成相应的矩阵,这样可以在全部数据遍历一次之后再进行权值阈值修改,同样可以缩短网络训练时间。最后,根据修正后的权值阈值就输入数据预测网路输出,和期望输出数据进行比较,计算输出误差,直至训练结束根据训练结果画出相应图像。最初程序中神经网络训练只有当最大预测误差小于5%之后才停止,实际情况中,当输出接近0时只要有微小的变化就会产生较大的误差,这样不仅导致网络训练次数增加耗时长,还会使网络收敛速度变慢;在经过查询相关资料之后,训练结束条件除了最大预测误差小于5%之外,还增加了目标函数,目标函数是取所有误差的平方和,当目标函数的计算值小于预期目标时同样也会停止训练,此时默认训练已达目标。在实际检验过程中发现,加入目标函数后不仅可以有效地改善收敛速度慢耗时长的问题,同时各个坐标点的预测误差也在期望值之内,达到了实验要求。四、实验结果由于程序中权值阈值的取值是随机的,所以取其中一次的结果展示。最大训练次数为15329,训练结束后的最大误差为2.5331。图1非线性函数图像图2网络图图3误差曲线程序:clcclear%创建输入数据,产生361组输入输出数据row=1;fori=-4.5:0.5:4.5forj=-4.5:0.5:4.5input(row,1)=i;input(row,2)=j;output(row,1)=sin(input(row,1))+cos(input(row,2));row=row+1;endend%神经网络结构inputnum=2;hiddennum=9;outputnum=1;%网络参数learnSpeed=0.0003;learnGoal=0.05;%输入层节点数%隐含层节点数%输出层节点数%学习率%目标%隐含层及输出层的权值和阈值w1=0.2*rand(hiddennum,inputnum)-0.1;b1=0.2*rand(hiddennum,1)-0.1;w2=0.2*rand(outputnum,hiddennum)-0.1;b2=0.2*rand(outputnum,1)-0.1;%取训练数据和预测数据%采用全部样本遍历一次后再进行权值阈值调整%调整采用附加动量法,加快收敛速度,减少遍历次数input_train=[inputones(361,1)]';output_train=output;HH=[w1b1];OO=[w2b2];collectHH=[];collectOO=[];%用训练数据训练BP神经网络aimJ=0;max_rate=100;trainNum=0;%初始化最大样本误差%初始化训练次数while(max_rate>learnGoal)collectHiddenOut=logsig(HH*input_train);hiddenOut=[collectHiddenOut'ones(361,1)]';%计算隐含层输出%计算网络输出%计算误差networkOut=OO*hiddenOut;error=output_train-networkOut';%利用目标函数,判断是否结束循环aimJ=sumsqr(error)if(aimJ 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 函数图像y=sin(x1)+cos(x2)[x,y]=meshgrid(-4.5:0.1:4.5,-4.5:0.1:4.5);z=sin(x)+cos(y);figure(1)mesh(x,y,z)xlabel('x1');ylabel('x2');zlabel('y');%网络图t1=linspace(min(input(:,1)),max(input(:,1)));t2=linspace(min(input(:,2)),max(input(:,2)));[X,Y]=meshgrid(t1,t2);Z=griddata(input(:,1),input(:,2),network_test',X,Y);figure(2)mesh(X,Y,Z)xlabel('Input1');ylabel('Input2');zlabel('Output');%绘制误差曲线t3=linspace(min(input(:,1)),max(input(:,1)));t4=linspace(min(input(:,2)),max(input(:,2)));[X1,X2]=meshgrid(t3,t4);E=griddata(input(:,1),input(:,2),error,X1,X2);figure(3)mesh(X1,X2,E)xlabel('Input1');ylabel('Input2');zlabel('error');
本文档为【BP神经网络逼近非线性函数】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
captmumuma
精通药剂学
格式:doc
大小:170KB
软件:Word
页数:10
分类:
上传时间:2022-07-28
浏览量:1