基于免疫遗传算法优化的神经网络遥感图像分类研究

2018-12-08 09:29程秋云刘宁
数字技术与应用 2018年8期
关键词:BP神经网络遗传算法

程秋云 刘宁

摘要:分类是遥感图像应用的一个重要方面。论文使用免疫遗传算法,自适应确定遗传参数,通过疫苗提取,局部最优判断和动态接种几个算子,优化BP神经网络,充分利用免疫算法保持种群多样性的特点,加快BP算法的收敛速度,避免了神经网络训练速度慢、陷入局部极值的情况,有效提高了遥感图像分类精度。

关键词:动态免疫;遗传算法;BP神经网络;遥感图像分类

中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2018)08-0119-02

遥感技术在军事侦察、环境监测、资源探测管理和自然灾害预测等多个领域有着重要作用。遥感图像分类是研究的重点和热点。

遥感影像分类方法多种多样,如K均值算法、最大似然法、决策树分类法[1]。其中,由于自组织、自学习和非线性映射能力等特性,BP网络得到了广泛的使用,但神经网络也存在一些问题:如隐含层神经元数难以确定、算法收敛速度较慢、容易陷入局部极值等。

针对此类问题,文献[2]用提出了一个用简单遗传算法优化BP神经网络的分类算法,对地物的分类精度都有很大的调高。遗传算法虽然具有良好的全局搜索能力,但在局部空间搜索能力较低,个体的多样性迅速减少,易出现未成熟收敛的情况。

本文利用生物免疫行为可以保持物种多样性的特点,采用免疫遗传算法,在遗传算法中引入免疫算子,实现BP神经网络的优化。通过提取疫苗,自适应确定遗传算子,设定陷入局部最优条件和动态接种疫苗等方法,结合求解问题的特征和知识,来控制算法过程中出现的退化现象,保持了种群的多样性,避免了算法未成熟收敛、陷入局部极值的情况,进而提高算法整体的分类精度。

1 编码

本文以单层隐含层为例,编码包含:隐含层神经元个数;输入层与隐含层、隐含层与输出层的连接权值,隐含层和输出层的阈值。

2 种群初始化

由于隐含层神经元数和权值、阈值的取值范围不同,初始种群必须先满足这些要求,然后在这些解中随机选取样本。对于三层BP 网络结构,参照Paola和Schowengert关于中间层节点设置的论述和先验知识[3],隐含层神经元数范围可取[1,50]的随机数,用6位二进制数表示。神经网络的权值和阈值一般是取(-l,1)之间的随机数,其精度决定二进制位数。

3 适应度函数

神经网络训练的输出误差越小,表示神经网络越好。因此,本文设定适应度函数为:,为网络的输出误差。问题转化为求适应度值的最大值。

其中,为输入向量的实际输出值,为期望输出值。

4 免疫遗传算法优化的BP网络过程

免疫遗传算法优化的BP网络过程如图1所示。

(1)识别抗原:判断抗原是否入侵过。在BP网络优化问题中,抗原就是目标函数,抗体就是一个BP神经网络。

(2)选择操作:结合旋转指针和标准轮盘赌的轮盘进行随机采样。

(3)交叉操作:随机产生交叉位置,将选择操作中选中的两个个体,按概率进行线性交叉,生成两个新的个体。

自适应交叉率为:

其中=2,…,表示第i代两个进行交叉操作的概率,是当前种群中最大的适应度值,是群体的平均适应度值,表示进行交叉的两个个体中较大的适应度值。

(4)变异操作:变异是增大种群多样性的第二个因素,使用一个随机数,将要变异的个体对应的位置状态翻转。

自适应变异率为:

其中,表示第i代个体的变异率,是要变异个体的适应度值。自适应选择交叉和变异算子能够提高解的质量。

(5)提取疫苗:选择种群中最好的个体,即适应度最高的个体做为疫苗。

(6)局部最优判断:每次先计算每个个体的适应度值和当前种群的平均适应度值,计算与的均值偏差度|-|,当种群中四分之三的个体满足|-|<(为一个正数)时,即可认为算法可能陷入局部最优,此时才对当前种群中一定数量的个体进行疫苗接种[4]。

(7)疫苗接种和免疫选择:采用动态疫苗接种方法,将疫苗接种和免疫选择结合在一起进行[4]:逐位 用疫苗相对应的基因对抗体对应基因位进行强制改变,然后计算改变后的个体适应度值,通过与其接种前的适应度值比较,将对其适应度值改变最大而且适应度值有所提高的那一位基因用疫苗相对应的基因将其覆盖,其他的基因位保持不变。

動态疫苗接种伴随了免疫选择的过程,所以不仅可以提高个体的适应度值,提高种群的多样性,而且可以防止陷入局部最优,加快算法整体的收敛速度。

(8)保留精英:交叉操作中,未避免最优解在进化过程中消失,每次操作后如果子代的适应度小于父代,直接将父代复制到下一代进行重新选择。保证每代产生的非劣解能够进入下一代,避免了早熟现象。

经过免疫遗传算法操作后,适应度最大的个体,就是网络寻求的最优解,将最优解的染色体编码进行解码,得到神经网络权值、阈值和隐藏层神经元个数。用此神经网络完成对遥感图像的分类。

5 算法验证

对两个分类器使用同样的训练样本,分类结果如图2所示。

从图2的结果看,IGA-BP算法的分类结果更精确。随机抽取400个样点来评估分类精度,对总精度,Kappa系数进行比较,如表1所示。

6 结语

本文采用自适应免疫遗传算法对BP神经网络进行优化,充分利用了免疫算法保持群体多样性的优点,避免了搜索全局最优解的盲目性,解决了BP算法的过早收敛的现象,遥感图像的分类精度得到有效提高。

参考文献

[1]苏娟.遥感图像获取与处理[M].北京:清华大学出版社,2014.

[2]陈芳杰.基于BP神经网络遥感图像特征分类方法的研究[D].安徽:安徽理工大学,2012.

[3]Paola J D,Schowengerdt R A.A review and analysis of backpropagation neural networks for classification of remote-sensed multi-spectral imagery[J].International Journal of Remote Sensing,1995,16(16):3033-3058.

[4]米焕霞.关于免疫遗传算法的研究[D].西安:西北大学,2009.

猜你喜欢
BP神经网络遗传算法
遗传算法对CMAC与PID并行励磁控制的优化
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
协同进化在遗传算法中的应用研究
基于改进的遗传算法的模糊聚类算法