陈佳兵,吴自银*,赵荻能,周洁琼,李守军,尚继宏
(1.国家海洋局第二海洋研究所,浙江 杭州 310012;2.国家海洋局海底科学重点实验室,浙江 杭州 310012;3.浙江大学 地球科学学院,浙江 杭州 310027)
基于粒子群优化算法的PSO-BP海底声学底质分类方法
陈佳兵1,2,吴自银1,2*,赵荻能1,3,周洁琼1,3,李守军1,2,尚继宏1,2
(1.国家海洋局第二海洋研究所,浙江 杭州 310012;2.国家海洋局海底科学重点实验室,浙江 杭州 310012;3.浙江大学 地球科学学院,浙江 杭州 310027)
利用粒子群优化算法(PSO)较强的鲁棒性和全局搜索能力等优点,将PSO算法与BP神经网络相结合,优化了BP神经网络分类时的初始权值和阈值。基于珠江河口三角洲的侧扫声呐图像数据,提取了海底声呐图像中砂、礁石、泥3类典型底质的6种主要特征向量,利用PSO-BP方法对海底底质进行分类识别。实验表明,3类底质分类精度均大于90%,高于BP神经网络70%左右的分类精度,表明PSO-BP方法可有效应用于海底底质的分类识别。
基于粒子群优化算法的BP神经网络;特征向量;粒子群算法;底质分类
海底底质的分类识别在现代海洋工程勘探、海洋科学研究、军事科技等多个领域具有重要意义。受制于传统的地质取样方法效率低下、成本较高、作业难度较大等缺点,利用侧扫声呐、多波束、浅地层剖面仪等声学设备的遥测数据进行快速高效准确的海底底质分类识别已成为当前的研究热点[1]。近年来,许多国内外学者应用多种人工神经网络方法实现了对海底底质的分类识别。如:Alexandrouhe和Pantzartzis[2]利用BP神经网络方法对海底底质进行分类识别,Chakraborty等[3-4]应用自组织特征映射(SOFM)及学习向量量化(LVQ)神经网络方法对海底底质的分类识别进行了研究,Marsh和Brown[5]利用自组织(SOM)神经网络实现了对海底底质的分类识别。阳凡林等[6]、唐秋华等[7-9]、Zhou和Chen[10]、郭军和马金凤[11-12]、郭军[13]亦利用BP神经网络、LVQ神经网络、SOM神经网络进行了相关海底底质分类研究。但是BP神经网络存在收敛速度慢,易陷入局部最优等问题;LVQ神经网络无法充分利用神经元并对初值敏感;SOM神经网络作为无监督分类网络计算复杂度高且容易产生错误分类。鉴于此,本文提出了粒子群优化算法(PSO)以改进BP神经网络并提升海底底质的分类识别精度。
BP神经网络是一种按误差逆传播算法训练的多层前馈网络,其主要特点是信号向前传递,误差反向传播,通过预测误差反向传播不断调整权值和阈值,从而使网络预测输出不断逼近期望输出[14]。BP神经网络具有较强的非线性映射能力,自学习和自适应能力以及较高的容错性,其存在的缺点主要有收敛速度慢、极易陷入局部最优且对初始权值和阈值敏感等[14]。粒子群优化算法是1995年由Kenndy和Eberhart[15]提出的起源于对鸟群和鱼群捕食进行模拟的一种群体智能优化算法,该算法具有记忆性并可提升局部区域的收敛速度[16],粒子群优化算法已应用于交通流预测[17]、故障诊断[18]、人脸识别[19]等多个方面,但少见于声学底质分类研究。
侧扫声呐、多波束等声学设备进行底质识别分类的主要原理是在相同的声波入射角下,不同的底质类型对应有不同强度的反向散射强度数据[20],对原始反向散射数据进行预处理[21],如:声线弯曲改正、信号传播损失改正、Lambert法则改正、地形起伏及声照区面积改正等,以剔除非底质因素的影响,提取数据中的特征向量,运用神经网络、光谱分析、纹理分析等方法实现对海底底质的分类识别。本文利用侧扫声呐反向散射强度数据形成的灰度图像具有的纹理特征提取相应的特征向量,并利用粒子群优化算法改进后的BP神经网络(PSO-BP)进行底质分类,对海底砂、礁石、泥进行训练测试研究,取得了较好的分类识别结果。
粒子群优化算法是一种随机全局迭代进化算法,具有较强的鲁棒性和全局搜索能力,不同于遗传算法的“交叉”、“变异”等复杂操作,其算法结构较简单,参数较少,更容易在程序上实现。利用PSO算法改进BP神经网络,克服BP神经网络对梯度下降思想的依赖,可以较好的弥补BP神经网络存在的缺陷。
PSO算法将优化问题的解定义为搜索空间中一个粒子的位置,即假设存在一个D维的搜索空间,在该空间中有S个粒子组成的种群X=(X1,X2,…,Xs),第i个粒子在D维搜索空间中的位置表示为一个向量Xi=[x1,x2,…,xiD]T,该位置代表待优化问题的一个潜在解,每个粒子所在位置Xi的优劣由经适应度函数计算得到的适应度值决定。第i个粒子的速度向量表示为Vi=[Vi1,Vi2,…,ViD]T,其个体最优值即粒子自身搜索到的最优解表示为Pi=[Pi1,Pi2,…,Pin]T,整个种群中的粒子的最优值即所有粒子迄今找到的最优解表示为Pg=[Pg1,Pg2,…,Pgn]T。通过当前位置Xi的适应度值和个体最优值Pi及群体最优值Pg的比较,更新个体最优值Pi及群体最优值Pg。
每进行一次迭代,粒子通过以下公式更新自身的速度和位置:
(1)
(2)
式中,d=1,2,…,D;i=1,2,…,S;k为当前迭代次数;Vid为粒子的速度;c1和c2分别是认知学习因子和社会学习因子,分别表示将粒子推向个体最优值Pi和群体最优值Pg的加速项权重;r1和r2为分布于[0,1]之间的随机数;w为惯性权重,其控制算法的收敛和搜索能力,w取较大值时,算法全局搜索能力较强,但局部收敛性较弱,w取值较小时,算法局部收敛性较好,但全局搜索能力减弱。针对此特性,一般将w初始值取为0.9,使其随着迭代的进行线性减至0.4,从而保证算法由迭代初期较强的全局搜索能力,过渡到后期能着重进行局部的精细搜索以获得较高精度的解的能力。一般将粒子的位置和速度限制在区间[-Xmax,Xmax]和[-Vmax,Vmax],Xmax限定了粒子位置区间,防止粒子盲目搜索,Vmax决定粒子在一次迭代中最大移动距离,可取粒子位置区间的相同值,以保证算法收敛性。
PSO-BP底质分类方法主要包括:特征向量提取、网络构建和分类等主要步骤。
3.1 底质分类的特征向量提取
特征向量提取是底质分类的必经步骤,本文基于侧扫声呐图像进行底质分类,利用灰度直方图和灰度共生矩阵提取多种图像纹理特征作为分类的特征向量[22]。
3.1.1 灰度直方图和灰度共生矩阵
灰度直方图是灰度级的函数,它表示图像中每种灰度级像素出现的频率,反映了图像中灰度值的分布情况[23],纹理特征相似的图像具有相似的直方图。基于灰度直方图提取的特征向量有:均值,标准方差,三阶矩,平滑度等。
3.1.2 特征向量降维
特征向量降维是要得到最能反映样本特征属性的、维度较低的特征向量,进而避免发生“维度灾难”,提升神经网络性能[25]。本文利用特征选择的方法进行特征向量降维。特征选择是从所有特征向量中选择符合某种评价标准的特征向量,去除与评价标准关联性较低的特征向量,简化特征向量并保持了特征向量集原有的物理意义[26]。
3.2PSO-BP网络构建
BP神经网络是一种需要学习训练的监督分类算法[14]。将特征向量输入BP神经网络,网络经学习之后输出预测值,通过比较预测值和期望值得到网络误差,将此误差反向传递到隐含层,再到输入层,从而对神经网络参数做出相应调整,直到网络误差满足精度要求。其拓扑结构包含输入层、隐含层和输出层3层(图1),输入层有n个神经元,输出层有m个神经元。
图1 BP神经网络结构图Fig.1 BP neural network structure
隐含层神经元的激励函数为:
(3)
隐含层输出为:
(4)
式中,l为隐含层节点数;f为隐含层激励函数;wij为连接权值;a为隐含层阈值;由隐含层的输出H,连接权值wjk和输出层阈值b,经式(5)计算得到输出层的输出为:
m.
(5)
利用PSO算法优化BP神经网络的权值和阈值时,定义粒子群搜索空间维数D=l×n+l×m+l+m,每个粒子的位置向量Xi代表了BP神经网络的一组权值和阈值。用PSO算法搜索最优位置,通过一次次迭代,使粒子适应度值在终止条件下达到最小,从而搜寻到粒子的最优位置,此位置向量即BP神经网络的最优权值和阈值,将此位置向量作为BP神经网络的最终权值和阈值,用于BP神经网络的测试验证。本文将训练样本的BP神经网络输出的均方误差作为适应度值,见式(6)。
(6)
式中,N为训练样本数量;m为输出神经元个数;Oki,Yki分别为第i个样本的第k个网络期望输出和预测输出。
3.3PSO-BP网络分类流程
首先需要对原始回波强度数据进行预处理[21],主要包括声线弯曲改正、信号传播损失改正、Lambert法则改正、地形起伏及声照区面积改正,并进行数据滤波,尽可能消除非海底底质类型因素对数据的影响。从而获得能够真实反映海底底质类型的回波强度数据,而后生成海底声呐影像图,其灰度级为0到255,声呐影像图上反映了不同的纹理信息。再利用本文提出的特征提取算法提取归一化后的图像的特征向量,作为PSO-BO网络的输入信号。
PSO-BP网络算法主要包括5个步骤(图2)。
图2 PSO-BP分类方法基本流程Fig.2 Flowchart of PSO-BP classification method
(1)根据此次底质分类研究的输入输出样本结构,确定BP神经网络采用3层结构,其中输入层为6个神经元,隐含层为10个神经元,输出层为1个神经元(图1),再将特征向量输入BP神经网络。
(2)确定搜索空间维数D、初始化粒子种群数量、位置信息Xi、速度信息Vi、学习因子c1和c2、初始惯性权重ws和终止惯性权重we最大迭代次数,同时利用式(6)的适应度函数(均方差)计算每个粒子的适应度值。
(3)进行迭代寻优,由式(1)和式(2)更新粒子的速度和位置,并比较粒子的适应度值,确定是否更新每个粒子的个体最优值Pi和全局最优值Pg。
(4)判断粒子群优化算法是否达到终止条件(本次实验终止条件为最大迭代次数),若未达到终止条件,则返回步骤(3),继续进行迭代寻优;若达到终止条件,则退出迭代,获取全局最优解Pg。
(5)粒子群优化算法搜寻到的全局最优解Pg作为BP神经网络的初始权值和阈值,输入训练样本的特征向量进行BP神经网络训练测试,并对测试样本和全部样本特征向量进行分类,获取分类结果。
为验证PSO-BP方法在底质分类中的可行性和精确度,采用珠江口区侧扫声呐图像作为实验数据。珠江携带巨量泥砂沉积于河口三角洲,在河口区底质类型丰富且不同底质间区别较为明显,大片的砂和礁石分布在河口区,泥主要见于内伶仃洋浅滩区。图3分别为砂、礁石和泥3种典型底质的灰度图像。
图3 砂(a)、礁石(b)和泥(c) 3种典型底质的声呐图像Fig.3 Typical sand (a)、rocks (b) and mud (c)sediments sonar images
4.1 特征向量提取
依据第3节提出的PSO-BP网络分类流程,对已知底质类型的影像图进行图像分割归一化,将图像分割成大小为12×12像素的小块,分割后得到砂样本340个,礁石样本340个,泥样本320个。利用本文介绍的特征向量提取方法提取共1 000个样本的多个特征向量,首先将特征向量进行训练分析,选择识别精度在30%以上的特征向量,其次选择砂、礁石、泥平均精度较大的特征,最终确定了均值、标准方差、对比度、相关系数、角二阶矩和同质性6个特征向量(表1)。砂标准方差为[0.127 3,0.185 5],其平均值为0.155 6;礁石标准差为[0.095 7,0.115 8],其平均值为0.101 9;泥标准方差为[0.118 7,0.201 7],其平均值为0.204 8。上述可见泥标准方差最大,砂次之,礁石最小。同理分析样本可知不同底质其余特征向量也存在差异性。PSO-BP网络可利用此差异性识别不同底质类型。
表1 砂、礁石和泥3种底质的特征向量
续表1
4.2 分类结果与分析
取砂样本170个用于训练,170个用于测试;取礁石样本170个用于训练,170个用于测试;取泥样本170个用于训练,150个用于测试。构建BP神经网络,确定其输入层为6个神经元,隐含层为10个神经元,输出层为1个神经元。构建的粒子群算法相关参数为:搜索空间维数D为81、迭代次数30、种群规模为20、粒子位置和速度均限定在[-1,1]、c1和c2均取1.5、惯性权重w初始值为0.9、最终值为0.4,适应度值函数为式(6)。
表2是BP神经网络和基于粒子群优化算法的BP神经网络对实验样本进行分类的结果对比。传统的BP神经网络由于其初始权值和阈值的随机性,在利用训练样本进行训练学习后,对3类底质样本进行分类的精度在[65%,80%],分类效果并不理想,直接利用传统的BP神经网络对底质声呐图像进行分类并不能达到预期效果。
结合表2和图4,可以发现基于粒子群优化算法改进后的BP神经网络对砂、礁石和泥的分类识别精度均高于90%,对比传统BP神经网络的分类精度有较大幅度提升。
表2 两种分类方法精度对比
图4 BP神经网络和PSO-BP网络分类精度比较Fig.4 Comparison of classification accuracy of BP neural network and PSO-BP network
(1)利用粒子群优化算法(PSO)较强的鲁棒性和全局搜索能力等优点,将PSO算法与BP神经网络有机结合,建立了PSO-BP底质分类方法与流程,实现对海底底质的更准确分类。
(2)基于珠江口侧扫声呐图像数据,采用灰度直方图和灰度共生矩阵方法提取特征向量,采用所建立的PSO-BP方法,实现了对砂、礁石和泥3类底质样本的分类,其分类精度达到90%,优于仅采用BP神经网络的70%的分类精度,验证了本文方法的可行性。
[1] Leblanc L R, Mayer L, Rufino M, et al. Marine sediment classification using the chirp sonar[J]. Journal of the Acoustical Society of America, 1992, 91(1):107-115.
[2] Alexandrou D, Pantzartzis D. Seafloor classification with neural networks[J]. Oceans, 1990, 99(3):18-23.
[3] Chakraborty B, Kaustubha R, Hegde A, et al. Acoustic seafloor sediment classification using self-organizing feature maps[J]. IEEE Transactions on Geoscience & Remote Sensing, 2002, 39(12):2722-2725.
[4] Chakraborty B, Kodagali V, Baracho J. Sea-floor classification using multibeam echo-sounding angular backscatter data: a real-time approach employing hybrid neural network architecture[J]. IEEE Journal of Oceanic Engineering, 2003, 28(1):121-128.
[5] Marsh I, Brown C. Neural network classification of multibeam backscatter and bathymetry data from Stanton Bank (Area IV)[J]. Applied Acoustics, 2009, 70(10):1269-1276.
[6] 阳凡林, 刘经南, 赵建虎,等. 基于遗传算法的BP网络实现海底底质分类[J]. 测绘科学, 2006, 31(2):111-114.
Yang Fanlin, Liu Jingnan, Zhao Jianhu, et al. Seabed classification using BP neural network basd on GA[J]. Science of Surveying and Mapping, 2006, 31(2): 111-114.
[7] 唐秋华, 刘保华, 陈永奇, 等. 基于改进BP神经网络的海底底质分类[J]. 海洋测绘, 2009, 29(5):40-43.
Tang Qiuhua, Liu Baohua, Chen Yongqi, et al. Seabed classification with improved BP neural network[J]. Hydrographic Surveying and Charting, 2009, 29(5):40-43.
[8] 唐秋华, 刘保华, 陈永奇,等. 结合遗传算法的LVQ神经网络在声学底质分类中的应用[J]. 地球物理学报, 2007, 50(1):313-319.
Tang Qiuhua, Liu Baohua, Chen Yongqi, et al. Application of LVQ neural network combined with the genetic algorithm in acoustic seafloor classification[J]. Chinese Journal of Geophysics, 2007, 50(1):313-319.
[9] 唐秋华, 刘保华, 陈永奇,等. 基于自组织神经网络的声学底质分类研究[J]. 声学技术, 2007, 26(3):380-384.
Tang Qiuhua, Liu Baohua, Chen Yongqi, et al. Acoustic seafloor classification using selforganizing map neural network[J]. Technical Acoustics, 2007, 26(3):380-384.
[10] Zhou Xinghua, Chen Yongqi. Seafloor classification of multibeam sonar data using neural network approach[J]. Marine Geodesy, 2005, 28(2):201-206.
[11] 郭军, 马金凤. 基于K-L变换的自组织竞争神经网络在海底底质分类中的应用[J]. 测绘工程, 2013, 22(1):51-54.
Guo Jun, Ma Jinfeng. Self-organization competition neural network based on K-L transform in seafloor classification[J]. Engineering of Surveying and Mapping, 2013, 22(1):51-54
[12] 郭军, 马金凤. 基于粒子群优化算法的SVM神经网络在海底底质分类中的应用[J]. 测绘与空间地理信息, 2012, 35(12):66-68.
Guo Jun, Ma Jinfeng. Support vector machine neural network based on particle swarm optimization in seafloor classification[J]. Geomatics &Spatial Information Technology, 2012, 35(12):66-68.
[13] 郭军. 基于主成分分析的自组织竞争神经网络实现海底底质分类[M]//中国地球物理(2012). 北京: 中国科学技术大学出版社, 2012.
Guo Jun. Self-organization competition neural network based on principle component analysis in seafloor classification[M]// The Chinese Geophysics(2012). Beijing: University of Science and Technology of China Press, 2012.
[14] 贺清碧. BP神经网络及应用研究[D]. 重庆: 重庆交通大学, 2004.
He Qingbi. BP neural network and application research[D]. Chongqing: Chongqing Jiaotong University, 2004.
[15] Kennedy J, Eberhart R C. Particle swarm optlmization[C]//Proceeding of IEEE International Conference on Neural Networks,1995,(4):1942 - 1948.
[16] 范娜, 云庆夏. 粒子群优化算法及其应用[J]. 信息技术, 2006, 30(1):53-56.
Fan Na, Yun Qingxia. Particle swarm optimization algorithms and its applications[J]. Information Technology, 2006, 30(1): 53-56.
[17] 李松, 刘力军, 翟曼. 改进粒子群算法优化BP神经网络的短时交通流预测[J]. 系统工程理论与实践, 2012, 32(9):2045-2049.
Li Song, Liu Lijun, Zhai Man. Prediction for short-term traffic flow based on modified PSO optimized BP neural network[J]. System Engineering Theory &Practice, 2012, 32(9):2045-2049.
[18] 何怡刚, 祝文姬, 周炎涛,等. 基于粒子群算法的模拟电路故障诊断方法[J]. 电工技术学报, 2010(6):163-171.
He Yigang, Zhu Wenji, Zhou Yantao, et al. An analog circuit diagnosis method based on particle swarm optimization algorithm[J]. Transactions of China Electrotechnical Society, 2010(6):163-171.
[19] 孙亚. 基于粒子群BP神经网络人脸识别算法[J]. 计算机仿真, 2008, 25(8):201-204.
Sun Ya. Human face recognition based on PSO and BP neural network[J]. Computer Simulation, 2008, 25(8):201-204.
[20] Kloser R J. Seabed backscatter, data collection, and quality overview[J]. Ices Cooperative Research Report, 2007, 286: 45-60.
[21] 唐秋华, 周兴华, 丁继胜,等. 多波束反向散射强度数据处理研究[J]. 海洋学报, 2006, 28(2):51-55.
Tang Qiuhua, Zhou Xinhua, Ding Jisheng, et al. Study on processing of multibeam backscatter data[J]. Haiyang Xuebao, 2006, 28(2):51-55.
[22] 赵永祯, 唐劲松, 钟何平. 基于声呐图像纹理特征的海底底质分类方法研究[J]. 海洋测绘, 2015, 35(3):60-63.
Zhao Yongzhen, Tang Jinsong, Zhong Heping. Seabed sediment classification based on texture feature of sonar imagery[J]. Hydrographic Surveying and Charting, 2015, 35(3):60-63.
[23] 王惠明, 史萍. 图像纹理特征的提取方法[J]. 中国传媒大学学报:自然科学版, 2006, 13(1):49-52.
Wang Huiming, Shi Ping. Methods to extract images texture features[J]. Journal of Communication University of China Science and Techology, 2006, 13(1):49-52.
[24] Haralick R M, Shanmugam K, Dinstein I. Textural features for image classification[J]. Systems Man & Cybernetics IEEE Transactions on, 1973, SMC-3(6):610-621.
[25] 张铮, 王艳平, 薛桂香. 数字图像处理与机器视觉: Visual C++与Matlab实现[M]. 北京: 人民邮电出版社, 2010.
Zhang Zheng, Wang Yanping, Xue Guixiang. Digital Image Processing and Machine Vision: Visual C ++ and Matlab Realization[M]. Beijing: Posts & Telecom Press, 2010.
[26] 于成龙. 基于特征提取的特征选择研究[D]. 南京: 南京邮电大学, 2011.
Yu Chenglong. Research on feature selection based on feature extraction[D]. Nanjing: Nanjing University of Posts and Telecommunications, 2011.
Back propagation neural network classification of sediment seabed acoustic sonar images based on particle swarm optimization algorithms
Chen Jiabing1,2, Wu Ziyin1,2, Zhao Dineng1,3, Zhou Jieqiong1,3, Li Shoujun1,2, Shang Jihong1,2
(1.SecondInstituteofOceanography,StateOceanicAdministration,Hangzhou310012,China; 2.KeyLaboratoryofSubmarineGeosciences,StateOceanicAdministration,Hangzhou310012,China; 3.DepartmentofEarthScience,ZhejiangUniversity,Hangzhou310027,China)
By combining Particle Swarm Optimization (PSO) with BP neural network, the initial weights and thresholds of BP neural network classification are optimized by utilizing PSO with strong robustness and global searching ability. Extracting six main feature vectors of sandy, rocks and mud in the seabed sonar images based on the data of side scan sonar in the Zhujiang Estuary Delta, using the PSO-BP method to classify seabed sediment. The experiment shows that the accuracy of the sediments classification is more than 90%, higher than the accuracy about 70% which using BP neural network only. It proves that the PSO-BP method can be effectively applied to the identification and classification of sediment seabed.
PSO-BP neural network; feature vectors;particle swarm optimization algorithms; sediment classification
10.3969/j.issn.0253-4193.2017.09.005
2016-10-15;
2017-02-14。
国家自然科学基金(41476049);科技基础性工作专项(2013FY112900);海洋公益项目(201105001)。
陈佳兵(1991—),男,浙江省杭州市人,研究方向为多波束海底地形地貌及海洋地球物理勘探。E-mail:393475007@qq.com
*通信作者:吴自银(1972—),男,河南省人,研究员,研究方向为多波束海底地形地貌探测与研究。E-mail:ziyinwu@163.com
P733.23
A
0253-4193(2017)09-0051-07
陈佳兵, 吴自银, 赵荻能, 等. 基于粒子群优化算法的PSO-BP海底声学底质分类方法[J]. 海洋学报, 2017, 39(9): 51-57,
Chen Jiabing, Wu Ziyin, Zhao Dineng, et al. Back propagation neural network classification of sediment seabed acoustic sonar images based on particle swarm optimization algorithms[J]. Haiyang Xuebao, 2017, 39(9): 51-57, doi:10.3969/j.issn.0253-4193.2017.09.005