您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > AI人工智能 > 神经网络原理及BP网络应用实例
1神经网络原理及BP网络应用实例摘要:本文主要对神经网络原理进行系统地概述,再列举BP网络在曲线逼近中的应用。神经网络是一门发展十分迅速的交叉学科,它是由大量的处理单元组成非线性的大规模自适应动力系统。神经网络具有分布式存储、并行处理、高容错能力以及良好的自学习、自适应、联想等特点。随着计算机的发展,目前已经提出了多种训练算法和网络模型,其中应用最广泛的是前馈型神经网络。本文将介绍人工神经网络的基本概念、基本原理、BP神经网络、自适应竞争神经网络以及神经网络的应用改进方法。关键字:神经网络;收敛速度;BP网络;改进方法TheprincipleofneuralnetworkandtheapplicationexamplesofBPnetworkAbstract:Neuralnetworkisacrossdisciplinewhichnowdevelopingveryrapidly,itisthenonlinearityadaptivepowersystemwhichmadeupbyabundantoftheprocessingunits.Theneuralnetworkhasfeaturessuchasdistributedstorage,parallelprocessing,hightoleranceandgoodself-learning,adaptive,associate,etc.Currentlyvarioustrainingalgorithmandnetworkmodelhavebeenproposed,whichthemostwidelyusedtypeisFeedforwardneuralnetworkmodel.Feedforwardneuralnetworktrainingtypeusedinmostofthemethodisback-propagation(BP)algorithm.Thispaperwillintroducesthebasicconcepts,basicprinciples,BPneuralnetwork,adaptivecompetitiveneuralnetworkandtheapplicationofartificialneuralnetwork.Keywords:neuralnetwork,convergencespeed,BPneuralnetwork,improvingmethod1神经网络概述1.1生物神经元模型人脑是由大量的神经细胞组合而成的,它们之间相互连接。具体结构如图1所示。2图1生物神经元模型由图看出,脑神经元由细胞体、树突和轴突构成。细胞体是神经元的中心,它一般又由细胞核、细胞膜等构成。树突是神经元的主要接受器,它主要用来接受信息。轴突的作用主要是传导信息,它将信息从轴突的起点传到轴突末梢,轴突末梢与另一个神经元的树突或细胞体构成一种突触的机构。通过突触实现神经元之间的信息传递。1.2人工神经元模型人工神经网络主要是利用物理器件来模拟生物神经网络的某些结构和功能。人工神经元模型如图2所示。图2人工神经元模型人工神经网络模型是1943年心理学家McCulloch和科学家W.Pitts在分析总结神经元基本特性的基础上首先提出的,它是大多数神经网络模型的基础。jiw---代表神经元i与神经元j之间的连接强度(模拟生物神经元之间突触连接强度),称之为连接权;iu---代表神经元i的活跃值,即神经元状态;iv---代表神经元j的输出,即是神经元i的一个输入;3i---代表神经元的阐值。严格来说,神经网络是一个具有如下性质的有向图。(1)对于每个结点有一个状态变量jx;(2)结点i到结点j有一个连接权系数jiw;(3)对于每个结点有一个阈值j;(4)对于每个结点定义一个变换函数,,()iijijfxwij,最常见的情形为()jiijifwx。下图表示了两个典型的神经网络结构。图3典型的神经元网络结构2.BP神经网络人工神经网络是一种信息处理系统,其中有一种用误差传播学习算法(ErrorBackPropagation即BP模型)进行训练的多层前馈神经网络,简称为BP网络。广泛应用于模式识别及分类、故障智能诊断、图像处理、函数拟合、最优预测等方面。2.1BP神经网络特点:(1)分布式的信息存储方式(2)大规模并行处理(3)自学习和自适应性(4)较强的鲁棒性和容错性在所有的神经网络应用中,BP神经网络所占比例在80%以上。BP神经网络具有良好的非线性逼近能力和泛化能力以及使用的易适性。BP神经网络在模式识别、图像处理、信息处理、智能控制、故障检测、企业管理、市场分析等方面的应用已取得了显著成效。42.2BP神经网络介绍基本BP算法包括两个方面:信号的前向传播和误差的反向传播。即计算实际输出时按从输入到输出的方向进行,而权值和阈值的修正从输出到输入的方向进行。图4BP网络结构图中:jx表示输入层第j个节点的输入,j=1,…,M;ijw表示隐含层第i个节点到输入层第j个节点之间的权值;i表示隐含层第i个节点的阈值;()x表示隐含层的激励函数;kiw表示输出层第k个节点到隐含层第i个节点之间的权值,i=1,…,q;ka表示输出层第k个节点的阈值,k=1,…,L;x表示输出层的激励函数;ko表示输出层第k个节点的输出。(1)信号的前向传播过程隐含层第i个节点的输入neti:1Miijjijnetwx(2-1)隐含层第i个节点的输出yi:1()()Miiijjijynetwx(2-2)输出层第k个节点的输入netk:111()qqMkkiikkiijjikiijnetwyawwxa(2-3)1a1kiwijwLakaqi………………1xjxMx1okoLo输出变量输入变量输入层隐含层输出层5输出层第k个节点的输出ok:111()()()qqMkkkiikkiijjikiijonetwyawwxa(2-4)(2)误差的反向传播过程误差的反向传播,即首先由输出层开始逐层计算各层神经元的输出误差,然后根据误差梯度下降法来调节各层的权值和阈值,使修改后的网络的最终输出能接近期望值。对于每一个样本p的二次型误差准则函数为Ep:211()2LpkkkETo(2-5)系统对P个训练样本的总误差准则函数为:2111()2PLppkkpkETo(2-6)根据误差梯度下降法依次修正输出层权值的修正量Δwki,输出层阈值的修正量Δak,隐含层权值的修正量Δwij,隐含层阈值的修正量i。kikiwEw;kkEaa;ijijEww;iiE(2-7)输出层权值调整公式:kikkkkkikkkikiwnetnetooEwnetnetEwEw(2-8)输出层阈值调整公式:kkkkkkkkkknetonetEEEaanetaoneta(2-9)隐含层权值调整公式:iiiijijiijiiijnetynetEEEwwnetwynetw(2-10)隐含层阈值调整公式:iiiiiiiiiinetynetEEEnetynet(2-11)又因为:11()PLppkkpkkEToo(2-12)ikikywnet,1kkneta,ijijnetxw,1iinet(2-13)611()'()PLppkkkkipkiETonetwy(2-14))(iiinetnety(2-15)'()kkkonetnet(2-16)所以最后得到以下公式:11()'PLppkikkkipkwTonety(2-17)11()'PLppkkkkpkaTonet(2-18)11()'()PLppijkkkkiijpkwTonetwnetx(2-19)11()'()PLppikkkkiipkTonetwnet(2-20)BP网络是一种单向传播的多层前馈网络,它包含输人层、隐含层和输出层,是目前应用较多的一种模型。该算法在层次型网络结构上采用误差逆传播学习方式,学习过程由正向传播和误差逆传播组成。BP神经网络的训练过程如下:(1)网络初始化:网络输入节点数n,隐含层节点数1,输出节点数m;初始化连接权值;初始化偏置a,b;给定学习速率和神经元激活函数。(2)隐含层的输出计算根据输入向量X,输入层和隐含层间连接权值wij及隐含层阈值a,计算隐含层输出H。(3)计算输出层输出根据隐含层输出H,连接权值和阈值b,计算BP神经网络预测输出。(4)计算误差根据网络预测输出与期望输出Y,计算网络预测误差e。7(5)权值更新(6)阈值更新根据网络预测误差e更新网络节点阈值a,b。(7)判断算法迭代是否结束,若没有结束,返回步骤2。假设神经网络每层有n个节点,若某一层节点j与上层节点i之间权值为Wij,节点的输入总和计为netj、输出计为Oj,转移函数取非线性的Sigmoid型函数1()()xfxHe,对于节点j,其输入值为其前一层各单元加权和jijjinetWOb,输出值为()jjOfmet.定义误差函数2^1()2iiEyy式中^iy为输出期望值,jy为输出实际值。BP算法采用梯度法调整权值,每次调整的量ijijEWW、式中01,称为学习速率,它决定每一次训练中的权值变化大小。进一步简化计算有ijijbWO,iijb,其中:^()()ijjjjfnetyy,j为输出层单元;()ijjjkjkfnetW,j为隐层单元。BP网络是一种多层前馈神经网络,它采用后向传播算法,亦称BP算法(首先样本从输入层经各中间层向输出层传播,输出层的各神经元获得网络的输人响应;然后按照减小目标输出与实际输出误差的方向,从输出层开始经各中间层逐层修正各连接权值,以达到学习目的)。BP网络具有结构简单、可操作性强、能模拟任意的非线性输入/输出关系等优点,目前已被广泛应用于模式识别、智能控制、预测、图像识别等领域。综上,我们可以看出BP算法主要的优点是简单、易于实现。但是BP算法有两个致命的缺陷:首先最大的缺陷是BP算法很可能陷入局部极小值,因为通常的误差曲面都是凸凹不平的,会有多个极值点。BP算法的另一个缺陷是收敛速度慢,当采用梯度下降法时步长不容易确定,步长太长则达不到精度,甚至会发散;太小则迭代步骤增加,收敛速度慢。83结束语本文主要介绍了人工神经网络的基本原理和BP算法,总结了针对BP网络的突出问题所做的各种网络参数改进方法。在收敛速度方面主要讨论了学习率改进方法对此的影响。经过几十年的发展,神经网络理论在模式识别、自动控制、信号处理、辅助决策、人工智能等众多研究领域取得了广泛的成功。随着计算机的发展,神经网络算法将更加进一步得到发展,神经网络将更加广泛地应用于更多的领域。4基于MatlabBP网络在函数逼近中的应用实例BP网络由很强的映射能力,主要用于模式识别分类、函数逼近、函数压缩等。下面将通过实例来说明BP网络在函数逼近方面的应用。设逼近以下函数:6532y2332xxxx,实现对该非线性函数的逼近。4.1该函数的函数图为:图5逼近函数曲线图4.2网络的建立应用newff()函数建立BP网络结构,输出层有一个神经元。选择隐层和输出层神经元传递函数分别为tansig函数和purelin函数,网络训练的算法采用Levenberg–Marquardt算法trainlm。4.3网络训练应用train()函数对网络
本文标题:神经网络原理及BP网络应用实例
链接地址:https://www.777doc.com/doc-3553156 .html