神经网络作业函数逼近

合集下载

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

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

3、 试用BP 神经网络逼近非线性函数f(u) =)5.0u (9.1e+-sin(10u) 其中,u ∈[-0.5,0.5](1)解题步骤:①网络建立:使用“net=newff(minmax(x), [20, 1], {'tansig ’,’ purelin' });,语句建立个前馈BP 神经网络。

该BP 神经网络只含个隐含层,且神经元的个数为20。

隐含层和输出层神经元的传递函数分别为tansig 和pure-lin 。

其他参数默认。

②网络训练:使用“net=train (net, x , y) ;”语句训练建立好的BP 神经网络。

当然在网络训练之前必须设置好训练参数。

如设定训练时间为50个单位时间,训练目标的误差小于0.01,用“net.trainParam.epochs=50; net.train-Param.goal=0.01;”,语句实现。

其他参数默认。

③网络仿真:使用“y1=sim(net, x); y2=sim(net, x};”语句仿真训练前后的BP 神经网络。

(2)程序如下:clear all ;x=[-0.5:0.01:0.5];y=exp(-1.9*(0.5+x)).*sin(10*x);net=newff(minmax(x),[20,1],{'tansig' 'purelin'});y1=sim(net,x); %未训练网络的仿真结果 net.trainParam.epochs=50;net.trainParam.goal=0.01;net=train(net,x,y);y2=sim(net,x); %训练后网络的仿真结果 figure;plot(x,y,'-',x,y1,'-',x,y2,'--')title('原函数与网络训练前后的仿真结果比较');xlabel('x');ylabel('y');legend('y','y1','y2');grid on(3)仿真结果如图:图1图1为原函数y与网络训练前后(y1,y2)的仿真结果比较图。

BP神经网络研究综述【文献综述】

BP神经网络研究综述【文献综述】

文献综述电气工程及自动化BP神经网络研究综述摘要:现代信息化技术的发展,神经网络的应用范围越来越广,尤其基于BP算法的神经网络在预测以及识别方面有很多优势。

本文对前人有关BP神经网络用于识别和预测方面的应用进行归纳和总结,并且提出几点思考方向以作为以后研究此类问题的思路。

关键词:神经网络;数字字母识别;神经网络的脑式智能信息处理特征与能力使其应用领域日益扩大,潜力日趋明显。

作为一种新型智能信息处理系统,其应用贯穿信息的获取、传输、接收与加工各个环节。

具有大家所熟悉的模式识别功能,静态识别例如有手写字的识别等,动态识别有语音识别等,现在市场上这些产品已经有很多。

本文查阅了中国期刊网几年来的相关文献包括相关英文文献,就是对前人在BP神经网络上的应用成果进行分析说明,综述如下:(一)B P神经网络的基本原理BP网络是一种按误差逆向传播算法训练的多层前馈网络它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阀值,使网络的误差平方最小。

BP网络能学习和存贮大量的输入- 输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程.BP神经网络模型拓扑结构包括输入层(input)、隐层(hide layer)和输出层(output layer),如图上图。

其基本思想是通过调节网络的权值和阈值使网络输出层的误差平方和达到最小,也就是使输出值尽可能接近期望值。

(二)对BP网络算法的应用领域的优势和其它神经网络相比,BP神经网络具有模式顺向传播,误差逆向传播,记忆训练,学习收敛的特点,主要用于:(1)函数逼近:用输入向量和相应的输出向量训练一个网络以逼近一个函数;(2)模式识别:用一个待定的输出向量将它与输入向量联系起来;(3)数据压缩:减少输出向量维数以便于传输或存储;(4)分类:把输入向量所定义的合适方式进行分类;]9[BP网络实质上实现了一个从输入到输出的映射功能,,而数学理论已证明它具有实现任何复杂非线性映射的功能。

机器学习大作业

机器学习大作业

机器学习大作业 Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】题目:机器学习授课老师:韩红基于BP 神经网络的非线性函数拟合摘要:BP(Back Propagation)神经网络是 1986年由 Rumelhart和 McCelland 提出的,它是一种误差按反向传播的多层前馈网络,是目前应用最广泛的神经网络模型之一。

BP神经网络具有非常强的非线性映射能力,能以任意精度逼近任意连续函数,因此在人工智能的许多领域都得到了广泛的应用。

通常,BP算法是通过一些学习规则来调整神经元之间的连接权值,在学习过程中,学习规则以及网络的拓扑结构不变。

然而一个神经网络的信息处理功能不仅取决于神经元之间的连接强度,而且与网络的拓扑结构(神经元的连接方式)、神经元的输入输出特性和神经元的阈值有关,因而神经网络模型要加强自身的适应和学习能力,应该知道如何合理地自组织网络的拓扑结构,知道改变神经元的激活特性以及在必要时调整网络的学习参数等。

1 BP神经网络概述BP神经网络是一种多层前馈神经网络,该网络的主要特点是信号前向传递,误差反向传播。

在前向传递中,输入信号从输入层经隐含层逐层处理, 直至输出层。

每一层的神经元状态只影响下一层神经元状态。

如果输出层得不到期望输出, 则转入反向传播,根据预测误差调整网络权值和阈值,从而使B P神经网络预测输出不断逼近期望输出。

BP神经网络的拓扑结构如图图1中, X1, X2, …, X n是BP神经网络的输入值, Y1, Y2, …, Y m是BP神经网络的预测值,ωij和ωjk为BP神经网络权值。

从图2可以看出, BP神经网络可以看成一个非线性函数, 网络输入值和预测值分别为该函数的自变量和因变量。

当输入节点数为n, 输出节点数为m 时, BP 神经网络就表达了从n 个自变量到m 个因变量的函数映射关系。

2 主要用途BP 网络主要用于:(1)函数逼近:用输入矢量和相应的输出矢量训练网络逼近某个函数;(2)模式识别:用一个特定的输出矢量将它与输入矢量联系起来;(3)分类:把输入矢量以所定义的合适的方法进行分类;(4)数据压缩:减少输出矢量维数以便于传输或存储。

一般有界Sigmoidal函数神经网络的插值与逼近

一般有界Sigmoidal函数神经网络的插值与逼近

一般有界Sigmoidal函数神经网络的插值与逼近章莉;谢林森;陆文秀【摘要】The interpolation of neural networks in the unidimensional Euclid space was discussed.First,for a set of interpolation sample,using a bounded general Sigmoidal function defined on R as the activationfunction,condition for existence of exact interpolation of feedforward neural networks with single hidden layer was given.Then the approximate interpolation of neural networks was constructed,the errors between the exact and approximate interpolation neural networks wereestimated.Finally,by using the modulus of continuity of function as a metric,the errors for the interpolation neural networks approximating continuous function were also estimated.%研究了一维欧氏空间中神经网络的插值问题.首先,对于一组插值样本和定义在R上的一般有界Sigmoidal激活函数,给出了精确插值的单隐层前向神经网络存在的条件;然后,构造了近似插值网络,给出了估计精确和近似插值网络之间的误差;最后,利用连续模作为度量,分别估计了两类网络对连续函数的逼近误差.【期刊名称】《浙江师范大学学报(自然科学版)》【年(卷),期】2013(036)003【总页数】7页(P270-276)【关键词】一般有界Sigmoidal函数;神经网络;精确插值;近似插值;误差估计【作者】章莉;谢林森;陆文秀【作者单位】浙江师范大学数理与信息工程学院,浙江金华321004;浙江师范大学数理与信息工程学院,浙江金华321004;浙江师范大学数理与信息工程学院,浙江金华321004【正文语种】中文【中图分类】O174.41设Rd是d维Euclid空间,{Xj}nj=0⊂Rd是n+1个不同的向量,{fj}nj=0是n+1个实数.对于一组插值样本若存在一个单隐层前向神经网络满足条件Ne(Xi)=fi(i=0,1,…,n),则称Ne(X)是对样本(1)的精确插值网络.其中Wj\5X表示Wj与X的内积,X=(x1,x2,…,xd)T∈Rd,Wj=(wj1,wj2,…,wjd)∈Rd,σ(x)是定义在R上的隐层节点的有界Sigmoidal激活函数,即满足最常用的Sigmoidal激活函数是文献[1-5]证明了对于定义在Rd中任一紧子集上的连续函数或可积函数,神经网络(2)能够一致逼近目标函数.文献[6]给出了σ(x)=时精确插值网络存在性的代数证明;文献[7]证明了当σ是非减的Sigmoidal连续函数时精确插值网络仍然是存在的.然而,在具体构造精确神经网络时就会出现(n+1)×(n+1)阶矩阵的求逆问题,计算量比较大,所以人们开始转向对近似插值网络的研究,即对任意的ε>0,存在形如式(2)的神经网络Na(X),满足|Na(Xj)- fj|<ε,j=0,1,…,n.文献[8]就假定在非减的Sigmoidal 函数的条件下,构造了精确插值网络,用代数方法证明了它的存在性,同时构造了近似插值网络,特别是当激活函数为式(4)时,可以对连续函数一致逼近.本文讨论在更一般的有界Sigmoidal函数条件下,即其中-∞<m<M<+∞,给出了文献[8]中所构造的精确插值网络存在时的条件,特别讨论了作为激活函数时的精确插值网络存在的条件,这比文献[8-9]更具有一般性.下面讨论d=1的情况.设{x0,x1,x2,…,x n}是[a,b]⊂R上的任意分划,不妨设令Δi=xi-xi-1(i=1,2,…,n).当i<j时,记Δi, j=Δi+Δi+1+…+Δj;当i=j时,Δi, j=Δi.现令变量A>0,取常数γ>0,β<0.设σ(x)是满足式(5)的一般有界Sigmoidal函数,记(βx)-m|}.由式(5)得(A)=0.特别地,当σ(x)为式(6)时,δ(A)<max(2eβA,2e-γA)→0,A→+∞.对于文献[8]中所构造的单隐层前向神经网络笔者将对任一组插值样本给出式(8)对样本(9)的精确插值存在的条件.定理1 假设σ(x)是满足式(5)的一般有界Sigmoidal函数,其中m≤0<M,则当δ(A)<时,存在{cj}nj=0⊂R,使得式(8)是对样本(9)的精确插值网络,即Ne(xi)=fi(i=0,1,…,n).证明由题意知,只需证明在已知条件下关于{cj}nj=0的线性方程组Ne(xi)=fi有解,即它的系数矩阵D的行列式非零.令D=(Mi j)ni, j=0,其中设.根据δ(A)的定义,容易得到:当x≥A时,下面就来估计矩阵E中的元素.当0≤j≤n-1时,|Mnn|=|σ(γA)|>M->M\5.运用不等式性质,同理可得:当0≤j≤n-1时,|Mn j|<-m+;当0≤i≤n-1,0≤j≤n且i≠j 时,|Min-Mi+1,n|<.综上,当0≤j≤n-1时,当j=n时,因此,|Mnn|>|Min-Mi+1,n|.(11)所以矩阵E是严格对角占优矩阵,即|E|≠0,换言之,|D|≠0,则线性方程组Ne(xi)=fi有解.定理1证毕.下面具体讨论当σ(x)=-1时,式(8)对样本(9)的精确插值存在的条件,先介绍一引理. 引理1[8] 设a0,a1,a2,…,an是R上n+1个不同的实数,令an+1=0,定义有限序列a0-a1,a1-a2,…,an-1-an,an-an+1,则对于成立的充要条件是ak>ak+1+.定理2 取σ(x)=-1,则当3e-γA<1时,存在{cj}nj=0⊂R,使得式(8)是对样本(9)的精确插值网络.证明由σ(x)的非减性得到M0 j>M1 j>…>Mn j(0≤j≤n),则此时矩阵E中的元素都为正数.由引理1知,式(10)和式(11)成立的充要条件是即应满足下列n+1个条件:2σ(γA)>2σ(βA)+σ((γ+wvj)A),1≤j≤n-1;(14)2σ(γA)>σ((γ+wτ)A).(15)因此,只需证明3-e-γA>0;(17)1-3e-γA>0(18)根据定理2的条件易得式(16)~式(18)成立.定理2证毕.定义为插值样本(9)的近似插值网络.下面估计精确插值网络Ne(x)与近似插值网络Na(x)之间的误差.先介绍一个定义和一个引理.在n+1维复欧氏空间Cn+1上,设B=(bi j)ni, j=0是复矩阵,z=(z0,z1,…,zn)是n+1维向量,定义范数引理2[8] 设B,B+ΔB是复可逆矩阵,z,z+Δz是n+1维列向量,若Bz=b,(B+ΔB)(z+Δz)=b,则.其中,cond1(B)=‖B‖1‖B-1‖1是矩阵B的条件数.定理3 假设σ(x)是满足定理1的非减的奇函数,则当δ(A)<时,对于插值样本(9),有证明为方便起见,式(8)和式(19)简写成由定理1可知,当δ(A)<时,线性方程组Ne(xi)=fi(i=0,1,…,n)的解是存在的,记其解为c=(c0,c1,…,cn)T.则此时线性方程组可表示成Dc=f,其中f=(f0, f1,…, fn)T.同样,记c′=(c′0,c′1,…,c′n)T,满足Uc′=f,其中c′j=(fj-fj+1)(j=0,1,…,n-1),c′n=(f0+fn),.若记B=U,z=c′,B+ΔB=D,z+Δz=c,b=f,则根据引理2有由于σ(x)是非减的奇函数,所以M=-m.下面考虑D-U中的元素.当0≤i≤j<n时,|Mi j-M|<δ(A);当0≤j≤i<n时,|Mi j+M|<δ(A).因此,由式(20)得,‖c-c′‖1<‖c′‖1.从而,定理3证毕.下面讨论近似插值网络对目标函数的逼近.设f(x)是定义在[a,b]上的连续函数,根据文献[10],对于t>0,定义为f的连续模,其中(f,t)=0.若存在只依赖于f的常数C(f),使得ω(f,t)≤C(f)tα,则称f 属于Lipschitz α类,记作f∈LipC(f)α,其中0<α≤1.在插值样本(9)中,令fi=f(xi)(i=0,1,…,n),下面对样本的插值网络Na(x),Ne(x)与f(x)的误差进行估计.定理4 假设σ(x)是满足定理1的非减的奇函数, f(x)是定义在[a,b]上的连续函数,则在[a,b]上式(22)中:表示f(x)在节点x-1,x0,x1,…,xn,x n+1处的变差,令f(x-1)=f(xn+1)=0. 证明对x∈[a,b],存在J∈N,使得对∀x∈[xJ,xJ+1],有(f,Δ).定理4证毕.推论1 假设σ(x)满足定理4的条件, f(x)是定义在[a,b]上的连续函数,其中|b-a|≥1.则当δ(A)<时,在[a,b]上有证明令根据连续模的性质知,所以因此,推论1证毕.当分划(7)是[a,b]上的n等分时,有于是得到如下的推论:推论2 假设σ(x)满足定理4的条件, f∈LipC(f)α,则当δ(A)<时,在[a,b]上满足定理5 假设σ(x)满足定理4的条件, f(x)是定义在[a,b]上的连续函数,其中|b-a|≥1,则当δ(A)<时,在[a,b]上满足证明根据定理3和推论1即可得到.引理3[8] 设{Xj}nj=0⊂Rd是n+1个不同的向量,那么存在向量w∈Rd,使得w\5Xi≠w\5Xj,0≤i,j≤n且i≠j,其中w\5Xj表示w与Xj的内积.由引理3,现构造对样本(1)的d维近似插值网络定理6 假设σ(x)是满足定理1的非减的奇函数,则当δ(A)<时,有证明根据引理3,不妨设w\5X0<w\5X1<…<w\5Xn,令t=w\5X,ti=w\5Xi,则式(23)变为Na(t)此时,Na(t)即为对样本(t0, f0),(t1, f1),…,(tn, fn)的一维近似插值网络,则可得到相应的精确插值网络Ne(ti)=fi,0≤i≤n.所以,由定理3即可得定理6的结论.定理6证毕.【相关文献】[1]Cybenko G.Approximation by superpositions of sigmoidal function[J].Math Control Signals Systems,1989,2(4):303-314.[2]Funahashi K I.On the approximate realization of continous mappings by neuralnetworks[J].Neural Networks,1989,2(3):183-192.[3]Barron A R.Universal approximation bounds for superpositions of a sigmoidal function[J].IEEE Trans Inform Theory,1993,39(3):930-945.[4]Chen Tianping,Chen Hong,Liu R W.Approximation capability in C(n) by multilayer feedforward networks and related problems[J].IEEE Trans Neural Networks,1995,6(1):25-30.[5]Mhaskar H N,Micchelli C A.Approximation by superposition of a sigmoidal function and radial basis functions[J].Advances in Applied Mathematics,1992,13(3):350-373.[6]Shrivatava Y,Dasgupta S.Neural networks for exact matching of functions on a discrete domain[C]//Proceedings of the 29th IEEE Conference on Decision andControl.Honolulu:IEEE1990:1719-1724.[7]Ito Y,Satio K.Superposition of linearly independent functions and finite mappings by neural networks[J].Math Sci,1996,21(1):27-33.[8]Llanas B,Sainz F J.Constructive approximate interpolation by neural networks[J].J Comput Applied Math,2006,188(2):283-308.[9]谢庭藩,曹飞龙.关于插值神经网络的构造性[J].自然科学进展,2008,18(3):334-340.[10]谢庭藩,周颂平.实函数逼近论[M].杭州:杭州大学出版社,1998.。

深度学习神经网络逼近非线性函数

深度学习神经网络逼近非线性函数

深度学习神经网络逼近非线性函数深度研究神经网络是一种强大的机器研究模型,被广泛应用于各个领域,包括图像识别、自然语言处理等。

它通过多层神经元来建模复杂的非线性函数关系,可以实现对非线性函数的逼近。

神经网络基础神经网络由输入层、隐藏层和输出层组成。

输入层接收输入数据,隐藏层负责对输入进行加工和提取特征,输出层则生成最终的预测结果。

每个神经元在隐藏层和输出层都会进行激活函数的运算,将线性变换后的结果转化为非线性的输出。

非线性函数逼近深度研究神经网络能够逼近非线性函数的原因在于其多层结构。

每一层的神经元都可以研究到不同级别的特征表示,通过多层的组合与堆叠,神经网络能够模拟和逼近非常复杂的非线性函数。

激活函数的重要性激活函数是神经网络中非常重要的组成部分,它引入了非线性因素,使得神经网络能够处理非线性问题。

常见的激活函数有Sigmoid函数、ReLU函数等,它们可以将线性变换的结果映射到非线性的输出,增强神经网络的表达能力。

深度研究的训练深度研究神经网络的训练过程通常使用反向传播算法。

该算法通过计算实际输出与期望输出之间的误差,然后根据误差调整神经网络的权重和偏置,以逐渐提高网络的预测准确性。

通过反复迭代训练,神经网络可以逐渐优化和逼近目标非线性函数。

应用领域深度研究神经网络广泛应用于图像识别、语音识别、自然语言处理等领域。

例如,在图像识别中,神经网络可以通过研究大量图像样本来识别物体、人脸等;在自然语言处理中,神经网络可以对文本进行分类、情感分析等任务。

深度研究神经网络的强大逼近能力使得它在这些领域具有很高的应用价值。

结论深度学习神经网络通过多层神经元和非线性激活函数的组合,能够逼近非线性函数。

它是一种强大的机器学习模型,在各个领域都有广泛的应用。

随着深度学习技术的不断发展,我们相信神经网络将会在更多领域展现出强大的能力和应用前景。

神经网络在函数逼近中的应用

神经网络在函数逼近中的应用

二 基于BP神经网络逼近函数 基于BP神经网络逼近函数
步骤1:假设频率参数k=1,绘制要逼近的非线性 步骤1:假设频率参数k=1,绘制要逼近的非线性 函数的曲线。函数的曲线如图1 函数的曲线。函数的曲线如图1所示 k=1; p=[p=[-1:.05:8]; t=1+sin(k*pi/4*p); plot( plot(p,t,'-'); '); title('要逼近的非线性函数'); title('要逼近的非线性函数'); xlabel('时间'); xlabel('时间'); ylabel('非线性函数'); ylabel('非线性函数');
图3 训练过程 从以上结果可以看出,网络训练速度很快,很 快就达到了要求的精度0.001。 快就达到了要求的精度0.001。
步骤4 步骤4: 网络测试 对于训练好的网络进行仿真: y2=sim(net,p); figure; plot(p,t,'plot(p,t,'-',p,y1,':',p,y2, '--') '--') title('训练后网络的输出结果'); title('训练后网络的输出结果'); xlabel('时间'); xlabel('时间'); ylabel('仿真输出'); ylabel('仿真输出'); 绘制网络输出曲线,并与原始非线性函数曲线以 及未训练网络的输出结果曲线相比较,比较出来 的结果如图4 的结果如图4所示。
BP网络在函数逼近中的应用 BP网络在函数逼近中的应用

RBF网络应用—逼近非线性函数 神经网络控制课件(第三版)

RBF网络应用—逼近非线性函数 神经网络控制课件(第三版)
例 2-6-5 M 高斯RBF网络应用 逼近非线性函数
1
RBF网络应用—逼近非线性函数
Matlab程序
m265a.m
4
RBF网络应用—逼近非线性函数
m265a.m执行结果
构造3个高斯RBF
5
RBF网络应用—逼近非线性函数
m265a.m执行结果
构造非线性函数d=f(u)
6
RBF网络应用—逼近非线性函数
12
RBF网络应用—逼近非线性函数
m265b.m执行结果
网络输出
13
RBF网络应用—逼近非线性函数
m265b.m执行结果
非线性函数d(o) 、网络输出y(*)
14
RBF网络应用—逼近非线性函数
m265b.m执行结果
与m265a.m 执行 结果 比较: 相同
非线性函数d(o) 、网络输出y(*)
m265a.m执行结果
设计的网络输出 y逼近d=f(u)
7
RBF网络应用—逼近非线性函数
m265a.m执行结果
Command Window:
w1 = 0.7000
-1.7000
2.1000
-0.1000
2.7000
-1.4000
3.0000
b1 = 26
1. 设计的RBFNN结构。 2. RBFNN的所有参数。 由m265b.m程序,仿真N1,7,1 逼近非线性函数d=f(u)的过程。
10
RBF网络应用—逼近非线性函数
m265b.m执行结果
7个隐层节点的输出
11
RBF网络应用—逼近非线性函数
m265b.m执行结果
7个隐层节点输出的加权、网络输出
15
RBF网络应用—逼近非线性函数

三种RBF网络函数逼近性能对比及应用研究

三种RBF网络函数逼近性能对比及应用研究

三种RBF网络函数逼近性能对比及应用研究伍凯;贺正洪;张晶;赵敏【摘要】非线性函数逼近问题是神经网络数据处理的具体应用之一,在相同误差指标和目标参数的情况下,以具体的非线性函数为例,仿真对比了径向基神经网络(Radical Basis Function,RBF)、模糊RBF和基于遗传算法的模糊RBF网络的逼近性能.结果表明,3种RBF网络结构都能够较好的逼近目标函数,但模糊RBF与GA-RBF网络结构较基本RBF网络结构而言能够更早达到较小的逼近误差范围.在此基础上,仿真验证了模糊GA-RBF网络应用于间接型自校正控制的有效性.%Nonlinear function approximation is one of the specific applications of neural networks to process data.In the case of the same error index and the target parameter,taking the concrete nonlinear function as an example,simulating and comparing Radical Basis Function neural network,fuzzy RBF neural network and fuzzy RBF neural network are based on genetic algorithm.The results show that the three RBF network structures can better approximate the objective function,but the fuzzy RBF and GA-RBF network structure can achieve a smaller approximation error range than the basic RBF network structure.On this basis,simulation results verify the effectiveness of the fuzzy RBF neural network for indirect self-tuning control.【期刊名称】《火力与指挥控制》【年(卷),期】2018(043)003【总页数】5页(P163-167)【关键词】RBF神经网络;模糊RBF神经网络;GA-RBF神经网络;函数逼近;自校正控制【作者】伍凯;贺正洪;张晶;赵敏【作者单位】空军工程大学防空反导学院,西安710051;空军工程大学防空反导学院,西安710051;空军工程大学理学院,西安710051;解放军93424部队,北京102101【正文语种】中文【中图分类】TP1830 引言在工业控制实际中,许多被控对象的特性参数或结构会因负荷等因素的变化而发生改变。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

神经网络作业(函数逼近)————————————————————————————————作者: ————————————————————————————————日期:ﻩ智能控制理论及应用作业1资料查询BP 神经网络的主要应用:人脸识别、风电功率预测、短时交通流混沌预测、高炉熔渣粘度预测、汇率预测、价格预测、函数逼近等Rbf神经网络的主要应用:函数逼近、短时交通流预测、模式识别、降水预测、民航客运量预测、遥感影像分析、声纹识别、语言识别、人脸识别、车牌识别、汇率预测Hopfield网络应用:车牌识别、图像识别、遥感影像分类、字母识别、交通标志识别、优化计算中的应用、联想记忆存储器的实现、2BP编程算法:2.1 利用样本训练一个BP网络注:此程序自李国勇书中学习而来程序部分:function[ output_args ]= bp(input_args )%UNTITLED Summary of this function goes here% Detailed explanation goes here%此设计为两层BP神经网络,3输入,3隐含层节点,两个输出%初始化部分:lr=0.05;%%需要给定学习速率error_goal=0.001;%期望的误差max_epoch=100000; %训练的最大步长a=0.9; %惯性系数Oi=0;Ok=0;%给两组输入,以及目标输出:X=[111;-1-11;1 -1 1;]; %随便给一组输入输入,训练BP网络T=[1 1 1 ;1 1 1];%X=-1:0.1:1; %输入范围%T=sin(pi*X);%X=[]q=3; %隐含层的节点数自己定义,在此给3个%初始化[M,N]=size(X);%输入节点个数为M,N为样本数[L,N]=size(T);%输出节点个数为Lwij=rand(q,M); %先给定加权系数一组随机值wki=rand(L,q);wij0=zeros(size(wij)); %加权系数矩阵的初始值wki0=zeros(size(wki));for epoch=1:max_epoch %计算开始NETi=wij*X;%各个隐含层的净输入for j=1:Nfori=1:qOi(i,j)=2/(1+exp(-NETi(i,j)))-1; %再输入作用下,隐含层的输出endendNETk=wki*Oi; %各个输出层的净输入for i=1:Nfor k=1:LOk(k,i)=2/(1+exp(-NETk(k,i)))-1;%在输入作用下,输出层的输出endendE=((T-Ok)'*(T-Ok))/2; %性能指标函数,就是误差if(E<error_goal) break; %判断是否满足误差,满足的话就直接跳出计算%不满足的话,就要修正加权系数elsedeltak=Ok.*(1-Ok).*(T-Ok);%计算△kw=wki;wki=wki+lr*deltak*Oi'+a*(wki-wki0);wki0=w;deltai=Oi.*(1-Oi).*(deltak'*wki)';%计算△iw=wij;wij=wij+lr*deltai*X'+a*(wij-wij0);wij0=w;endepoch %当前是第多少步X1=X;%保护当前的输入NETi=wij*X1;%再一次计算隐含层的输入输出for j=1:Nfor i=1:qOi(i,j)=2/(1+exp(-NETi(i,j)))-1;%endendNETk=wki*Oi;%再一次计算输出层的输出fori=1:Nfor k=1:LOk(k,i)=2/(1+exp(-NETk(k,i)))-1;endend%直到误差满足要求才跳到此步,输出修正的输出值Oi%Ok %最终满足误差要求下的输出wij%输出输入层与隐含层的最终修改后的权值wki %输出隐含层与输出层之间的取值end仿真结果:epoch=8Oi =0.9690 -0.4804 0.99950.9995 0.92440.99890.9734 0.99910.9356Ok =1.00001.0000 1.00000.9982 0.9658 0.9981wij =3.5796 2.0282 2.59855.3497 -0.4644 2.57735.5337-0.4516 -1.6788wki=1.5490 6.1430 5.88032.0593 1.32883.8144由仿真结果可以看出,网络在第八步就可以得到满足误差函数的输出,输出时OK。

由于初始权值是随机给定的,因此每次运行结果可能有所差异。

2.2用BP网路逼近sin函数:function [ output_args]= BP1(input_args)%UNTITLED Summary of this function goeshere% Detailed explanation goeshere%P=[01 2 3 45678 910];%T=[0 1234 3 2 1 2 3 4];P=-1:0.1:1;%输入范围T=sin(pi*P); %样本值net=newff([0 10],[5,1],{'tansig','purelin'}); %建立网络%net=newff([010],[5,1],{'tansig','purelin'},'traingd','learngd','msereg'); %net=newff([0 10],[5,1],{'tansig','purelin'},'traingdx','learngd','msereg');net.trainParam.epochs=200; %训练步长为200net=train(net,P,T);%开始训练figure;Y=sim(net,P); %输入下网络的输出plot(P,T,'+',P,Y,'o')%将样本与实际输出作图显示end逼近结果:其中+为目标值,O为实际输出值,从逼近小姑来看,效果还是比较理想的。

3 GUI 作业: MATLAB 工具箱中常用的几类函数:前向网络创建函数:ne wcf 创建级联前向网络ne wf f 创建前向BP 网络n ew ffd 创建存在输入延迟的前向网络传递函数:logsig S 型的对数函数dlo gsi g l ogsi g的导函数ta nsig S 型的正切函数dtansig tansig 的导函数pu re lin 纯线性函数dp ur elin pur elin 的导函数学习函数:l ea rngd 基于梯度下降法的学习函数learngdm 梯度下降栋梁学习函数训练函数:t rainbrBa ye s 规范化BP 训练函数-1-0.8-0.6-0.4-0.200.20.40.60.81-1.5-1-0.50.511.5trainc循环顺序渐增训练函数traincgb Powell-Beale连接梯度BP训练函数traincgf Fletcher-Powell连接梯度BP训练函数traincgp Polak-Ribiere连接梯度BP训练函数traingda自适应lrBP的梯度递减训练函数traingdx动量及自适应lrBP的梯度递减训练函数trainlm Levenberg-Marquardt BP训练函数trainoss 一步正切BP训练函数trainr随机顺序递增更新训练函数trainrp 带反弹的BP训练函数trains顺序递增BP训练函数trainscg 量化连接梯度BP训练函数性能函数:mse 均方误差函数msereg均方误差规范化函数显示函数:plotperf 绘制网络的性能plotes绘制一个单独神经元的误差曲面plotep绘制权值和阈值在误差曲面的位置errsurf计算单个神经元的误差曲面GUI的应用:我选择的是建立BP网络逼近sin函数首先在MATLAB主窗口输入nntool即可进入神经网络工具箱点击下方的creat network or data即可进行输入、目标输出及网络的选择。

1首先输入一个输入X:[-1:0.1:1];再输入期望输出T:[sin(pi*(-1:0.1:1))];2然后建立BP网络如下图所示:命名为BP1选取网络形式中选择:前馈BP网络,输入选择X,期望输出选择T,训练函数选择:TRAINLM(Levenberg-Marquardt BP训练函数)学习函数选择:LEARNGD(基于梯度下降法的学习函数)误差计算函数选择MSE(均方误差函数),神经元传输函数选择:TANSIG(S型的正切函数)单击creat即可建立网络。

3建立好后进行训练进入训练界面,选择输入和期望输出,即可进行训练。

训练结果如下:性能如下所示:可以看出,当系统训练6步时,系统输出即可满足性能要求,此时停止训练。

再此图,我们可以清楚的看清系统的期望输出、实际输出和二者的误差。

从误差可以看出,逼近的sin函数误差是很小的。

同理可利用RBF网络逼近SIN 函数建立网络如图所示:训练结果如下图所示:此图显示了利用RBF网路逼近sin函数,总共进行了27步逼近,最后的误差要优于BP网络。

原理清晰之后,可进行多种神经网络的训练,比较不同算法以及不同训练规则及误差计算函数不同对逼近效果的影响,优于时间关系,在此不一一罗列。

相关文档
最新文档