欢迎来到天天文库
浏览记录
ID:51493180
大小:373.47 KB
页数:5页
时间:2020-03-25
《VC编程实现遗传算法对神经网络权重的优化.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、万方数据第24卷2004年12月计算机应用ComputerApplicationsV01.24Dec.2004文章编号:1001—9081(2004)12Z一0137一02VC++编程实现遗传算法对神经网络权重的优化王晓芳,杨荣荣(中国海洋大学工程学院,山东青岛266071)(wangf7669.student@sina.com)摘要:介绍了遗传算法的基本思想,讨论了运用遗传算法优化神经网络权值具体实现过程,并给出了关键步骤的VC++程序代码。最后用实例验证了该方法的有效性和正确性。关键词:自适应遗传算法;神经网络;Vc++中图分类号:耶183文献标识码:A
2、人工神经网络是模拟人类生理上的神经机制而设计的信息处理系统,而BP网络是目前应用的最为广泛的一种前向人工神经网络,其核心是BP算法。BP算法是多层前向神经网络的权重的训练方法,但它实际上运用了梯度下降法,在训练过程中容易陷入局部最小值。而遗传算法是一种借鉴生物界自然选择和进化机制发展起来的高度并行、随机、自适应搜索方法,遗传算法是对参数的群体进行优化,而不是对参数的本身,它从参数空间多点开始搜索,能够收敛到全局最优解。因此,利用遗传算法优化前向神经网络权重,能够发挥神经网络和遗传算法各自的优点,克服BP训练算法容易产生局部极小值的缺点。vc++是当今比较流行
3、的一种可视化编程语言,VC++源程序能够被编译成可执行文件,其运行速度较快,而且,Vc++具有强大的界面编程功能,因此,用Vc++编写遗传算法程序,非常适合于实际的工程应用。本文介绍Vc++编程实现遗传算法神经网络权重优化的具体过程。1多层前向神经网络结构简介多层前向神经网络是目前应用比较广泛的一种人工神经网络,它由一个输入层、一个或多个隐层和一个输出层组成。在这种神经网络中,被处理的信息由输入层单方向地传向输出层,没有反馈连。其中,输入层只是输入向量的缓冲器,它不具有可改变的输人权重。输入层每个神经元的输出通过连接权重连接至第一个隐层每个神经元的输入,从第
4、二隐层开始,每一层神经元的输入的只接受前一层神经元输出,其输出通过权重连接至后一隐层神经元的输入,最后一个隐层的神经元输出通过权重连接至输出层神经元的输入,输出层神经元将处理后的信息输出。本文只讨论具有一个隐层的前向神图1具有一个隐层的前向神经网络结构2遗传算法的基本思想遗传算法的基本思想是基于生物进化论和遗传学说,它将求解的目标问题经过基因编码表示成染色体,一定数目的染色体组成代表问题可能潜在解集的一个种群,遗传算法正是从种群开始的。基本遗传算法的具体实现过程如下:算法开始时,随机地产生并初始化一定数目的个体,组成初始种群,计算种群中每个个体的适应度函数,
5、如果不满足优化准则,则开始产生新一代种群的计算。为了产生下一代,根据适应度值选择个体,被选择的个体通过交叉产生子代,子代个体按照一定的概率变异后,取代父代形成新一代种群。计算新一代种群个体的适应度,判断是否满足优化准则,如不满足,继续循环。这样进行世代进化,直至满足优化准则或达到最大进化代数,最后输出最佳个体及其代表的最优解。3用遗传算法优化前向神经网络权重运用遗传算法优化神经网络权重涉及的关键内容有:染色体编码和初始种群的产生、适应度函数的定义和计算、遗传操作和新一代种群的产生等。3.1染色体编码和初始种群的产生运用遗传算法解决一个实际的优化问题,首先必须
6、根据待优化的参数确定染色体并对其进行编码,以便将其表示成适合于遗传操作的形式,常用的编码方式包括实数编码和二进制编码。本文待优化的参数是一个三层前向神经网络所有的权重和阈值,假设神经网络的输入层、隐层、输出层神经元个数分别为£,M,Ⅳ,那么将有((己+1)}肘+(M+1)。Ⅳ)个待优化参数。采用二进制编码方式,将每个参数用一个K位的二进制码表示,所有待优化参数的二进制码按照一定的次序连接而成的二进制码串构成一个染色体,用随机的方法决定染色体每一位码值取O或取1,产生P个染色体组成一个规模为P的初始种群。3.2适应度函数的确定与计算在遗传算法当中,适应度函数一
7、般是由待求问题的目标函数转换而成的。针对不同的优化问题,确定适应度函数的方法有多种。本文利用神经网络实际输出值和目标输出值的误差作为目标函数,搜索的目的是使神经网络的输出误差最收稿日期:2004一02—27;修订日期:2004一04—15作者简介:王晓芳(1974一),女,安徽桐城人,硕士研究生,主要研究方向:智能信息处理;杨荣荣(1962一),女,山东牟平人,副教授,主要研究方向:智能信息处理、遥感信息数据处理.万方数据138计算机应用2004年小,属于目标函数为最小问题,可采用“界限构造法”¨J,这种方法按下式定义适应度函数:n£∽x))=c一一以z)式
8、中:八石)为目标函数,c~为目标函数以石)的最大值。
此文档下载收益归作者所有