您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页基于BP神经网络的高光谱遥感数据分类研究—论文

基于BP神经网络的高光谱遥感数据分类研究—论文

来源:爱go旅游网
 -

河南农业大学

本科生毕业论文(设计)

题 目基于BP神经网络的高光谱遥感数据分类研究 学 院 信息与管理科学学院 专 业 计算机科学与技术 学生姓名 指导教师

撰写日期: 二○一三年四月十二日

24

-

目 录

摘要: ................................................................................................................................................ 1 1 引言 .............................................................................................................................................. 2 2 高光谱遥感 ................................................................................................................................... 3

高光谱遥感的介绍 ................................................................................................................... 3 高光谱遥感国外发展 ............................................................................................................... 3 高光谱遥感国内发展 ............................................................................................................... 3 高光谱遥感数据的特征 ........................................................................................................... 5 高光谱遥感数据的常用处理方法 ........................................................................................... 5 3 人工神经网络 ............................................................................................................................... 5

人工神经网络的概念 ............................................................................................................... 5 人工神经网络的特点 ............................................................................................................... 6 人工神经元的模型 ................................................................................................................... 6 人工神经网络模型 ................................................................................................................... 8 BP网络 ...................................................................................................................................... 9

BP网络概念 ...................................................................................................................... 9 BP 算法的原理 ................................................................................................................. 9 BP 算法的执行步骤 ....................................................................................................... 10 BP神经网络的局限性 .................................................................................................... 12

4 BP神经网络在小麦白粉病高光谱遥感数据分类研究 ............................................................ 13 试验设计 ................................................................................................................................. 13 光谱数据采集 ......................................................................................................................... 13 数据预处理 ............................................................................................................................. 13 BP网络模型建立及实现过程 ............................................................................................... 15

BP网络的分析流程 ....................................................................................................... 15 BP网络层数的确定及各层神经元数目的确定 ........................................................... 16 BP网络参数的选择 ....................................................................................................... 16 读入数据、划分数据及归一化处理 ............................................................................. 17 BP网络的模型建立、训练及预测 ............................................................................... 17

实验总结 ................................................................................................................................. 19 5 结论与讨论 ................................................................................................................................. 19 参考文献:..................................................................................................................................... 20 致 谢 ............................................................................................................................................ 21 附件: ............................................................................................................................................ 21

24

-

基于BP神经网络的高光谱遥感数据分类研究

朱青

信息与管理科学学院计算机科学与技术专业

摘要: 本文探讨了多层误差反向传播(BP)神经网络分类算法应用于高光谱遥感数据的分类研究。首先介绍了高光谱遥感,高光谱遥感国内外发展现状,高光谱遥感数据的特点,以及高光谱遥感数据常用的处理方法。简要介绍了神经元的模型,神经网络模型,BP神经网络的算法以及执行过程,BP网络自身的局限性。将BP神经网络与高光谱遥感结合,用采集到的白粉病小麦冠层高光谱数据进行实验 。利用ASD手持式高光谱仪测定了患有白粉病的小麦冠层光谱反射率,并对采集到的高光谱数据用特征选择的方法,选出20个特征波长对应的反射率作为神经网络的输入,病情指数0、1、2、3、4作为神经网络的输出。借助Matlab神经网络模块,选用经典三层的BP神经网络,将150组光谱数据随机划分120组训练数据和30组测试数据,经过训练,预测正确率为%。这表明BP神经网络对高光谱遥感数据进行识别分类,是一种很好的应用。 关键词:高光谱遥感; 人工神经网络; BP神经网络

Hyperspectral remote sensing data classification based on BP neural

network

Abstract: This paper discusses the multi-layer back propagation (BP) neural

network classification algorithm is applied to the classification of hyperspectral remote sensing data. First introduced hyperspectral remote sensing, hyperspectral remote sensing domestic and foreign development status, the characteristics of hyperspectral remote sensing data and the commonly used approach of hyperspectral remote sensing. Briefly introduced the model of the neuron, neural network model, BP neural network algorithm and implementation process, BP network neural network combined with hyperspectral remote sensing, experiment with powdery mildew of wheat canopy hyperspectral data. ASD handheld spectrometer measured canopy spectral reflectance with powdery mildew. And hyperspectral data collected with a feature selection method selected 20 characteristic wavelengths corresponding to the reflectivity as a neural network input, the disease index 0,1,2,3,4 as the output of the neural network. With Matlab neural network module, a classic three-tier BP

1

-

neural network, 150 spectral data were randomly divided into 120 training data and 30 sets of test data, and trained to predict the correct rate of %. This indicates that BP neural network hyperspectral remote sensing data for classification, is a very good application.

Keywords: Hyperspectral Remote Sensing; Artificial Neural Networks; BP neural

network

1 引言

高光谱遥感是20 世纪末对地观测技术最重大的突破之一, 也是当前乃至今后一段时间的遥感前沿技术, 与合成孔径雷达(SAR) 、激光雷达(LIDAR) 并列为今后最具发展前景的遥感信息获取技术。与传统遥感相比,高光谱遥感信息具有数据量大、波段多、波段相关性强、信息冗余多、图谱一体化等特点, 蕴含信息丰富, 处理过程复杂, 如何对其进行高效处理是遥感领域近年来研究的热点

[1-2]

近年来,针对高光谱遥感影像的分类,众多研究学者基于统计学理论、模糊集

理论、神经网络、形态学理论、小波理论、遗传算法、尺度空间、非线性扩散方程等理论和方法提出了很多实用的分类算法,这些算法可以针对不同的遥感信息、不同的应用需求取得相应较好的分类成果[3]。随着人工智能、机器学习、数据挖掘、高性能计算等相关学科技术的发展, 遥感信息智能处理近年来已成为一个研究的热点。智能处理有助于解决当前高光谱遥感信息处理中存在的诸如数据量大、处理过程复杂、速度慢、效率低、过多依赖于专家经验和人工参与等问题。

人工神经网络的分布并行处理、非线性映射、自适应学习和容错等特性,使它具有独特的信息处理和计算能力,在机制尚不清楚的高维非线性系统上体现出强大优势[4]。目前,人工神经网络已经被广泛应用于遥感影像分类上,如BP神经网络(back propagation neural network)、自组织竞争神经网络、RBF神经网络(radial basis function neural network)和模糊神经网络等。其中,BP神经网络表现得尤为突出,它能够把输入向量以所定义的合适方式进行分类;它的神经元采用可微转换函数,可以实现输入和输出间的任意非线性映射,对于高光谱遥感数据有着良好自动分类效果。

本文简要的介绍了高光谱遥感、人工神经网络、BP神经网络,BP神经网络在高光谱遥感数据分类的应用。

24

-

2 高光谱遥感

高光谱遥感的介绍

遥感对地观测要解决的两个重要问题,一是几何问题,二是物理问题。前者正是摄影测量的目标,后者则要回答观测的对象是什么? 这就是遥感问题。图像和光谱是人们在纷繁的大千世界中认识事物,以至识别所要寻求的对象最重要的两种依据[5]。图像为解决地物的几何问题提供了基础,光谱往往反映了地物所特有的物理性状。现代遥感技术的发展,使得地物的成像范围不仅延伸到人们不可见的紫外和红外波长区,而且可以在人们需要的任何波段成像或连续成像。高光谱遥感的光谱分辨率高于百分之一波长达到纳米(nm)数量级,其光谱通道数多达数十甚至数百。高光谱或成像光谱技术就是将由物质成分决定的地物光谱与反映地物存在格局的空间影像有机地结合起来,对空间影像的每一个像素都可赋予对它本身具有特征的光谱信息。遥感影像和光谱的合一,实现了人们认识论中逻辑思维和形象思维的统一,大大提高了人们对客观世界的认知能力,为人们观测地物、认识世界提供了一种犀利手段,这无疑是遥感技术发展历程中的一项重大创新。

高光谱遥感国外发展

1983年,世界第一台成像光谱仪AIS-1在美国研制成功,并在矿物填图、植被生化特征等研究方面取得了成功,初显了高光谱遥感的魅力。在此后,许多国家先后研制了多种类型的航空成像光谱仪。如美国的AVIRIS、DAIS,加拿大的FLI、CASI,德国的ROSIS,澳大利亚的HyMap等[6]。

在经过航空试验和成功运行应用之后,90年代末期终于迎来了高光谱遥感的航天发展。1999年美国地球观测计划(EOS)的Terra综合平台上的中分辨率成像光谱仪(MODIS)、号称亲千年计划第一星的EO-1,欧洲环境卫星(ENVISAT)上的MERIS,以及欧洲的CHRIS卫星相继升空,宣告了航天高光谱时代的来临。

高光谱遥感国内发展

上世纪80年代初、中期,在国家科技攻关项目和863计划的支持下,我国亦开展了高光谱成像技术的发展计划[7]。我国高光谱仪的发展,经历了从多波段到成像光谱扫描,从光学机械扫描到面阵推扫的发展过程。根据我国海洋环境监测和森林探火的需求,研制发展了以红外和紫外波段以及以中波和长波红外为主体的航空专用扫描仪。80年代中期,面向地质矿产资源勘探,又研制了工

24

-

作在短波红外光谱区间(-)的6--8波段细分红外光谱扫描仪(FIMS)和工作波段在8-12mm光谱范围的航空热红外多光谱扫描仪(ATIMS)。在此基础上于80年代后期又研制和发展了新型模块化航空成像光谱仪(MAIS)。这一成像光谱系统在可见-近红外-短波红外具有波段,并可与6-8波段的热红外多光谱扫描仪集成使用,从而使其总波段达到70-72个。这一系列高光谱仪器的研制成功,为中国遥感科学家提供了新的技术手段。通过在我国西部干旱环境下的地质找矿试验,证明这一技术对各种矿物的识别以及矿化蚀变带的制图十分有利,成为地质研究和填图的有效工具。此后,中国又自行研制了更为先进的推帚式成像光谱仪(PHI)和实用型模块化成像光谱仪(OMIS)等,并在国内外得到多次应用,成为世界航空成像光谱仪大家庭中的一员。

在航空高光谱技术取得成功的基础上,2002年3月在我国载人航天计划中发射的第三艘试验飞船“神舟三号”中,搭载了一台我国自行研制的中分辨率成像光谱仪。这是继美国EOS计划MODIS之后,几乎与欧洲环境卫星(ENVISAT)上的MERIS同时进入地球轨道的同类仪器。它在可见光到热红外波长范围()具有34个波段。2007年10月24日我国发射的“嫦娥”探月卫星上,成像光谱仪也作为一种主要载荷进入月球轨道。这是我国的第一台基于富里叶变换的航天干涉成像光谱仪,它具有光谱分辨率高的特点。在我国计划于2008年发射的环境与减灾小卫星(HJ-1)星座中,也将搭载一台工作在可见光-近红外光谱区()、具有128个波段、光谱分辨率优于5nm的高光谱成像仪。它将对广地及海洋环境和灾害进行不间断的业务性观测。自上世纪90年代末期,中国科学院遥感应用研究所着手对高光谱遥感图像处理和分析系统进行开发。近年来,在863计划支持下,利用国家重点实验室这一平台,已形成了具有完全自主知识产权的高光谱遥感图像处理和分析软件系统(HIPAS )。这一系统采用了模块化思路和组件技术,具有很强的可移植性和跨平台支持能力;它的开放式外存储结构,几乎能兼容业内所有主流遥感影像格式。HIPAS系统的一个重要特点是它的专业应用模块,如光谱分析模块、矿物填图模块、目标提取模块等。

高光谱遥感在我国的顺利发展体现了需求牵引和前沿引导两个重要的特点。目前无论在航空还是航天领域,均有我国科学家自行研制和发展的高光谱技术系统在运行。在应用领域中,我国自主研制的高光谱影像处理、分析系统和相应的软件也在不断完善,并在各行业和多学科的应用中发挥作用。高光谱遥感在我国的发展展现了良好的前景。

24

-

高光谱遥感数据的特征

作为当前遥感的前沿技术,高光谱遥感在光谱分辨率上具有巨大的优势,随着高光谱遥感技术的日趋成熟,其应用领域也日益广泛[9]。我们先来了解高光谱遥感数据特点:

(1)图谱合一。在获取数百个光谱图像的同时,可以显示图像中每个像元的连续光谱。

(2)海量数据。高光谱的波段一般都是上百个,未来甚至能达到千以上。 (3)数据冗余度高。成像光谱仪采样间距一般都是纳米级,造成了相邻波段的高度相关性,冗余度也随之增加。

(4)信噪比低。高光谱数据信噪比下降,噪声增加,增加了数据处理的难度。

高光谱遥感数据的常用处理方法

高光谱数据常用的处理方法有特征选择和特征提取两种。

(1) 特征选择即在全部数据集中,选择若干能包含原数据最大信息的特征。为了

有效地处理数据,降维即在尽可能地保留信息的同时,对波段进行压缩[11]。目前压缩波段有两种方法:(a)从众多波段中选择兴趣的若干波段,或者选择信息量大、相关性小的若干波段。(b)利用所有波段,通过数学变换来压缩波段,如主成分分析法(PCA)等。

(2) 特征提取即从原始数据中提取其特征参数,以满足后续处理要求。由电磁波

理论可知,相同物体具有相同的电磁波谱特征;不同物体由于物质组成、内部结构和表面状态不同,具有相异的电磁波谱特性。这是利用地物光谱特征来识别和区别地物的基础。下文实验中用了特征选择方法。

3 人工神经网络

人工神经网络的概念

人工神经网络(ArtificialNeuralNetwork,简称ANN)是由大量而又简单的神经元按照某种特点的方式连接形成的复杂智能仿生动态网络系统,它是一种模拟人脑功能的高度复杂非线性并行处理系统[12]。

24

-

人工神经网络的特点

(1) 分布式存储信息。其信息的存储分布在不同的位置,神经网络是用大量神经元之间的连接及对各连接权值的来表示特定的信息,从而使网络在局部网络 受损或者输入信号因各种原因发生局部畸变时,仍然能够保证网络的正确输 出,提高网络的容错性和鲁棒性[10]。

(2) 并行协同处理信息。神经网络中的每个神经元都可根据接受到的信息进 行运算和处理,并输出结果,同一层中的各个神经元的输出结果可被同时计算出来,然后传输给下一层做进一步处理,这体现了神经网络并行运算的特点,这一特点使网络具有非常强的实时性。虽然单个神经元的结果及其简单,功能有限,但大量神经元构成的网络系统所能实现的行为是极其丰富多彩的。

(3) 信息处理与存储合二为一。神经网络的每个神经元都建有信息处理和存储功能,神经元之间连接强度的变化,既反映了对信息的记忆,同时又与神经元对激励的响应一起反映了对信息的处理。

(4) 对信息的处理具有自组织、自学习的特点,便于联想、综合和推广。神 经网络的神经元之间的连接强度用权值大小来表示,这种权值可以通过对训练样本的学习而不断变化,而且随着训练样本量的增加和反复学习,这些神经元之间的连接强度会不断增加,从而提高神经元对这些样本特征的反映灵敏度。

人工神经元的模型

x1

wi1

x2 wi2 yi win wi0 xn x0 图1 人工神经元模型

 f•24

-

图1中x1~xn是从其他神经元传来的输入信号,Wij表示表示从神经元j到神经元i的连接权值,θ表示一个阈值 ( threshold ),或称为偏置( bias )。则神经元i的输出与输入的关系表示为:

(1)

(2)

图1中 yi表示神经元i的输出,函数f称为激活函数 ( Activation Function )或转移函数 ( Transfer Function ) ,net称为净激活(net activation)。若将阈值看成是神经元i的一个输入x0的权重wi0,则上面的式子可以简化为:

(3) (4)

若用X表示输入向量,用W表示权重向量,即:

XX0,X1,X2,,Xn

(5)

(6)

则神经元的输出可以表示为向量相乘的形式:

(7)

(8)

若神经元的净激活net为正,称该神经元处于激活状态或兴奋状态(fire),若净激活net为负,则称神经元处于抑制状态。

24

-

人工神经网络模型

神经网络是由大量的神经元互联而构成的网络。根据网络中神经元的互联方式,常见网络结构主要可以分为下面3类:

(1) 前馈神经网络(Feedforward Neural Networks )

前馈网络也称前向网络。这种网络只在训练过程会有反馈信号,而在分类过程中数据只能向前传送,直到到达输出层,层间没有向后的反馈信号,因此被称为前馈网络。模型如图2:

图2 前馈神经网络

(2) 反馈神经网络(Feedback Neural Networks )

反馈型神经网络是一种从输出到输入具有反馈连接的神经网络,其结构比前馈网络要复杂得多。典型的反馈型神经网络有:Elman网络和Hopfield网络。模型如图3:

图3 反馈神经网络

24

-

(3) 自组织网络 ( SOM ,Self-Organizing Neural Networks )

自组织神经网络是一种无导师学习网络。它通过自动寻找样本中的内在规律和本质属性,自组织、自适应地改变网络参数与结构。模型如图4:

图4 自组织网络

BP网络

BP网络是前向神经网络的核心部分,也是整个人工神经网络体系的精华,广泛应用于分类识别、逼近、回归、压缩等领域。在实际应用中,大约80%的神经网络模型采取了BP网络或者BP网络的变化形式。 BP网络概念

BP(Back Propagation) 网络是一种按误差逆传播算法训练的多层前馈网络, 是目前应用最广泛的神经网络模型之一。BP 网络能学习和存贮大量的输入- 输出模式映射关系, 而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用梯度下降法, 通过反向传播来不断调整网络的权值和阈值, 使网络的误差平方和最小。 BP 算法的原理

图5 BP网络一般模型

BP 算法是用于前向多层网络的学习算法,前向多层网络的结构一般如图5:

24

-

含有输人层、输出层以及处于输入输出层之间的中间层。中间层有单层或多层,由于它们和外界没有直接的联系,故也称为隐层。在隐层中的神经元也称隐单元。隐层虽然和外界不连接,但是,它们的状态则影响输入输出之间的关系[13]。即改变隐层的权系数,可以改变整个多层神经网络的性能。下面介绍BP网络算法的原理:

设有一个m 层的神经网络,并在输入层加有样本 X;设第 k 层的 i 神经元的输入总和表示为Uik,输出Xik:从第 k-1 层的第 j 个神经元到第 k 层的第 i 个神经元的权系数为Wij:各个神经元的激发函数为 f,则各个变量的关系可用下面有关数学式表示:

Xikf(Uik) (9)

反向传播算法分二步进行,即正向传播和反向传播。这两个过程的工作简述如下: (1)正向传播

1 (10) UikWijXkjj输入的样本从输入层经过隐单元一层一层进行处理,通过所有的隐层之后,则传向输出层;在逐层处理的过程中,每一层神经元的状态只对下一层神经元的状态产生影响。在输出层把现行输出和期望输出进行比较,如果现行输出不等于期望输出,则进入反向传播过程。 (2)反向传播

反向传播时,把误差信号按原来正向传播的通路反向传回,并对每个隐层的各个神经元的权系数进行修改,以望误差信号趋向最小。 BP 算法的执行步骤

在反向传播算法应用于前向多层网络时,采用 Sigmoid 为激发函数时,可用下列步骤对网络的权系数Wij进行递归求取。注意对于每层有 n 个神经元的时候,即有 i=1,2,…,n;j=1,2,…,n。对于第 k 层的第 i 个神经元,则有 n 个权系数Wi1,Wi2,…Win,另外多取—个Win1用于表示阀值i ;并且在输入样本X时,取X24

(X1,X2,,,Xn,1)。算法执行的步骤如下:

-

(1) 对权系数Wij置初值。对各层的权系数Wij置一个较小的非零随机数,但其中

Wi,n1。

(X1,X2,,,Xn,1),以及对应期望输出Y(Y1,Y2,,Yn)(2) 输入一个样本X。

(3) 计算各层的输出。对于第 k 层第 i 个神经元的输出Xik,有:

1UWijXkj (11) kij1n1k1 Xn11 (12)

Wi,n1 (13)

Xikf(Uik) (14)

(4) 求各层的学习误差dik。对于输出层有 k=m,有

dimXim(1Xik)(XimYi) (15)

对于其他各层,有

dikXik(1Xik)Wlidik1 (16)

i(5) 修正权系数Wij和和阀值

1Wij(t1)Wij(t)dikXkWij(t) (17) j其中:

1Wij(t1)dikXkWij(t) (18) j(6) 当求出了各层各个权系数之后,可按给定指标判别是否满足要求。如果满足要求,则算法结束;如果未满足要求,则返回(3)执行。这个学习过程,对于任一给定的样本Xp(Xp1,Xp2,Xpn,1) 和期望输出Yp(Yp1,Yp2,Ypn)都要执

24

-

行,直到满足所有输入输出要求为止。

(7) 常规BP算法的总过程如图6所示。途中给出的迭代次数的上限的目的,是为了避免当平均误差一直不满足精度要求而导致程序无法结束运行的情况。 开始

网络初始化 取一个学习样本,正向传播输入

计算各层神经元输入和输出

计算输出误差

反向传播误差,调整连接权值和阈值

否 学习样本用尽

计算网络的平均误差E

否 精度达到要求

否 否 迭代次数达到上限

结束

图6 BP算法执行过程 BP神经网络的局限性

BP网络具有实现任何复杂非线性映射的能力,特别适合求解内部机制复杂的问

24

-

题,但BP网络也具有一些难以克服的局限性:

(1) 需要的参数较多,且参数的选择没有有效的方法。例如隐含层结点个数 (2) 容易陷入局部最优。

(3) 样本依赖性。如果样本集合代表性差,矛盾样本多,存在冗余样本,网络就

很难达到预期的性能

(4) 初始权重敏感性。训练的第一步是给定一个较小的随机初始权重,由于权重

是随机给定的,BP网络往往具有不可重现性。

4 BP神经网络在小麦白粉病高光谱遥感数据分类研究

试验设计

试验共设5个处理,用不同药剂浓度控制不同的发病梯度,3次重复,随机区组排列,小区面积20 m2,每个小区种植小麦16行,行距25 cm。用改进的“0—9”级法对小麦白粉病发病情况进行调查。每个小区5点取样,每点调查30株,并计算各小区病情指数。

光谱数据采集

用ASD FieldSpec HandHeld手持便携式光谱分析仪作为小麦冠层光谱测量仪器,选择晴朗无风天气于10:00~14:00之间在小麦拔节期(4月7日)、抽穗期(5月7日)和灌浆期(5月20日)对其进行冠层高光谱反射率测定,测定时将光谱仪安置于自制的支架上,探头垂直向下距冠层顶约,测量前均同步测量参考板反射和太阳辐射光谱用于标定,测定过程中用BaSO4白板进行校正。每一不同程度白粉病为害点重复测定10次。

数据预处理

高光谱遥感信息处理许多有待解决的问题中,波段选择与数据压缩也是首要解决的问题。波段选择的任务是从几十、上百个波段中选择若干最有效的组合方案用于信息提取、分类,波段选择也可以被看作势简单的特征挖掘,从海量信息中获取对特定应用目标有效的若干波段进行分析,在保证精度的同时降低了数据量、提高了运算效率。但从信息的智能处理来看,仅有原始数据的某一子集是不够的,关键在于获取隐含于原始数据之中的知识、规则和特征以进行智能化处理。本实验中,采取人工选择光谱图中的拐点、峰值作为简单的特征挖掘。

实验中,五组高光谱遥感数据,每组有三十个数据。由于光谱曲线在首段

24

-

和末端有较大噪声,所以只取400~900nm波段的光谱进行分析,以0类为例,通过Viewspectro软件打开0-1数据如图7:

图7 0-1光谱图

用viewspectro导出的0-1,0-2,0-3,三个txt文档,每个文档里有,,,,,,,,,十组光谱数据。每组光谱数据中有512个波长对应的反射率。将,,导入新建的excel进行手工处理,选择光谱图的峰值,拐点等特征点处选取20个波长点,生成行为20个特征波长点,列为,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,30列对应的反射率。同理处理1类,2类,3类,4类数据。最后将各类数据整理到一个excel文档中并转制,形成列为20个特征波长点,行为对应反射率,共150行,0类占前三十行,然后依次是1类,2类,3类,4类。并添加每行数据所属类别作为第21列。形成最终数据集(150行21列),如图8是数据集的部分截图(0类的30行数据,每行前二十列是选取的特征波长的反射率,最后为这行数据所属的类别)。

24

-

图8 0类数据集

BP网络模型建立及实现过程

BP网络的分析流程

开始 读入数据

划分数据

初始化网络

输入样本计算误差 否 是否收敛 调整权值

24

调试 结束 -

图9 分析流程 BP网络层数的确定及各层神经元数目的确定

神经网络实质上实现了一个从输入到输出的映射功能,而且数学理论已证明它具有实现任何复杂非线性映射的功能。而且理论上,一个三层的神经网络,能够以任意精度逼近给定的函数。本例选择拓扑结构由输入层,单隐层和输出层组成的三层神经网络。

隐含层节点数对神经网络的性能有一定的影响。隐含层节点数与求解问题的要求、输入输出节点数多少都有直接的关系。隐含层节点数的选择是一个十分复杂的问题,隐含层节点数过少,容错性差,识别未经学习的样本能力低;隐含层节点数过多会增加网络训练时间,并且将样本中非规律的内容存储进去,降低泛化能力,往往需要设计者的经验和多次试验来确定隐含层节点数[2]。

根据经验可以参照一下公式进行设计:

lnma (19)

l为隐含层节点数;n为输入节点数;m为输出节点数;a为1~10之间的调

节常数。l改变,用同一样本集训练,从中确定网络误差最小时对应的隐含层节点数。本实验中由于512个波长中选取具有代表性的20个作为网络的输入,级别(0,1,2,3,4)作为网络的输出,所以输入神经元的个数为20,输出神经元个数为1。所以n为20,m为1。通过改变隐含层神经元个数,逐个记录相应的网络误差,如表1(第一行为隐含层节点数,第二行为对应的网络误差)。可得知当隐含层神经元个数为13时,网络误差最小。因此,本实例中隐含层节点数为13。

表1 不同的隐含层个数及对应的网络误差

隐含层神经元个数

6 7 8 9 10 11 12 13 14 15

网络误差

BP网络参数的选择

对非线性问题,输入层和隐含层多采用非线性传递函数,输出层采用线性函数,所以神经网络模型中的输入层和隐层采用Tan-sigmoid 传输函数,输出层则采用Purelin 线性传输函数。网络的最小训练速率为,训练误差标准为,设定训练迭代次数为300次。网络的训练函数为trainlm,该函数的运行速度较快,对

24

-

于中大型网络比较合适。学习函数曲默认值learngdm,性能函数取默认值mse。 读入数据、划分数据及归一化处理

采用Matlab R2012b软件进行网络结构设计。打开Matlab在Matlab中点Import Data选项,将获得的150个样本数据(每个样本数据为单个小麦光谱数据及对应的类别)导入到Matlab中,形成矩阵。编写matlab命令(见附件)将150个样本随机地分成两组:一组作为训练样本,共120个;另一组为预测样本,共30个。选定数据集后,在进行网络训练之前,对神经网络的输入和输出数据进行归一化处理(Matlab中mapminmax函数实现),以加快网络的训练速度。 BP网络的模型建立、训练及预测

(1) Matlab的神经网络工具箱提供了建立神经网络的专用函数newff().用newff函数来确定网络层数、每层中的神经元数和传递函数【3】。

net = newff( PR, [ S1, S2 , , , SN] , {TF1 , TF2 , , , TFN}, BTF, BLF, PF) PR:由每组输入(共有R组输入)元素的最大值和最小值组成的R×2维的矩阵; Si:第i层的长度,共计N1层;

TFi:第i层的传递函数,默认为“tansig”;可选用的传递函数有:非线性传递函数( Log- sigmoid、tan- sigmoid),纯线性函数(Purelin)。

BTF:BP网络的训练函数,默认为“trainlm”;可选用的训练函数有:traingd、traingdm、traingdx、trainbfg、trainlm等。

BLF:权值和阈值的BP学习算法,默认为”learngdm”;可选用的学习函数有:Learngd(基于梯度下降法的学习函数)、Learngdm(梯度下降动量学习函数)。

PF:网络的性能函数,默认为”mse”; 本实例可以用一下代码实现,并形成模型如图10: net=newff(inputn,output_train,13,{'tansig','purelin'});

24

-

图10 BP网络模型

(2) 执行net=train(net,inputn,output_train);训练网络,直到达到误差标准,训练均方误差如图11:

图11 均方误差

(3) 将原先随机划分的三十个预测样本,归一化处理后,用训练好的网络进行预

测(代码见附录),并分析结果,如图12:

24

-

图12 BP网络预测分类与实际类别比对 (4) 统计预测结果中正确的个数,得出预测准确率为%

实验总结

由于白粉病发时先在冬小麦基部叶片发病,随着病情的发展逐步向上蔓延,当病情发展到一定程度时,其冠层光谱反射率有明显的变化。因此将采集到的高光谱数据,除去噪音部分,从此波长范围选出20个特征波长的反射率作为BP 网络的输入变量,建立识别模型,通过调整隐含层的节点数来优化网络结构,经过反复试验得到最佳网络结构为20( 输入) - 13( 隐含) - 1( 输出) 三层BP 神经网络模型,对30个建模样本( 训练样本) 的拟合残差为2. 77× 10 - 5 ,利用训练好的模型对未知的30个预测样本进行预测,预测准确率为%。通过实验表明,BP神经网络对于高光谱遥感数据进行分类识别是一种有效途径和方法。但是由于本次实验的20个特征波长的选取还不充分和周全,影响到最终的识别精度,这有待于进一步研究解决。

5 结论与讨论

本文主要探讨了运用BP神经网络对高光谱遥感数据分类的研究。高光谱遥感数据具有波段数目众多、各波段相关性强、运算量大的特点,这对相应的处理

24

-

技术也就提出了很高的要求。BP神经网络分类法具有良好的适应能力和复杂的映射能力,能实现非线性的数据模式识别,比之基于传统统计理论的分类算法具有较强的学习能力,在模式识别领域有着广泛的应用。

神经网络模型可以容纳更多的波段参与高光谱数据的分类处理,但是如果将所有的指标都作为神经网络的输入端,会增加网络的复杂度并降低网络性能,大大增加计算时间,甚至影响计算精度。如果舍弃其中一些因素,势必会造成某些有用信息的丢失。因此,如何在有效保留信息的前提下对数据进行降维,成为改进人工神经网络预测效果的途径之一。

虽然BP神经网络具有简单、易行、计算量小、并行性强等特点,是多层前向网络的首选算法。但是应用BP网络解决实际问题的过程中,选择多少层网络、每层多少个神经元节点、选择何种传递函数、何种训练算法等,均无可行的理论指导或者可以套用的公式,只能通过大量的实验计算获得;其学习算法目前也有很多的改进,但还是难以摆脱易陷入局部极小点、收敛速度慢等缺点。

这些BP网络自身存在的很多局限性都影响着网络训练效果以及预测分类效果,。如何改进BP神经网络的学习算法,如何在有效保留信息的前提下对高光谱遥感数据进行降维,从而减少输入层神经元的个数,增强网络性能,改善预测效果,这都需要进一步研究。

参考文献:

[1]万余庆、谭克龙、周日平.高光谱遥感应用研究[M].北京:科学出版社,2006.

[2]周开利、康耀红.神经网络模型及其MATLAB仿真程序设计[M].北京:清华大学出版社,2005.

[3]傅荟璇、赵红等.MATLAB神经网络应用设计[M].北京:机械工业出版社,2010. [4]韩立群.人工神经网络理论设计及应用[M].北京:化学工业出版社,2002. [5] 杨建刚.人工神经网络实用教程[M].浙江大学出版社, 2001.

[6](美)Martin , Howard , Mark 等.Neural Network Design[M].机械工业出版社, 2002. [7]SimPsonJJ, Recurrent Neural Network Classifier for Improved Retrievals of Areal Extent of Snow Cover[J].IEEE Transactions on Geoscience and Remote Sensing,2001,39:2135-2147. [8]Foody evaluation of some factors affecting the accuracy of classification by an artificial neural network[J],International Journal of Remote Sensing,1997,18(4):799-810.

[9]Gong P,Wang D X,Liang a canopy reflectance model using a neural network[J].International

Journal of Remote Sensing,1999,20(1):111-122.

[10]Tuteja of High Salinity Tolerance in Plants [J].Methods in Enzymology,2007,428:419-438. [11]Cloutis E geological remote sensing:Evaluation of analytical techniques[J].Int J Remote 24

-

Sensing,1960,20(1):2215-2242.

[12] 浦瑞良,宫鹏.高光谱遥感及其应用[M].北京:高等教育出版社,2000.

[13]蒋捷峰.基于BP神经网络的高分辨率遥感影像分类研究[D]首都师范大学硕士论文,2011

致 谢

在此论文完成之际,谨向将我带入计算机殿堂的河南农业大学信

息与管理科学学院的各位老师致以衷心的感谢和诚挚的敬意! 我要衷心感谢我的导师乔红波教授,感谢乔老师为我提供了在遥感领域学习的机会,本文是在乔老师悉心指导下完成的,从论文的选题,数据和资料的收集、研究的难点和问题的解决到最后的完成,都倾注了导师大量的心血。乔老师给我许多从事科学研究的方法,有效地指导了我的学习和研究。向乔老师表示诚挚的感谢! 同时还要感谢张慧老师的指导和帮助,张老师对我的论文提出了宝贵意见,谢谢张老师!

感谢我的同窗好友们,谢谢你们在大学四年期间给我的无私帮助!愿我们的友谊长存!

最后,感谢一直以来关心爱护我,默默支持我的父母和亲人,是他们伟大的爱和永远的支持使我不断地前进。

附件:

1. %% 清空环境变量 2. clc 24

-

3. clear

4. %% 训练数据预测数据 5. data=importdata(''); 6. k=rand(1,150); 7. [m,n]=sort(k); 8. %输入输出数据

9. input=data(:,1:20); 10. output =data(:,21);

11. %随机提取120个样本为训练样本,30个样本为预测样本 12. input_train=input(n(1:120),:)'; 13. output_train=output(n(1:120),:)'; 14. input_test=input(n(121:150),:)'; 15. output_test=output(n(121:150),:)'; 16. %输入数据归一化

17. [inputn,inputps]=mapminmax(input_train); 18. %% BP网络训练 19. % %初始化网络结构

20. net=newff(inputn,output_train,13,{'tansig','purelin'}); 21. %% 网络训练

25. net=train(net,inputn,output_train); 26. %% BP网络预测 27. %预测数据归一化

28. inputn_test=mapminmax('apply',input_test,inputps); 29. %网络预测输出

30. BPoutput=sim(net,inputn_test); 31. %% 结果分析

32. %根据网络输出找出数据属于哪类 33. BPoutput(find(BPoutput<)=0;

34. BPoutput(find(BPoutput>=&BPoutput<)=1; BPoutput(find(BPoutput>=&BPoutput<)=2; BPoutput(find(BPoutput>=&BPoutput<)=3; BPoutput(find(BPoutput>=&BPoutput<=)=4; 35. %% 结果分析

36. %画出预测种类和实际种类的分类图 37. figure(1)

38. plot(BPoutput,'og') 39. hold on

40. plot(output_test,'r*');

41. legend('预测类别','输出类别')

42. title('BP网络预测分类与实际类别比对','fontsize',12) 43. ylabel('类别标签','fontsize',12) 44. xlabel('样本数目','fontsize',12) 45. ylim([ ]) 46. %预测正确率 24

-

47. rightnumber=0;

48. for i=1:size(output_test,2)

49. if BPoutput(i)==output_test(i) 50. rightnumber=rightnumber+1; 51. end 52. end

53. rightratio=rightnumber/size(output_test,2)*100; .

55. sprintf('测试准确率=%',rightratio)

24

-

指导教师评语(主要评价论文的工作量、试验数据的可靠性、论文的主要内容与特点、写作水平等): 论文的工作量: 试验数据的可靠性: 论文的主要内容与特点、写作水平: 签 名: 年 月 日 答辩委员会评语及论文成绩(主要评价论文的性质、难度、质量、综合训练、答辩情况、不足等): 论文的性质、难度、质量: 学生的综合训练、答辩情况、不足等: 论文成绩: 主任委员签名: 年 月 日 24

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务