资源描述:
《基于PSO的BP神经网络研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于PSO算法的BP神经网络研究杜华英基金项目:惠州学院科研基金项目(C206·0212)作者简介:杜华英(1975-),女,江西樟树人,惠州旅游学校信息技术部工程师,工程硕士。(惠州旅游学校信息技术部,广东惠州516057)摘要BP神经网络由于可以根据误差的反向传播来纠正权值和阈值,所以在许多领域取得了成功,但是它有可能陷入局部极小,不能确保收敛到全局极小点。另外,反向传播训练次数多,收敛速度慢,使学习结果有时不能令人满意。如果用均方误差指标作为适应值的粒子群算法对BP网络的权值进行训练,会得到较快的收敛速度,而且可以避免局部最值的出现。关键词神经网络;BP网络;PSO优
2、化算法;均方差TheResearchingofBPNeuralNetworksBasedonPSODUHua-ying1(InformationTechnologyOffice,HuizhouTourismSchool,Huizhou516057China)AbstractForfeed-forwardneuralnetwork,BPalgorithmisamongthemostimportantneuralnetworkalgorithms.But,BPalgorithmhasitslocalminima,italsomayspendmuchtrainingtimeand
3、trainingepochs,andmayalsogetnon-anticipantconvergence.Here,BPneuralnetworkbasedonPSOcanreducethetrainingtimeandtrainingepochs,andtheconvergenceisalsoimproved.KeywordsANN;BPneuralnetwork;ParticleSwarmOptimization(PSO);mean-squareerror0引言人工神经网络(ArtificialNeuralNetwork,ANN)是模仿生物神经网络功能的一种经验模型。
4、生物神经元受到传入的刺激,其作出的反应又从输出端传到相连的其它神经元,输入和输出之间的变换关系一般是非线性的。神经网络是由若干简单元件及其层次组织,以大规模并行连接方式构造而成的网络,按照生物神经网络类似的方式处理输入的信息。模仿生物神经网络而建立的人工神经网络,对输入信号有功能强大的反应和处理能力。BP神经网络是一种多层前向反馈神经网络。BP网络可以根据误差的反向传播来纠正权值和阈值,在许多领域取得了成功,但是它有可能陷入局部极小,不能保证收敛到全局极小点。另外,反向传播训练次数多,收敛速度慢,使学习结果有时不能令人满意。粒子群优化算法(ParticleSwarmOpti
5、mizer,PSO)是一种进化计算技术,源于对鸟群捕食的行为研究,由JimKennedy于1995年提出并成功用于函数优化。在PSO中,每个优化问题的解都是搜索空间中的一只鸟,称之为粒子。所有的粒子都有一个由被优化的函数决定的适应值(FitnessValue),每个粒子还有一个速度决定它们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。如果用粒子群算法对神经网络的权值进行训练,会得到较快的收敛速度,而且可以避免局部最值的出现。1PSO算法PSO算法[1-3]首先初始化一群随机粒子,然后通过迭代找出最优解。每一次迭代过程中,粒子通过跟踪两个“极值”来更新自己。
6、一个是粒子本身所能找到的最优解,即个体极值Pbest,另一个是整个群体目前找到的最优解,即全局极值Gbest。假设在一个D维搜索空间中有n个粒子组成一粒子群。其中第i个粒子的空间位置为Xi=(Xi1,Xi2,…,XiD),i=1,2,…,n。第i个粒子所经历的历史最佳位置为Pi=(Pi1,Pi2,…,PiD),每个粒子的飞行速度为Vi=(Vi1,Vi2,…,ViD),i=1,2,…,n。在整个粒子群中,所有Pi所记录的最佳解位置为Pg=(Pg1,Pg2,…,PgD)。每一代粒子的第d维(1≥d≥D)根据如下方程变化:Vij(t+1)=ω(t)Vij(t)+c1*rand()
7、*(Pij(t)-Xij(t))+c2*rand()*(Pgj(t)-Xij(t))(1)Xij(t+1)=Xij(t)+Vij(t+1)(2)ω(t)=ωmax-t(ωmax-ωmin)/tmax(3)其中,j=1,2,…,d;参数c1和c2分别是学习率,称为加速因子;rand()为[0,1]范围内变化的随机数;t为迭代次数,tmax为最大迭代次数;ωmin为最小惯性权,ωmax为最大惯性权。2BP神经网络BP网络[4]是误差反向传播(BackPropagation)网络。最初由Werbos开发的反向传播训练算法