一种基于PSO的权值直接确定神经网络结构优化方法技术

技术编号:20364553 阅读:44 留言:0更新日期:2019-02-16 17:16
本发明专利技术公开了一种基于PSO的权值直接确定神经网络结构优化方法,步骤如下:1)构建一个幂激励神经网络;2)由权值直接确定方法算出隐层神经元到输出层的连接权值;3)进行神经元删减;4)把剩余神经元编码成数码串,表示为粒子;5)设定PSO的初始参数;6)生成一定规模的粒子群;7)初始化最优粒子;8)更新所有粒子;9)计算适应值;10)更新所有最优解;11)若未到最大迭代次数,返回步骤8);否则,优化结束。为了提高网络的结构性能,本发明专利技术基于幂激励权值直接确定神经网络,将PSO算法应用于优化网络结构,寻找最佳隐层神经元数目,通过应用本发明专利技术方法,所训练的网络具有很强的逼近能力以及去躁能力,实用价值高。

【技术实现步骤摘要】
一种基于PSO的权值直接确定神经网络结构优化方法
本专利技术涉及神经网络优化
,具体涉及一种基于PSO的权值直接确定神经网络结构优化方法。
技术介绍
人工神经网络(ArtificialNeuralNetworks,ANN),是模拟生物神经系统的组织结构、处理方式和系统功能的抽象和模拟;神经网络是由大量处理单元互联组成的非线性、自适应信息处理系统。人工神经网络的应用场景主要涉及自动化、电子工程、计算机科学、数学、统计学、神经生物学等众多相关学科;由于其并行计算、分布式存储、高度容错、非线性自适应处理能力等显著特点,在模式识别、智能控制、组合优化、系统辨识与预测以及智能信息处理等领域都得到广泛的成功应用。由于众多工程实际问题都可以转化为人工神经网络对特定函数逼近问题,自20世纪80年代中期以来,人工神经网络被研究人员广泛而深入地研究,神经网络的理论研究和实际应用在许多领域取得了显著的进展,在国内外都进入了一个蓬勃发展的好时期。目前最为主流的神经网络训练算法是基于误差反向传播(Back-propagationalgorithm,BP)的算法,这种算法通过迭代可以使得神经网络中的参数向着误差减少的梯度方向变化。然而,这类基于梯度下降的算法具有一些不可避免的内在弱点,比如:易于陷入局部最优、迭代时间冗长及收敛速度慢、无法确定最佳神经元数目等。为了彻底克服BP算法这些弱点并提高网络的性能(收敛速度,网络逼近能力),近年来提出了幂激励权值直接确定神经网络。不同于传统的BP算法,幂激励权值直接确定神经网络通过选取线性独立的幂级数作为隐含层神经元的激励函数,最终的网络输出相当于幂级数多项式。在构建网络确定隐含层神经元后,隐含层神经元到输出层的权值可以通过基于最小二乘原理的权值直接确定(weights-direct-determination,WDD)算法以闭解形式直接算出,无需反复迭代,从而避免传统BP类型算法中易于陷入局部最优、迭代时间冗长及收敛速度慢等弱点,大大提高了计算速度以及网络逼近能力。然而在生成神经元以及确定神经元的权值后,神经网络的最佳拓扑结构(或最优隐神经元数目)尚未确定。考虑到人工神经网络拓扑结构与其性能有着密切的关系,如果不对拓扑结构进行优化,神经网络会难以收敛到逼近误差全局最小点和取得最优连接权值。传统的BP算法在神经网络隐含层神经元数目选择和优化上大体缺乏完善统一的确定性理论指导。目前,确定隐含层神经元数目主流办法是先构造一个适当规模的网络,然后人工根据网络性能需求和规则动态地增加或删除隐神经元及连接,但是这类方法会增加算法的复杂度和学习时间,并且在神经元数目巨大的时候难以实现,容易陷入局部最优。因此,为了优化权值直接确定神经网络的拓扑结构,目前亟待引入粒子群优化(ParticleSwarmOptimization,PSO)算法优化隐含层神经元数目提升网络的结构性能,将两者结合成为基于PSO优化的权值直接确定神经网络,旨在通过生物演化算法确定神经元结构,并尽可能地提高网络的逼近能力,降低逼近误差。PSO算法从一组随机解出发,这组随机解被称为一个种群,种群之中的每个随机解被称为粒子。每个粒子在迭代过程中根据自己的历史经验以及其它粒子的经验进行进化,并通过适应度来评价解的好坏。PSO通过追随当前搜索到的最优值来寻找全局最优,最终实现找到适应度最佳的解,即最优解。这种优化方法比遗传算法规则更为简单,并且在解决实际问题中展示了其优越性。但是标准的PSO算法直接应用在上述权值直接确定神经网络时,表现比较差,究其原因主要有两点:一是在优化问题规模比较大(神经元数目很大)时候,PSO的优化效果较差;二是在优化后期,如果粒子速度更新规则保持不变,就会导致粒子依然保持较强的全局寻优能力,局部寻优能力较弱,导致容易出现粒子在潜在最优区域附近不断徘徊,而无法进一步探索局部最优值的问题。
技术实现思路
本专利技术的目的是为了解决现有技术中的上述缺陷,提供一种基于PSO的权值直接确定神经网络结构优化方法,该优化方法在应用PSO寻找权值直接确定神经网络最优结构的过程中,一方面在PSO优化之前首先对神经元进行删减,减小优化问题的规模;另一方面,在速度更新规则中采用惯性系数(inertiaweight)变异策略,控制粒子速度,提高优化后期粒子的局部寻优能力,更好地探索潜在的最优区域。本专利技术应用粒子群算法优化权值直接确定神经网络的拓扑结构(隐神经元数目),并对优化方法进行改进,最终获取更好的网络结构性能,提高网络的逼近能力。本专利技术的目的可以通过采取如下技术方案达到:一种基于PSO的权值直接确定神经网络结构优化方法,该方法包括如下步骤:S1、构建一个幂激励神经网络,所述的幂激励神经网络包括级联的输入层、隐层、输出层,其中,输入层和输出层均采用线性恒等函数作为激励函数,输入层神经元个数为2,输出层神经元个数为1;隐神经元总数为n,第d+1隐层神经元激励函数为二元幂级数pd,d=0,1,…,n-1;输入层与隐层神经元连接权值均为1,所有神经元阈值均设为0。S2、根据权值直接确定方法算出隐层神经元到输出层的连接权值;S3、设定一个阈值,将连接权值小于该阈值的神经元删除;S4、经删除后,把待优化的剩余隐层神经元的使用情况按顺序编码成0/1数码串表示为粒子群算法中粒子个体;S5、设定粒子群算法的种群规模、最大进化代数以及搜索范围和速度范围;S6、粒子群算法初始化:生成一定规模的粒子群,粒子的位置随机均匀分布,并赋值给每个粒子一个随机速度;S7、根据适应值,初始化全局历史最优位置以及每个粒子历史最优位置;S8、基于前一次迭代的结果,更新惯性系数,更新粒子的速度、位置,即所有候选解更新;S9、计算步骤S8中所有当前候选解的适应值;S10、将步骤S9中得到的适应值,与前一次迭代中确定的全局历史最优适应值以及粒子历史最优适应值进行比较,根据对比结果更新最优适应值以及对应的全局历史最优位置、粒子的历史最优位置;S11、判断当前迭代次数是否到达最大迭代次数,若不是,返回步骤S8;若是,迭代结束,分别输出全局历史最优适应值以及对应的最优位置作为最优逼近误差以及最优网络结构。进一步地,所述的步骤S3中设定一个阈值,删去连接权值小于该阈值的神经元,减少PSO算法需要优化的规模,具体方式是:设定一个阈值ε,将在步骤S2中计算得到连接权值数量级小于该阈值的神经元进行删减处理。比如:第d+1个神经元的连接权值为wd,当log10(wd)<ε时,将该神经元删去,否则保留。进一步地,所述的步骤S4中将剩余神经元按顺序编码成0/1数码串表示为PSO算法中的粒子个体,具体方法如下:首先,设删除后的剩余神经元总数为k′,对删减剩余后的神经元进行排序,并将排序后的神经元进行分组(分组数假设为r,每组内神经元个数假设为l),并尽量保持每个分组内神经元数目一致。之后,根据各分组内的神经元的使用情况进行编码为0/1数码串(如:使用该神经元为1,否则为0)。根据二-十进制转换,将r个0/1数码串均转换成十进制数,组合成r维向量。r维向量的每个维度内的数字唯一对应该分组内的神经元使用情况。把待优化r维向量表示为PSO算法中的粒子进行后续优化,优化结束后将历史最优粒本文档来自技高网
...

【技术保护点】
1.一种基于PSO的权值直接确定神经网络结构优化方法,其特征在于,所述的优化方法包括如下步骤:S1、构建一个幂激励神经网络,所述的幂激励神经网络包括级联的输入层、隐层、输出层,其中,输入层和输出层均采用线性恒等函数作为激励函数,输入层神经元个数为2,输出层神经元个数为1;隐神经元总数为n,第d+1隐层神经元激励函数为二元幂级数pd,d=0,1,…,n‑1;输入层与隐层神经元连接权值均为1,所有神经元阈值均设为0;S2、根据权值直接确定方法算出隐层神经元到输出层的连接权值;S3、设定一个阈值,将连接权值小于该阈值的神经元删除;S4、经删除后,把待优化的剩余隐层神经元的使用情况按顺序编码成0/1数码串表示为粒子群算法中粒子个体;S5、设定粒子群算法的种群规模、最大进化代数以及搜索范围和速度范围;S6、粒子群算法初始化:生成一定规模的粒子群,粒子的位置随机均匀分布,并赋值给每个粒子一个随机速度;S7、根据适应值,初始化全局历史最优位置以及每个粒子历史最优位置;S8、基于前一次迭代的结果,更新惯性系数,更新粒子的速度、位置,即所有候选解更新;S9、计算步骤S8中所有当前候选解的适应值;S10、将步骤S9中得到的适应值,与前一次迭代中确定的全局历史最优适应值以及粒子历史最优适应值进行比较,根据对比结果更新最优适应值以及对应的全局历史最优位置、粒子的历史最优位置;S11、判断当前迭代次数是否到达最大迭代次数,若不是,返回步骤S8;若是,迭代结束,分别输出全局历史最优适应值以及对应的最优位置作为最优逼近误差以及最优网络结构。...

【技术特征摘要】
1.一种基于PSO的权值直接确定神经网络结构优化方法,其特征在于,所述的优化方法包括如下步骤:S1、构建一个幂激励神经网络,所述的幂激励神经网络包括级联的输入层、隐层、输出层,其中,输入层和输出层均采用线性恒等函数作为激励函数,输入层神经元个数为2,输出层神经元个数为1;隐神经元总数为n,第d+1隐层神经元激励函数为二元幂级数pd,d=0,1,…,n-1;输入层与隐层神经元连接权值均为1,所有神经元阈值均设为0;S2、根据权值直接确定方法算出隐层神经元到输出层的连接权值;S3、设定一个阈值,将连接权值小于该阈值的神经元删除;S4、经删除后,把待优化的剩余隐层神经元的使用情况按顺序编码成0/1数码串表示为粒子群算法中粒子个体;S5、设定粒子群算法的种群规模、最大进化代数以及搜索范围和速度范围;S6、粒子群算法初始化:生成一定规模的粒子群,粒子的位置随机均匀分布,并赋值给每个粒子一个随机速度;S7、根据适应值,初始化全局历史最优位置以及每个粒子历史最优位置;S8、基于前一次迭代的结果,更新惯性系数,更新粒子的速度、位置,即所有候选解更新;S9、计算步骤S8中所有当前候选解的适应值;S10、将步骤S9中得到的适应值,与前一次迭代中确定的全局历史最优适应值以及粒子历史最优适应值进行比较,根据对比结果更新最优适应值以及对应的全局历史最优位置、粒子的历史最优位置;S11、判断当前迭代次数是否到达最大迭代次数,若不是,返回步骤S8;若是,迭代结束,分别输出全局历史最优适应值以及对应的最优位置作为最优逼近误差以及最优网络结构。2.根据权利要求1所述的一种基于PSO的权值直接确定神经网络结构优化方法,其特征在于,所述的步骤S2过程如下:采用基于最小二乘原理伪逆形式的权值直接确定方法,从而直接计算得到隐层神经元与输出层之间的连接权值,该连接权值的计算公式由如下直接给出:w=(QTQ)-1QTγ其中,上标T表示为矩阵向量的转置,(QTQ)-1QT为输入受激励矩阵Q的伪逆,记为Q+,以上公式表达为w=Q+γ。3.根据权利要求1所述的一种基于PSO的权值直接确定神经网络结构优化方法,其特征在于,所述的步骤S3过程如下:设定一个阈值ε,将在步骤S2中计算得到连接权值数量级小于该阈值ε的神经元进行删减处理,即:第d+1个神经元的连接权值为wd,当log10(wd)<ε时,将该神经元删去,否则保留。4.根据...

【专利技术属性】
技术研发人员:张智军何杰陈卓明
申请(专利权)人:华南理工大学佛山市顺德致可智能科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1