热门搜索 :
考研考公
您的当前位置:首页正文

一种改进的粒子群算法在BP网络中的应用研究

来源:东饰资讯网
维普资讯 http://www.cqvip.com

计算机科学2006Vo1.33 N0.9 一种改进的粒子群算法在BP网络中的应用研究 江涛张玉芳王银辉 (重庆大学计算机学院 重庆400044) 摘要采用Sigmoid激活函数的三层前向神经网络能够以任意精度模拟复杂的非线性关系,训练算法对神经网络 模式分类的性能有较大影响。基于梯度下降的BP网络存在收敛速度慢、易陷入局部极小的缺陷。粒子群算法是一 种全局优化算法。本文针对粒子群算法本身存在的不足加以改进,用改进后的粒子群算法对BP网络进行训练,从而 克服BP网络的一些缺陷。采用IRIS分类问题验证了本文提出的方法的有效性。实验结果表明本文采用的方法比普 通PS()_BP算法效果更好。 关键词粒子群算法,全局优化,BP,神经网络 A Study of Application of An Improved PSO Algorithm in BP Network JIANG Tao ZHANG Yu-Fang WANG Yin-Hui (Computer School of Chongqing University,Chongqing 400044) Abstract 3-layer forward neural network with Sigmoid activation function can simulate complex nowlinear relationship with any precision.The training algorithm of BP affect ̄the classification performance of pattern of the network.BP network with gradient descent has some defects such as low convergence speed、immersing local minimization.Particle Swarm Optimization is a global optimization algorithm.Aiming at PSO’S defects this paper gives a method tO improve PS().The mproved PSO iS used to train BP network to overcome deficiency of BP.IRIS problem iS used to validate the efficiency of the method given in this paper.Experimental results prove that this method s better than simple Ps()_BP algorithm in performance. Keywords Particle swarm optimization algorithm,Global optimization,BP,Neural network 1 引言 BP网络是一种被广泛应用于模式识别、系统辨识、预测、 控制、图像处理等的人工神经网络模型。但BP算法是基于 梯度的方法,存在收敛速度慢、容易陷入局部极小等缺点。目 前的研究针对其缺陷提出了不少改进方法。粒子群优化方法 (Particle Swam ̄Optimization,PSO)是一种基于群体智能理 后期存在速度变慢的现象以及过早收敛即早熟。 PSO算法初始时随机产生目标函数的一组解,该解空间 内的每个解被称作粒子。每个粒子通过跟随当前最优粒子的 方法在求解问题的空间内搜索最优解。按照式(1)和(2)更新 每个粒子的位置和速度: v(i+1)一∞× (i)一fl×n×(pbest一 ( )+C2×V2× (gbest--’( )) (1) 论的优化算法,通过群体中粒子间的合作与竞争产生的群体 智能指导优化搜索。PSO采用速度一位移模型,操作简单 ], 易于编程,被广泛应用于求解全局优化问题。 x(i+1): ( )+ (i+1) (2) 式(1)中的pbest表示该粒子从开始到现在搜索产生的 最优解,gbest表示粒子群目前找到的最优解,即运行到当前 2改进的PSO算法(Improved PSO,IPSO) 粒子群优化算法(Particle Swarm Optimization,PSO)是 由Kennedy和Eberhart于1995年提出的一种新的进化算 代为止所找到的全局最优。wE Eo,1],被称作惯性因子,用 于根据上一次迭代得到的速度调节本次迭代过程中粒子的运 动速度。c 和 是加速系数,分别调节向全局最好粒子和个 体最好粒子方向飞行的最大步长,若太小,则粒子可能远离 法 ],该算法来源于对鸟群体觅食行为的研究,其理论依据是 演化计算理论。鸟群在随机搜索食物过程中,如果某区域里 只有一块食物,那么找到食物的最简单有效的策略是搜索目 前离食物最近的鸟的邻近区域。PSO就是从这种模型中得 目标区域,若太大则可能会导致飞过目标区域。r 和rz是 (O,1)之间的随机数。根据目标函数计算的适应度值用来衡 量搜索空间内哪个位置更好。适应度值驱使各粒子朝着搜索 空间内个体最优和到目前为止发现的全局最优方向移动。 从式(1)可以看出:当一个粒子的当前位置接近但并未到 达全局最优位置时,如果该粒子的上一次迭代中的运动速度 和惯性权值非零,则该粒子将渐渐运动远离陔位置。另外,一 到启发而产生的。粒子群算法通过个体之间的协作来寻找最 优解。粒子群算法可用于解决大量非线性、不可微和多峰值 的复杂问题的优化,已经被广泛应用于如函数优化、神经网 络、模式分类等科学和工程领域,大量实际应用证明其是有效 的。粒子群优化算法的收敛速度快(尤其是在进化初始阶 旦所有粒子追赶上当前全局最优粒子则这些粒子将停止移 动。该现象被称为早熟,即算法过早收敛。 为避免早熟,考虑在算法搜索过程中引入一些干扰因素。 段),运算简单,易于实现,没有遗传算法的编解码和杂交、变 异等复杂运算。但粒子群优化算法也存在不足,该算法是根 据全体粒子和自身的搜索经验向最优解的方向运动,在进化 江・算法过早收敛的发生有两个必要条件:(1)各粒子追赶上全局 最优粒子;(2)粒子的速度迅速降低至接近零。惯性权值接近 涛硕士生,研究方向为数据挖掘与人工智能。张玉芳副教授,研究方向为数据挖掘、人_I二智能。 164・ 维普资讯 http://www.cqvip.com

零时对速度也有影响。如果在迭代搜索的过程中惯性权值被 设为随机的接近零,该影响可忽略。对一个随机搜索过程来 说,条件(1)是不能避免的,原因有两点:a)循环过程中的每一 步是不能控制的.b)当找到全局最小时该情况也会发生。因 此避免PS()算法的早熟就考虑破坏条件2出现的可能。 当早熟发生时,为粒子的速度加上干扰条件。描述如下: v(j)一v(i)+rarldom x(i)一x(i)一2v(i) 如果是,则按式(1)、(3)更新每个粒子的速度 ,按式 (2)、(4)更新粒子的位置 T 否则按式(1)和(2)分别计算并更新每个粒子的速度和位 置 5)转2) 6)结束 (3) (4) 针对粒子群存在的过早收敛现象,采用改进后的带干扰 条件的粒子群方法训练的BP网络在产生下一代解集上具有 当早熟发生时,式(3)为速度增加一个随机数,从而改变 非常大的随机性,所以不容易陷入局部极小,而且由于每代所 有解信息的共享性和各个解的质量的提高,使得每代种群中 的解具有“自我”学习提高和向“他人”学习的双重优点,所以 具有较快的收敛速度,在算法的后期对新个体还进行训练优 化,更提高了收敛速度。由于不存在随机寻找最优的退化现 了该粒子的运动速度,式(4)将粒子移动到一个新的位置,改 变搜索方向。式(3)适合单模函数,式(4)适合多模函数。式 (3)和(4)描述的干扰使得粒子在新的位置以新的速度开始 搜索,跳出了原早熟区域,避免了局部最优解,能够更好地找 到全局最小。 当过早收敛发生时,干扰被引入。 搜索过程中引入搜 索因子来发现早熟发生的时机,该因子被定义为f…迭代搜 索过程中记录下每一个有效搜索步骤,每一有效搜索步骤的 输f{J记为 。当迭代过程中某一步的输出大于早熟因子(即 >f )时,式( )和(4)描述的干扰产生作用,破坏过早收敛 的条件。早熟冈子f 根据目标函数的不同取不同值。 3训练BP网络 BP算法的训练是一种有监督的方法,采用误差反向传播 的方法使网络的权值随机的沿梯度下降。每个权值都会影响 输m层产生的误差,因此为了减少该误差,要根据输出层的误 差调整权值矩阵,形成将输出端表现出的误差沿着与输入信 号相反的方向逐渐向输入端传递的过程。 将改进后的PSO(Improved PSO,IPS())用于训练BP网 络的方法是:粒子群中每个粒子的位置表示BP网络中当前 迭代中的权值集合,每个粒子的维数表示网络中起连接作用 的权的数量,以给定训练样本集的神经网络输出误差作为神 经网络训练问题的适应函数,适应度值表示神经网络的误差 阈值,误差越小则表明粒子在搜索中具有更好的性能。粒子 在权值空间内移动搜索使得网络输出层的误差最小,改变粒 子的速度即更新网络的权值,以减少MSE。通过这种方式, PSO优化搜索训练神经网络的权值来获得更小的输出误差。 在每一代过程中,所有粒子根据计算Ⅲ的新的速率更新位置, 向新的方位移动,新的位置即新的权值集合,根据该权值集合 得到新的MSE。如果某粒子运动到的新方向使得新的MSE 不能减小,则粒子不朝该新方向移动,即丢弃新的权值矩阵。 所有粒子重复该操作。每次迭代过程中产生MSE最小的粒 子为目前全局最优粒子,即PSO算法中的gbest。该训练过 程不断重复直到产生满足要求的误差或者超过预先设定的计 算次数为止。算法结束时得到的权值集合即最终结果。 .从上面的描述可以看出:采用了改进后的PSO算法对 BP网络进行训练,避免了原BP算法中的向后传播过程,加 快了搜索速度并且能够防止整个算法的过早收敛。 算法步骤: 1)初始化参数,包括种群大小、加速系数、学习率、迭代次 数等 2)如果m e≤E或者迭代次数超过上限,算法结束 3)对每个粒子i, 在网络中正向传播,计算其在输出层的输出,得到误差 E,如果E<p6 ,则p 一E,p 一 ,如果E< ,,则 一 E ,pg— 4)判断是否出现早熟 象,因此与采用遗传算法训练的BP网络相比,后期收敛相对 更平稳,波动现象大大减少。与使用普通PSO训练的BP网 络比较,也具有更好的寻优能力和更好的泛化性能。 4实验 IRIS数据库是广泛使用的模式分类实例系统。本文采 用IRIS来验证改进后的算法效率。IRIS含有15o个例子,分 为Setosa,Versicolor与Virginica三类,每类包含5O个例 子,由四个实数特征值描述,分别表示花萼(Sepa1)长度、花萼 宽度、花瓣(Peta1)长度、花瓣宽度。模式分类问题根据特性 值区分三种IRIS植物[ 。取lo1组数据用于训练,49组用 于测试训练后的网络的分类性能。 网络结构为4-3—3,包括偏差权在内总共27个权值,粒子 群大小为10,c 和C 均设为2,惯性权值从0.7到0.3线性 下降,网络最大迭代次数为4000,因此向前传播的总数量为: 种群数*最大迭代数一40000。 参照验证BP算法性能常用的指标。实验考察4个指 标:MS 、MSET、£G和ET。MSF. ̄-是在测试样本上得出的 MSE,MSE r是在训练样本得出的MSE,乩和£ 分别是由训 练样本集和测试样本得出的误差,其表达式为: 训练集中分类错误的数量 训练样本个数 钉一—— 面稃 测试集中分类错误的数量、一 川  BP PS()_BP IPS( BP MSET 0.0508 O.0106 O.O13O MSEG 0.0586 O.O269 0.0l84 £丁 3.4 2.35 2.45 EG 4.5 5.1 3.0 图1误差结果 网2误差随时间变化情况 (下转第290页) ・ 165 ・ 维普资讯 http://www.cqvip.com

JXTA的主要技术是:通过Peer元素组建Peer Group; 等相关内容。 提供一套通用服务、协同T作的Peer集合;通过Pipe通道传 (4)疑难解答模块:主要包括视频交流、专题讨论、疑难分 输Message;由一个XMI 结构文档Advertisement来命名、描 述或发布一个资源。JXTA技术实际上就是一组协议,每一 种协议定义参加协议的各个成员问如何交换信息。其中 PDP(Peer Discovery Protoco1)是核心协议之一,具有网络发 析3个子模块,学生可以提出相关的问题,教师针对学生提出 的问题进行分析探讨,同时教师可以针对相关专题进行讨论 研究,充分体现网络教学的互动性。 结论本系统设计上采用基于P2P的分布式视频教学 系统结构。通过合理使用用户计算机空闲的资源提供部分服 现、被动发现、瀑布式发现、通过集合点发现;使用PRP(Peer Resolver Protoco1)协议来向其他Peer发Hj通用查询消息,并 获得查询结果;通过PIP(Peer Information Protoco1)获知其他 Peer的状态、运行时间、负载、能力等;通过PMP(Peer mem— bership protoco1)协议使Peer能自己组成一个或加入一个 Peer组;通过PBP(Peer Biding Protoco1)协议使Peer能建立 一务,使得整个系统的能力得到极大的提高。网络中的资源和 服务分散在所有节点上,体现了P2P的非中心化;整个体系 是全分布的,随着用户的加入,不仪服务的需求增加了,系统 整体的资源和服务能力也在同步地扩充,体现了可扩展性;由 于服务是分散在各个节点之间进行的,部分节点或网络遭到 破坏对其它部分的影响很小,还能够根据网络带宽、节点数、 个或多个连接管道。 本系统远程教育软件平台在内容方面主要实现以下几个 负载等变化不断地做自适应式的调整,体现了健壮性;南于每 个节点既是服务器又是客户机,更好地实现了整个网络的负 载均衡。随着用户的增加,系统容量扩大,带觅资源增加,系 统能力也不断地增强。 功能模块。 (1)教学资料模块:主要包括教学大纲模块、课件下载模 块、教学理论模块,该模块主要是针对教师的应用。教师可以 根据需要上传教学大纲、课件等相关资料,并可以对上传的资 料进行相应的编辑、修改等操作。同时,教师可以相互交流教 学理论,探讨教学方法。 参考文献 1 魏苏林,等.基于P2P模式的新型视频点播系统.微计算机信息, 2005(12) (2)网络课堂模块:主要包括双向视频课堂(包括视频点 播)模块、网上课程模块和电子教材模块3个部分,该模块为 客户提供网络教学环境,为用户提供点播源和广播源的制作, 可以根据需要更新、调整教学视频流。 (3)在线考试模块:主要包括试题集锦、试题答案、在线分 析3个部分,采用ASP将脚本、HTMI 和数据库访问功能相 结合,为客户提供在线考试环境,并提供试题答案和在线分析 (上接第165页) 2 葛苏慧,等.IP多播技术在网络教学系统中的应用探究.教育信息 化,2005(10) 3 方炜,等.基于P2I 的流媒体应用及其戈键算法研究.计算机应用 与软件,2005(5) 4 易光华,等.基于对等网络的V()D模型研究.网络安全技术与应 用,2005(2) l948 从实验结果看,用改进后的PSO对BP进行训练能够避 5 Shi Y H,Eberhart RC.Empirical study of particle swarm optimi 免由于PSO本身的缺陷导致在BP训练过程中不能更好地找 到最小解,减少了训练时间,能够有效地进行全局寻优,使得 出的误差更小。 zation EA3.In:Proceedings of IEEE International Congress on Evolutionary Computation[c].USA:IEEE,1999.6~9 6 Yar【gJ M,Kao C Y.A robust evolutionary algorithm for training 结论本文分析了PSO算法的早熟现象,并进行了改 neural networks[J].Neural Computing and Application,2001, 10(3):2l4~230 进。改进后的PSO算法被用于BP网络的训练,在克服局部 极小,加快收敛速度方面有显著的效果。通过IRIS问题验证 了使用改进后的PSO作为BP网络的训练算法的有效性。 7 Van den B F,Engelbrecht A P,Training Product Unit Networks Using Cooperative Particle Swarm Optimizers EC].In:Proc.of the third Genetic and Evolutionary Computation Conference,200 1 8 Maniezzo V.Genetic evolution of the topology and weight distri— bution of neural networks.IEEE Trans.Neural Networks, l994,5(1):39~53 参考文献 1 van den F B,Engelbrecht AP.Cooperative Learning in Neura1 Networks using Particle Swarm Optimizer.In:Proc.SAICSIT, 2000 9 周弛,高海兵,高亮,等.粒子群优化算法lJ].计算机应用研究, 2003,(12):7~12 2 Zhang Chunkai,Shao Huihe,Li Yu.Particle Swarm Optimiza— tion for Evolving Artificial Neural Network.IEEE lo李孝安,张晓缋.神经网络与神经计算机导论[M].西北工业大 学出版社,1995 3 Clerc M,Kennedy J.The Particle Swarm-Explosion,Stability, ll侯志荣,吕振肃.基于MAT1 AB的粒子群优化算法及其应用 and Convergence in A Multidimensional Complex Space EJ]. IEEE Trans.on Evolutionary Computation,2002,6(1):58~73 EJ].计算机仿真,2003,20(10):68 ̄70 l2王岁花,冯乃勤,等.一类新颖的粒子群优化算法EJ}.计算机工 程与应用,2003(13):1O9~uO 4 Kennedy J,Eberhart R C.Particle Swarm Optimization.Proc. IEEE International conference on Neural Networks.1995.1942~ ・290・ 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top