遗传算法应用--基于遗传算法的神经网络结构改进

基于遗传算法的神经网络结构改进

 

      

author:SaulZhang    School:NWPU
              

github链接:https://github.com/SaulZhang/EvolutionNeuralNetwork
欢迎小伙伴们star我的项目.
           

 

一、摘要

在设计神经网络的过程中一般都会有许多的超参数需要进行调节,其中就包括学习率,批处理的batch大小,隐藏层中隐藏结点的个数,滑动平均模型的参数,模型训练的代数等等。正是由于需要调节的参数众多,采用传统的网格超参数调节的方法需要花费大量的时间,而且一般情况下,我们都是针对于特定结构的神经网络来进行参数的调节的,也就是说在设计神经网络之初,神经网络的结构基本上已经确定下来了,训练的只是不同结点之间的权重,比如传统的前馈神经网络3层架构输入层-隐藏层-输出层等,其一般层数都是固定的,而且神经元之间一般不会隔层进行连接。因为神经网络的结构千变万化,如果需要对各种不同的组合都进行尝试,其复杂度将难以想象。本文旨在通过进化算法的思想,利用遗传算法对神经网络结构中的结点以及结点之间的边进行编码,在Breast Cancer Wisconsin (Diagnostic) Data Set 数据集上进行实验,利用遗传算法的优胜劣汰的进化过程,通过选择、交叉以及变异的过程不断地更新种群,保留下适应度高的个体,最后得到的表现最佳的模型及其拓扑结构,通过机器自动学习到一个表现较佳的模型结构,并与其他方法在该数据集上的表现进行对比。

 

二、数据集介绍

该实验采用的数据集为乳腺癌威斯康星(诊断)数据集,其源自乳腺肿瘤细胞团的细针抽吸的数字化成像的特征。 该实验的目的是利用遗传算法改善神经网络结构通过识别细胞的特征,准确地区分良性和恶性肿瘤细胞以帮助临床诊断。数据集的输入特征维度为30维(包括细胞的平均半径、纹理、周长、平滑度、紧凑性、凹度、凹点等),输出维度为2维(M为恶心肿瘤细胞,B为良性细胞),数据集一共有569个样本,其中M类样本有212例,B类样本357例。由于该数据集的特征维度较为复杂,因此采用不同结构的神经网络将会对模型的最终表现产生较大的影响,因此为了突显该实验自动学习较优模型结构的目的,故选择采用该数据集进行实验。在数据集的预处理方面本文主要采用的方法是分别对30维特征的每一维度进行归一化,减小数据尺度所带来的影响。有关于数据集中特征的分布情况如下图Figure1Figure2所示。

Figure1.数据集中不同类样本的分布情况

  • 10
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 22
    评论
基于遗传算法改进的BP神经网络算法是一种常见的深度学习模型,它通常用于分类、回归或其他任务。BP神经网络算法是一种有监督学习方法,通过反向传播算法来更新网络参数,使其能够更好地拟合训练数据。然而,BP神经网络算法也存在着一些问题,例如易陷入局部最优解,训练速度慢等问题。因此,使用遗传算法改进BP神经网络算法是一种有效的方法。 遗传算法是一种优化算法,它通过模拟自然进化过程来搜索最优解。基于遗传算法改进的BP神经网络算法的主要思路是将BP神经网络的权重和阈值看作基因,使用遗传算法来搜索最优权重和阈值,从而提高BP神经网络的性能。 具体来说,基于遗传算法改进的BP神经网络算法通常包括以下步骤: 1. 初始化种群:随机生成一组个体,每个个体对应一个BP神经网络的权重和阈值。 2. 适应度函数:根据BP神经网络算法的性能评估指标(如误差平方和等),计算每个个体的适应度。 3. 选择操作:根据适应度大小,选择一定数量的个体作为下一代的父代。 4. 交叉操作:将父代个体的基因进行交叉操作,生成新的子代个体。 5. 变异操作:对子代个体进行一定概率的基因突变操作,增加种群的多样性。 6. 更新种群:将父代和子代个体组成新的种群,回到第2步。 7. 终止条件:达到预设的迭代次数或者达到一定的性能指标后,停止迭代。 通过这些步骤,基于遗传算法改进的BP神经网络算法可以有效地克服BP神经网络算法的一些问题,提高网络的性能和训练速度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值