基于BP神经网络的函数拟合算法研究.docx
《基于BP神经网络的函数拟合算法研究.docx》由会员分享,可在线阅读,更多相关《基于BP神经网络的函数拟合算法研究.docx(20页珍藏版)》请在冰豆网上搜索。
![基于BP神经网络的函数拟合算法研究.docx](https://file1.bdocx.com/fileroot1/2022-10/28/981ddd93-5ea2-4691-bbf0-fc4455b6862e/981ddd93-5ea2-4691-bbf0-fc4455b6862e1.gif)
基于BP神经网络的函数拟合算法研究
基于BP神经网络的函数拟合算法研究
[摘要]人工神经网络(ArtificialNeuralNetwork,ANN)是智能领域的研究热点,目前已经成功地应用到信号处理、模式识别、机器控制、专家系统等领域中。
在神经网络技术中,BP神经网络因具有结构、学习算法简单等特点,近年来得到广泛的关注,相关技术已经在预测、分类等领域中实现产业化。
本文针对经典的函数拟合问题,以BP神经网络为工具,力求分析BP神经网络隐含层神经元数目对网络性能以及函数拟合效果的影响。
通过Matlab的仿真实验结果表明,BP神经网络作为高效的计算智能工具,是实现复杂函数拟合的有效工具。
[关键字]人工神经网络;BP神经网络;函数拟合
FunctionFittingBasedonBPNeuralNetwork
[Abstract]Artificialneuralnetworkisahottopicinthefieldofintelligent,ithasbeensuccessfullyappliedtothefieldofsignalprocessing,patternrecognition,machinecontrol,expertsystems,etc.Intheneuralnetworktechnology,BPneuralnetworkduetohavingastructurelearningalgorithmandsimple,itiswidespreadconcerninrecentyears,relatedtechnologieshavebeenforecasting,classificationandotherareasofindustrialization.Inthispaper,afunctionforfittingtheclassicproblemswithBPneuralnetworkasatooltoseektoanalyzethenumberofBPneuralnetworkhiddenlayerneuronimpactonnetworkperformanceandfunctionfittingeffect.Matlabsimulationresultsshowthat,BPneuralnetworkasanefficientcomputationalintelligencetools,isaneffectivetooltoachievecomplexfunctionfitting
[Keywords]Artificialneuralnetworks;BPneuralnetwork;Functionfitting
1引言
1.1研究意义
函数拟合在数值计算中有着十分广泛的应用。
如何近似地表示函数,是函数拟合涉及的基本问题。
在进行数学的理论知识研究和实际的应用过程中,经常遇到如下问题:
在已知数据中寻找一个函数,使它在一定意义下成为已知数据的近似表示,并求出近似表示所产生的误差,这即是函数的拟合问题。
在函数拟合中,可以选择多种函数类用来拟合已知数据。
而对的近似程度即误差,也可以有多种计算方法。
对于经典的函数拟合原理,理论分析严密,体系十分成熟。
但由此衍生的许多算法都有一些共同的缺点:
计算量较大,适应性较差,对模型和数据的要求较高,依赖性强,而神经网络应用于函数拟合的优越性可在许多情况下体现出来,如:
第一,它提供了一个标准的拟合结构以及随着隐含层神经元个数改变而能达到任意精度的拟合工具;第二,有标准的学习算法用以确定拟合函数的参数,并且这一过程是拟人的,即,很好地模拟了人的学习过程;第三,能处理的数据对象十分广泛:
适用于大规模的,高度非线性的,不完备的数据处理。
利用神经网络进行函数拟合一般是从样本出发,对未知函数进行非线性拟合。
神经网络可以计算复杂的输入和输出结果之间的关系,因此非线性函数的拟合可以由神经网络来实现。
运用神经网络进行函数拟合在应用数学方面有十分重要的意义,更重要的是,其在工程学和物理学领域也有着十分重要的作用,这是因为此种拟合方式已经广泛地应用在信号处理、系统辨识及建模,以及模式识别等多个方面。
因此,本文将采用神经网络进行函数拟合研究[1],并充分分析拟合的效率以及存在的问题。
1.2研究现状
1.2.1函数拟合的工具及方法
近几十年来,用来进行函数拟合的数学工具,已发生了巨大的变化,从19世纪初的傅里叶(Fourier)理论[2]到20世纪60年代的神经网络理论,再到近10多年来产生的小波理论、多小波理论[3]及小波神经网络等。
(1)Fourier变换的函数拟合
傅里叶(Fourier)变换能将满足一定条件的某个函数表示成三角函数(正弦函数或余弦函数)或者它们的积分的线性组合。
在不同的研究领域,Fourier变换具有多种不同的变体形式,如连续Fourier变换和离散Fourier变换。
Fourier变换的线性性质、频移性质、微分关系、卷积特性等基本性质决定了它是一种很好的函数拟合工具。
(2)小波变换的函数拟合[4]
小波变换是当前应用数学和工程学科中一个迅速发展的新领域,经过近10年的探索研究,重要的数学形式化体系已经建立,理论基础更加扎实。
传统的信号理论,是建立在Fourier分析基础上的,而Fourier变换作为一种全局性的变化,其有一定的局限性。
在实际应用中人们开始对Fourier变换进行各种改进,小波分析由此产生了。
小波分析是一种新兴的数学分支,它是泛函数、Fourier分析、调和分析、数值分析的最完美的结晶;在应用领域,特别是在信号处理、图像处理、语音处理以及众多非线性科学领域,它被认为是继Fourier分析之后的又一有效的时频分析方法。
小波变换是指以某些特殊函数为基将数据过程或数据系列变换为级数系列以发现它的类似频谱的特征,从而实现数据处理。
(3)多小波理论[2]的函数拟合
作为小波理论发展的一个重要方向----多小波,不仅保持了单小波的优点,而且克服了它的缺点。
使得小波分析又一次形成研究热潮,成为国际研究热点。
多小波具有对称性、拟合性和插值性等特性。
函数拟合工具在实际应用中已被广泛运用,可以根据不同类型的函数,选择相应的拟合工具来进行拟合。
总的说来,函数拟合工具中函数的特性决定了最适宜拟合的函数类型和拟合的效果。
1.2.2神经网络的发展现状
神经网络用于函数拟合提供了一种不同于传统理论的方法,即神经网络函数拟合的研究将前馈网络与函数拟合有机地结合起来。
从理论上对神经网络的非线性拟合能力进行研究就是研究以前馈网络为代表的网络结构。
神经网络拟合能力的研究离不开人工神经网络长久而又曲折的发展历史。
1987年,Hecht等人指出了多层前馈网的非线性拟合能力与多变量连续函数表示定理[5]之间存在的关系,而这正是Kolmogrov于1957年证明了的。
这是第一次真正意义上的将拟合理论与前馈网络的映射能力相结合。
虽然后来Poggio指出这两方面实际上是无关的[7],但是不久之后许多学者都严格地证明了隐含层函数为S型函数的三层BP网络可以任意精度地拟合任意紧集上的连续函数。
BP网络的各种变型及其它用于函数拟合的网络的引出也都是基于此种原则。
1991年,Kreinovich得出了一个如下结论:
在非常微弱的限制下,对人工神经网络的隐含层引入任意的非线性单元都可使网络具有任意拟合各种连续函数的能力[8]。
这一结论对用于函数拟合的网络的实现具有非常重要的意义。
目前用于拟合的神经网络受到了广泛的关注。
而在应用最为广泛的BP神经网络上,由于隐含层神经元设置的不同会给函数拟合带来不同问题,本文在总结相关文献资料的基础上,详细分析了BP神经网络隐含层神经元的设置对函数拟合效果的影响,对比两种实验结果,就其问题讨论相关解决策略。
1.3本文研究内容
学习人工神经网络的基本结构及原理,并探讨BP神经网络在人工神经网络的地位和重要性,及其算法设计和技巧,利用神经网络的MATLAB编程分析函数逼近效果,之处其再函数逼近方面的良好性能和不足之处。
重点解决的问题:
1.探讨BP神经网络基本理论,基本方法;
2.设计BP神经网络的基本结构和MATLAB编程;
3.运用神经网络的MATLAB语言来实现算法设计。
1.4本文的组织结构
本文总共分为四章,各个章节内容如下:
第一章主要介绍课题研究意义以及当今神经网络的发展现状;
第二章介绍了神经网络的主要特性和结构,了解BP神经网络的架构;
第三章主要介绍BP神经网络解决函数拟合实验的设计并对结果进行简单的分析;
第四章对本文做出总结。
2人工神经网络简介
2.1人工神经网络特性
人工神经网络(ArtificialNeuralNetwork,ANN),亦称为神经网络(NeuralNetwork,NN),是由大量处理单元(神经元Neurons)广泛互连而成的网络,是对人脑的抽象、简化和模拟,它反映人脑的基本特性[9]。
人工神经网络研究的先锋,McCulloch和Pitts曾于1943年提出以一种叫做“似脑及其”(mindlikemachine)的思想,这种机器可由基于生物神经元特性的互连模型来制造,这就是神经网络的概念。
它具有以下特性:
(l)并行分布处理:
神经网络具有高度的并行结构和并行实现能力,因而能够有较好的耐故障能力和较快的总体处理能力。
这特别适于实时控制和动态控制。
(2)非线性映射:
神经网络具有固有的非线性特性,这源于其近似任意非线性映射(变换)能力。
这一特性给非线性控制问题带来新的希望。
(3)通过训练进行学习:
神经网络是通过所研究系统过去的数据记录进行训练的。
一个经过适当训练的神经网络具有归纳全部数据的能力。
因此,神经网络能够解决那些由数学模型或描述规则难以处理的控制过程问题。
(4)适应与集成:
神经网络能够适应在线运行,并能同时进行定量和定性操作。
神经网络的强适应和信息熔合能力使得网络过程可以同时输入大量不同的控制信号,解决输入信息间的互补和冗余问题,并实现信息集成和熔合处理。
这些特性特别适于复杂、大规模和多变量系统的控制。
(5)硬件实现:
神经网络不仅能够通过软件而且可借助软件实现并行处理。
近年来,一些超大规模集成电路实现硬件己经问世,而且可从市场上购到。
这使得神经网络具有快速和大规模处理能力的实现网络。
十分显然,神经网络由于其学习和适应、自组织、函数拟合和大规模并行处理等能力,因而具有用于智能控制系统的潜力。
2.2人工神经网络的特点
1、具有大规模并行协同处理能力
每一个神经元的功能和结构都很简单,但是由大量神经元构成的整体却具有很强的处理能力。
2、具有较强的容错能力和联想能力
单个神经元或者连接对网络整体功能的影响都比较微小。
在神经网络中,信息的存储与处理是合二为一的。
信息的分布存提供容错功能–由于信息被分布存放在几乎整个网络中。
所以当其中的某一个点或者某几个点被破坏时信息仍然可以被存取。
3、具有较强的学习能力
神经网络的学习可分为有教师学习与无教师学习两类。
由于其运算的不精确性,表现成“去噪音、容残缺”的能力,利用这种不精确性,比较自然地实现模式的自动分类。
具有很强的泛化(Generalization)能力。
4、是大规模自组织、自适应的非线性动力系统
具有一般非线性动力系统的共性,即不可预测性、耗散性、高维性、不可逆性、广泛连接性和自适应性等等。
2.3人工神经网络的基本特性和结构
人工神经网络由神经元模型构成;这种由许多神经元组成的信息处理网络具有并行