您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 基于认知学粒子群算法的BP网络优化方法
1上海大学2010~2011学年冬季学期研究生课程考试小论文格式课程名称:计算智能课程编号:081101708论文题目:基于认知学粒子群算法的BP网络优化方法研究生姓名:赵海红学号:10720938论文评语:成绩:任课教师:刘悦评阅日期:年月日2基于认知学粒子群算法的BP网络优化方法赵海红2,3(上海大学计算机工程与技术学院,上海,200072)摘要:本文依据心理学与认知学理论研究了粒子群算法的BP神经网络优化问题,我们将改进的粒子群优化算法用于BP神经网络的学习训练,并与传统的BP网络的学习能力进行了比较。结果表明,将改进粒子群优化算法应用于BP神经网络优化,不仅能更快地收敛于最优解,而且很大程度地提高了结果的精度。关键词:神经网络;粒子群算法;优化;BP;认知学AMethodOfBPOptimizationBasedonCognitive-basedParticleSwarmZhaoHaihong2,3(ComputerEngineeringandTechnologyofShanghaiUniversity,Shanghai,200072)【Abstract】:ThistheorybasedoncognitivepsychologyandtheparticleswarmalgorithmofBPneuralnetworkoptimizationproblems,wewillimproveparticleswarmoptimizationalgorithmforBPneuralnetworklearningandtraining,andwiththetraditionalBPnetworklearningabilitycompared.TheresultsshowthattheimprovedPSOalgorithmisappliedtoBPneuralnetworkoptimization,notonlyconvergetotheoptimalsolutionmorequicklyandgreatlyincreasetheaccuracyoftheresults.【Keywords】:Neuralnetwork;particleswarmalgorithm;optimization;BP;CognitiveScience1引言粒子群优化算法[12](ParticleSwarmOptimi-zation,PSO)最初是由JimKennedy于1995年提出并成功地用于函数优化,后来又进行了有效的拓展,是计算智能领域除蚁群优化算法(AntColonyOptimization,ACO)外的另外一种群体智能算法(SwarmIntelligence,SI)。由于它原理上十分简单,所需考虑的参数也较少,计算本身的快速性和算法本身的易实现性,目前已经被广泛应用于神经网络训练、目标函数优化、模糊控制系统等许多领域。人工神经网络[1](简称神经网络)处理信息的方式完全不同于符号逻辑系统,具有一些独特的性质:如具有自组织、自学习能力等,它已经被广泛应用于模式识别、知识工程、智能控制等方面,在当前已知的各种人工神经网络模型中,多层前馈神经网络(ErrorBackPropagationTraining,简称BP神经网络)是实际应用中最为广泛的一类。神经网络训练方法有很多,但往往都有一定缺陷,收敛速度慢,容易陷入局部极小值,或者不易实现。因此,BP网络的优化改进成为了研究的热点之一[11]。近年来,有人将PSO的思想引入到BP网络优化中,用粒子群的迭代来代替BP算法中的梯度修正。此策略可以缩短网络训练的时间;提高算法的收敛速度。但如果根据不同的系统目标,改进原有的粒子群算法,就能进一步提高BP网络的性能,使其实用性更强。为了在全局搜索和局部搜索之间取得更好的平衡,本文依据认知心理学理[13]论拟从PSO给定固定权值的策略出发,将原来的线性递减权值策略改造为一个非线性递减权值策略。实验表明,将改进粒子群优化算法用于BP神经网络优化,不仅能更快地收敛于最优解,而且很大程度地提高了结果的精度。2认知心理学基本概念2.1认知心理学认知心理学是二十世纪50年代中期在西方兴起的一种心理学思潮,二十世纪70年代开始其成为西方心理学认识心理学的一个主要研究方向。它研究人的高级心理过程,主要是认知过程,如注意、知觉、表象、记忆、思维和语言等。与行为主义心理学家相反,认知心理学家研究那些不能观察的内部机制和过程,如记忆的加工、存储、提取和记忆力的改变。以信息加工观点研究认知过程是现代认知心理学的主流,可以说认知心理学相当于信息加工心理学。它将人看作是一个信息加工的系统,认为认知就是信息加工,包括感觉输入的编码、贮存和提取的全过程。认知心理学重视心理学研究中的综合的观点,强调各种心理过程之间的相互联系、2相互制约认知心理学在具体问题的研究方面,在扩大心理学研究方法方面都有所贡献。认知心理学的研究成果对计算机科学的发展也有贡献。认知心理学专家关心的是作为人类行为基础的心理机制,其核心是输入和输出之间发生的内部心理过程。但是人们不能直接观察内部心理过程,只能通过观察输入和输出的东西来加以推测。所以,认知心理学家所用的方法就是从可观察到的现象来推测观察不到的心理过程。2.2本文所引入的认知思想根据认知心理学,社会中的个体通过学到的经验改变自身的结构和行为方式,在学习和积累经验的过程中都是基于一定规律的:个体认知的过程:众所周知,不同材料的遗忘进程是不一样的。熟练动作最慢,有意义的直观材料也较易记住,无意义音节遗忘最快,如下图所示。虽然不同材料的遗忘速率和进程是不一样的,有时甚至相差颇大,但其基本规律是一致的记忆保持量随时间递减,且开始稍快,逐渐减缓,并在相当时间后趋于稳定。本文根据个体的行为以及与个体与群体相互作用的实际情况,考虑了鸟群个体认知行为应该是一个正太分布的情况。个体认知与群体是相互影响的:个体认知是受到群体的影响,但是意味的追随群体,可能会遗忘掉自己本来的东西,增加局部搜索的复杂度;如何太忽视群体的优势,这样就会全局搜索有很大的影响。对此,本文提出了一种策略,个体认知的加速度是线性递减,群体认知的加速度是线性增加的,这样就会平衡俩者的各个确定,达到算法的最有效果。3BP神经网络与粒子群优化算法原理3.1BP神经网络原理人工神经网络有任意精度逼近未知函数的能力及派生出来的一些功能,使神经网络变得越来越流行。神经网络的优化主要是神经网络权重和神经网络拓扑结构的优化,而最主要的是神经网络权重的优化。训练神经网络常用的算法是BP算法。它的主要思想是把学习过程分为两个阶段,网络结构如图1所示:第一阶段(正向传播阶段),给出输入信息通过输入层经隐含层逐层处理并计算每个单元的实际输出值;第二阶段(反向过程),若在输出层未能得到期望的输出值,则逐层递归地计算实际输出与期望输出之差(即误差),以便根据此误差值调节权值和偏置。由此可以看出,神经网络学习过程主要是权重和偏置的更新。对于n-layer神经网络,有n个权重矩阵,假定输入向量维度为Dimi,神经网络第i层有Numi(i=1,……,n)个神经元,该层的传递函数为tfi,那么Input-firstlayer间权重矩阵的维度:[Dimi,Numi],第i的layer…(i+1)layer(i=2,…,n)间权重矩阵的维度为:[Numi-1,Numi];如果每个神经元都带一个偏置,则共有个偏置。3.2粒子群优化算法原理粒子群优化算法是对鸟群觅食过程中的迁徙和聚集的模拟,由简单个体组成的群落以及个体之间的互动行为模拟搜索全局最优解。在PSO算法中,每个优化问题的解都是搜索空间中的一只鸟,称之为“粒子”。所有的粒子都有一个由被优化的函数决定的适应值,每个粒子还有一个速度决定它们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。PSO初始化为一群随机粒子(随机解)。然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个“极值”来更新自己。第一个就是粒子本身所找到的最优解。这个解叫做个体极值pbest。另一个极值是整个种群目前找到的最优解。这个极值是全局极值gbest。在找到这两个最优值时,粒子根据下面的公式来更新自己的速度和新的位置:3V(t+1)=V(t)+c1*Rand()*(pbest(t)一x(t))+c2*Rand()*(gbest-x(t))(1)X(t+1=X(t)+V(t+1)(2)其中:是粒子的飞行速度;x是当前粒子的位置;pbest和gbest如前面的定义;Rand()是介于(0,1)之间的随机数;c1,c2是学习因子,通常c1=c2=2式(1)、式(2)构成了基本PSO算法,试验表明,基本PSO算法早期收敛速度非常快,但却暴露出局部搜索能力差的缺点,这使得算法后期收敛速度缓慢且求解精度降低。为改善PSO算法的局部搜索能力,Shi等为式(1)的速度项引入了惯性权重,将式(1)变为V(t+1)=W*V(t)+c1*1Rand()*(pbest(t)-x(t))+c2Rand()*(gbest-x(t))(3)基本PSO算法可看作是W=1的情况,可以为选取合适的值,从而使得算法在全局和局部的搜索能力之间达到最佳平衡。3.3改进粒子群优化算法在粒子群算法的可调节参数中,惯性权值是最重要的参数,较大的权值有利于提高算法的全局搜索能力,而较小的权值会增强算法的局部搜索能力。为了找到一种能在全局搜索和局部搜索之间取得最佳平衡的惯性权值选取方法,研究人员进行了大量的研究工作,先后提出了线形递减权值(IDIW)策略、模糊惯性权值(FIW)策略和随机惯性权值(RIW)策略。其中,FIW策略需要专家知识建立模糊原则,实现难度较大;RIW策略被用于求解动态系统;LDIW策略相对简单且收敛速度快,因此被广泛使用。以前的学习因子c1,c2,通常是给定一个特定的值c1=c2=2。本文为了让粒子间的信息更好地共享,令c1动态减少,c2动态增加的策略.前期c1较大而c2较小,可以使得粒子主要是向自己的个体极值移动和向群内最佳粒子学习,即主要是扩大搜索空间;而后期c1较小而c2较大,使得粒子主要向全局最佳粒子学习,主要是精细搜索.实验数据证明这种策略是可行的.学习因子动态改变的策略如下:c1=c1-tR(4)c2=c2–tS(5)其中t为迭代次数,R,S为常数.此思想的总体是受到我导师给我的题目的启发而形成的:也就是基于用户兴趣合并的问题,其实说白了还是预测的问题,根据用户的记忆等方面进行用户信息的合并的更新预策略=粒子记忆力+个体粒子的认知+群体粒子的认知我重点考虑的是粒子的记忆力的问题也就是您课堂上讲的惯性系数W的取值策略我根据以往的文献和认知学与心理学理论,讨论和验证了三种模型,第一种:W给定一个固定的值,一般是0.7,这个找不理论依据?第二种:根据认知学认为人的记忆力是随着时间的推移是逐渐遗忘的,于是提出了线性递减的遗忘函数;第三种:凹指数函数,也就是让记忆力很快的找到当前的状态,也就是找局部最优;第四种:根据任何事物的分布都是符合正态分布的,于是我引入分布遗忘函数来提高整个算法的性能。实验分析与总结我感觉还是可以继续做后两部分的东西,也就是个体与群里的结合,来提高整个实验的预期效果.,现成的思想有协同等开始思想总结的结束给定一个定值:0.7从最小均方差和适应度值来分析和确定整个粒子群改进的过程LDIW策略就是在迭代过程中线性地减小的值,用公式表示为其中:tmax为最大允许迭代次数;t为当前的迭代次数;W_start和W_end分别是初始惯性权值和进化到最大允许迭代次数的取值。由式(2)、(式3)和式(4)构成了LDIW—PSO算法。它简单、直观,且具有较好的寻优能力,因此被广泛利用。受LDIW策略启发,为了在全局搜索和局部搜索之间取得更好的平衡,本文将LDIW策略改造为一个非线性递减权值策略,就是将(tmax-t)/t项平方,目的是在算法早期通过加快惯性权值的递减速度,使得算法尽快进入局部搜索,即W=(W_s
本文标题:基于认知学粒子群算法的BP网络优化方法
链接地址:https://www.777doc.com/doc-4286138 .html