试画出BP神经网络结构输入层3节点,隐层5节点,输出层2节点
BP(BackPropagation)神经网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。
BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络模型拓扑结构包括输入层(input)、隐层(hiddenlayer)和输出层(outputlayer)。用WORD可以画,插入形状。
谷歌人工智能写作项目:爱发猫
给出一个如图所示的BP神经网络,X1,X2 为输入,求输出Y
这个应该是隐层和输出层吧,直接purelin(X*W)即可得到输出Y,两输入单输出好文案。
基础知识:BP(BackPropagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。
BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络模型拓扑结构包括输入层(input)、隐层(hiddenlayer)和输出层(outputlayer)。
朱家岩隧道涌水BP网络模型分析
4.4.1神经网络模型的发展自Hebb提出的学习规则以来,人们相继提出了各种各样的学习算法。
目前,已发展了几十种神经网络,例如Hopfield模型,Feldmann等的连接型网络模型,Hinton等的玻尔茨曼机模型,以及Rumelhart等的多层感知机模型和Kohonen的自组织网络模型等等。
在这众多神经网络模型中,应用最广泛的是多层感知机神经网络。
目前,神经网络中应用最广的是前向多层神经网络的反传学习算法,即BP法,它最早是由Werbos于1974年提出来的,Rumelhart等人于1985年发展了反传网络学习算法,实现了Minsky的多层网络设想。
数学上已经证明:一个前向三层神经网络可以实现任何非线性映射,可以逼近任何复杂的函数。
4.4.2神经网络控制过程与岩溶隧道涌水过程的相似性从结构上分析,涌水过程与人工神经网络(ArtificialNetwork,简称ANN)是同构的。
涌水过程是一个非线性系统,以降雨为输入,涌水为输出,从降雨到涌水,中间要经过复杂的过程,受到地形地貌条件、地层岩性、地质结构特征及水文地质条件等多种因素的影响,各个环节形成一个相互制约、相互联结的网络结构,而人工神经网络就是一个大型非线性动力系统,各神经元分层排列并互相联结,因其联结方式的不同形成不同的网络结构,如前馈网络,反馈内层互联网络,反馈型局部联结网络等。
从概念上看,涌水机理研究就是利用观测的相关资料,分析研究涌水量等水文要素的规律,而神经网络利用观测历史数据建立系统的数学模型,识别并估计系统参数从而掌握客观水文规律。
因此,神经网络可以在一定程度上用来解决涌水机理研究的问题。
BP神经网络是人工神经网络中最为重要的网络之一,这种基于误差反传递算法的BP网络有很强的映射能力,可以解决许多实际问题,迄今为止,它的应用最为广泛。
4.4.3BP神经网络的基本原理BP神经网络是典型的多层网络,网络不仅有输入层节点、输出层节点,而且有隐含层节点。隐含层可以是一层,也可以是多层。
当信号输入时,首先传到隐含层节点,经过作用函数后,再把隐含层节点的输出信号传播到输出层节点,经过处理后给出输出结果(图4.11)。
图4.11神经网络拓扑结构示意图节点的作用函数通常选用Sigmoid型函数,其表达式为岩溶地区地下水与环境的特殊性研究网络的学习过程由正向传播和反向传播组成。
在正向传播过程中,输入信号从输入层经隐含层单元逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。
如果在输出层不能得到期望的输出,则转入反向传播,将输出信号的误差沿着原来的连接通路返回,通过修改各层神经元的权值,使得期望输出与实际输出的误差信号最小。
这种误差信号一般采用平方型误差函数,表达式为岩溶地区地下水与环境的特殊性研究对于只含有一层隐含层的BP网络模型来说,假设有p个样本,输入层、隐含层、输出层的神经元数分别为l,m,n;每个学习样本由输入x=(x1,x2,…,xn)及期望输出t=(t1,t2,…,tn)组成;隐含层输出为y=(y1,y2,…,ym);输出层输出为=(,,…,);Wij为输入层节点i到隐含层节点j的权值;Wjk为隐含层节点j到输出层节点k的权值;Hj为隐含层节点j的阈值;Hk为输出层节点k的阈值;Ek为第k个样本误差;E为总误差。
则BP网络的算法可简述如下:1)为权系数Wij、Wjk与阈值Hj和Hk设置初值,一般为较小随机数。2)将随机调用的一个学习样本(x1,x2,…,xn,t1,t2,…,tn)输入主程序。
3)求隐含层节点j的输入值netj及相应节点的输出yj,即岩溶地区地下水与环境的特殊性研究yj=f(netj)(4.20)节点的作用函数为Sigmoid型函数,岩溶地区地下水与环境的特殊性研究4)求输入层节点k的输入值netk与相应节点的输出岩溶地区地下水与环境的特殊性研究5)求输出层节点k的参考误差δk岩溶地区地下水与环境的特殊性研究6)求隐含层节点j的参考误差δj岩溶地区地下水与环境的特殊性研究7)调整隐含层节点j到输出层节点k的权值Wjk和阈值σkWjk=Wjk+η1·δk·yj,η1∈(0,1)(4.26)σk=σk+η2·δk,η2∈(0,1)(4.27)8)调整输入层节点i到隐含层节点j的权值Wij和阈值θjWij=Wij+η1·δj·xj,η1∈(0,1)(4.28)θj=θj+η2·δj,η2∈(0,1)(4.29)9)调用下一个学习样本,返回步骤(3)重复学习,直到收集的样本全部参与学习;10)计算Ek、E,使得总误差E小于某一规定的精度值,则保留权值和阈值,学习过程结束;否则转到步骤(2),重新学习,岩溶地区地下水与环境的特殊性研究岩溶地区地下水与环境的特殊性研究为了加快网络的学习速度,不导致学习产生震荡,避免结果陷入局部最小,在调整权值和阈值时加入动量项:Wij(N+1)=Wij(N)+η1·δj·xj+a·[Wij(N)-Wij(N-1)](4.32)式中:N为迭代次数;a为动量项系数。
4.4.4隐含层神经元个数的确定隐含层起抽象的作用,即它能够从输入样本中提取特征。增加隐含层可以增加神经网络的处理能力,但是同时也会增加训练的复杂度和训练时间。
1988年Cybenko指出一个隐含层就可以实现任意判决分类问题,两个隐含层就可以表示输入图形的任意输出函数。相对于隐含层数的选择,隐含层神经元个数的选择更为复杂。
其复杂的原因在于目前为止还没有明确的方法可以计算出实际需要使用的隐含层神经元个数。所有关于隐含层神经元个数选择的建议都是基于经验的。隐含层神经元的个数少时,会造成局部极小点多,难以训练,容错性差。
而隐含层神经元个数多时又增加了网络的复杂度和训练时间,其误差也不一定最佳。Hecht-Nielsen认为在输入神经元数为N,隐含层神经元数为2N+1时,使用单隐含层的神经网络可以实现输入的任意函数。
将尝试着利用流量衰减分析和物理模拟的结果来指导隐含层神经元个数的选取。
4.4.5朱家岩隧道涌水过程的BP网络模型分析4.4.5.1研究区隧道涌水过程概化研究区地下水主要补给来源是雨水;三级台面的地表分水岭为研究区补给边界;西面隧道出口地带的渔泉溪,东面隧道进口处的干沟及南面的沿溪河流,为排泄地下水边界,分水岭补给边界与排泄边界,组成了该区水文地质单元边界条件。
三级台面为补给区,四级、五级台面为补给、径流区,排泄区不明显。研究区排泄基准面以上无隔水层存在,对排泄点不存在层制现象,所以研究区岩溶水系统类型为基控-侵蚀类型。
岩溶隧道的涌水过程极其复杂,从降雨到涌水,中间要经过蒸散发、下渗等环节,受到地形、地貌、下垫面、土壤地质以及人类活动等多种因素的影响。
我们可以将一个隧道复杂的涌水过程概化为涌水系统,该涌水系统的性能可以通过其主要影响因素体现出来,而其中物理参数的次要特性以及物理参数精度的空间分布可以忽略,从而使问题得以简化。
BP神经网络是一个非线形系统,可以用于逼近非线形映射关系,也可以用于逼近一个极为复杂的函数关系。
对于研究区岩溶管道水系统来说,其一定时段内的水量平衡方程如下:Q=P-E±ΔS(4.33)式中:Q为隧道涌水量;P为降水量;E为蒸散发量;ΔS为地下水储量的变化量。
即可得出:Q=f(P,E,ΔS)(4.34)这是一个非常复杂的映射关系,可以将之概化为一个系统,利用BP神经网络,对之进行模拟逼近。如前所述,从结构上来说,BP神经网络与隧道涌水系统是同构的。
接下来,利用朱家岩隧道岩溶管道结构和BP神经网络结构进行类比分析,从而建立模型。
4.4.5.2朱家岩隧道岩溶管道涌水的BP网络模型研究(1)训练样本资料准备神经网络岩溶管道涌水模型分为系统识别与模型应用两个阶段:前者精选已知的实测资料作为样本来训练网络识别参数,后者则应用训练好的网络分析得到径流模拟值。
一定时段内隧道的涌水量Q与该区域上的降雨量、蒸散发量以及地下水储量的变化量有关,而其中地下水储量的变化量与区域前期影响雨量以及本时段的降水量和蒸散发量有关,所以该变化量可以表示为该时段以及先前时段的降水量及蒸散发量的函数,故而可以进一步将Q表示为该时段及先前时段P、E的函数。
在实际研究中,P通常为实测值,E因为主要与温度、日照时间、云量和湿度有关,所以E通常用温度、湿度等量值来计算,因此,可以用一个系统来概化Q与前面提及的影响因素之间的复杂关系,建立系统模型。
本次模型参数识别、训练采用了4月29日~11月25日宜昌气象局日平均气温、日照时数和降雨量作为输入资料,朱家岩隧道的涌水量作为输出资料进行分析研究,其中将4月29日~7月9日、7月24日~11月25日共166组数据作为训练样本进行训练学习,7月10日~7月23日的数据作为检验样本用于对训练成功的网络进行预测检验。
图4.12为4月29日~11月25日总共180d的日降雨量(mm)、宜昌气象局日平均气温(℃)和日照时数(h)以及涌水量(m3/d)。
岩溶地区地下水与环境的特殊性研究岩溶地区地下水与环境的特殊性研究岩溶地区地下水与环境的特殊性研究图4.12研究区涌水量、平均气温、日照时数和降水量图(2)样本数据的预处理由于BP网络的输入层物理量及数值相差甚远,为了加快网络收敛的速度,在训练之前须将各输入物理量进行预处理。
数据的预处理方法主要有标准化法、重新定标法、变换法和比例放缩法等等。
本研究所选用的是一种最常用的比例压缩法[4],公式如下:岩溶地区地下水与环境的特殊性研究式中:X为原始数据;Xmax、Xmin为原始数据的最大值和最小值;T为变换后的数据,也称之为目标数据;Tmax、Tmin为目标数据的最大值和最小值。
由于Sigmoid函数在值域[0,0.1]和[0.9,1.0]区域内曲线变化极为平坦,因此合适的数据处理是将各输入物理量归至[0.1,0.9]之间。
将每个样本输入层的6个物理量进行归一化处理:岩溶地区地下水与环境的特殊性研究BP网络的算法对训练样本的顺序有很强的敏感性,按随机数随机排列样本的次序,有助于加快网络训练的速度。
(3)网络训练与模拟已经将输入样本的个数定为6个,但是对于隐含层神经元个数的选择,到目前为止还没有明确的方法可以计算出实际需要使用的隐含层神经元个数,在选择时通常是采用试算的方法[5]。
虽然现今的BP神经网络还是一个黑箱模型,其参数没有水文物理意义[6],但从结构上分析,涌水过程与ANN是同构的。
对于一个岩溶地下水系统,在一次降水之后,水流通过下渗进入到地下,经过多个裂隙、溶隙、管道,最后汇集到突水点,在这过程中,各个裂隙、溶隙、管道都有其相应的蓄水容量等阈值,而降水是其输入,涌水量是其输出,这类似于人工神经元模型中的阈值、激活值、输出等器件。
研究区域管道发育程度有三个级别,在一次降水之后,地下水流经过3条岩溶通道(裂隙、溶隙、管道)的蓄积后在隧道经过涌水排出,这一过程可以与BP神经网络结构进行类比,其中3条岩溶通道(裂隙、溶隙、管道)相当于隐含层中的3个神经元,各通道的蓄水容量相当于隐含层中人工神经元的阈值,涌水量相当于输出值,从整体上来说,BP神经网络的结构已经灰箱化。
在以上类比的设想下,将隐含层中的神经元个数定为3个,采用6-3-1的网络结构(表4.5;图4.13)。
图4.13BP网络模型示意图表4.5BP网络模型参数一览表定义系统目标精度为0.0005,误差公式是对训练出网络的输出层节点和实际的网络输出结果求平方差的和。
最大训练次数取5000次,如果到达最大训练次数网络还未达到目标精度,程序退出。已经确定网络的输入层神经元数目为6,隐含层神经元数目为3,输出层神经元数目为1。训练算法选取附加动量法。
激活函数选取Sigmoid。程序执行5000次后BP网络模型训练成功。网络映射值与实测值的相关关系见图4.14。
图4.14网络映射值与实测值相关关系将用来检验的7月10~23日的数据作为输入层数据输入已经训练好的BP网络模型,然后将其输出值与同期的实测资料进行对比,其分析结果见图4.15。
图4.15涌水量实测值与BP网络计算值比较从图4.15可以看出,用BP网络模拟的涌水量中,7月10日~7月23日中涌水量变化大体一致,模拟情况较好,证明了流量衰减分析和物理模拟结果的可靠性。
应用确定性系数分析方法对模型精度进行评定,确定性系数dy表达式如下:dy=1-S2/σ2(4.37)岩溶地区地下水与环境的特殊性研究岩溶地区地下水与环境的特殊性研究式中:S为模型计算值与实测值之差的均方差;σ为实测值的均方差;yi为实测值;y为模型计算值;为实测值的均值;n为检验样本数。
dy值越大,表明模型计算精度越高。经计算,基于BP网络的朱家岩隧道涌水模型的确定性系数为0.9805,符合模型精度要求。将此降水量值输入已经检验好的BP网络模型,求得最大涌水量为12850m3/d。
极端气温、降雨-洪水模型(BP神经网络)的建立
极端气温、降雨与洪水之间有一定的联系。
根据1958~广西西江流域极端气温、极端降雨和梧州水文站洪水数据,以第5章相关分析所确定的显著影响梧州水文站年最大流量的测站的相应极端气候因素(表4.22)为输入,建立人工神经网络模型。
4.5.1.1BP神经网络概述(1)基于BP算法的多层前馈网络模型采用BP算法的多层前馈网络是至今为止应用最广泛的神经网络,在多层的前馈网的应用中,如图4.20所示的三层前馈网的应用最为普遍,其包括了输入层、隐层和输出层。
图4.20典型的三层BP神经网络结构在正向传播中,输入信息从输入层经隐含层逐层处理,并传向输出层。
如果输出层不能得到期望的输出结果,则转入反向传播,将误差信号沿原来的连同通路返回,通过修改各层神经元的权值,使得误差最小。BP算法流程如图4.21所示。
图4.21BP算法流程图容易看出,BP学习算法中,各层权值调整均由3个因素决定,即学习率、本层输出的误差信号以及本层输入信号y(或x)。
其中,输出层误差信号同网络的期望输出与实际输出之差有关,直接反映了输出误差,而各隐层的误差信号与前面各层的误差信号都有关,是从输出层开始逐层反传过来的。
1988年,Cybenko指出两个隐含层就可表示输入图形的任意输出函数。
如果BP网络只有两个隐层,且输入层、第一隐含层、第二隐层和输出层的单元个数分别为n,p,q,m,则该网络可表示为BP(n,p,q,m)。
(2)研究区极端气温、极端降雨影响年最大流量过程概化极端气温、极端降雨影响年最大流量的过程极其复杂,从极端降雨到年最大流量,中间要经过蒸散发、分流、下渗等环节,受到地形、地貌、下垫面、土壤地质以及人类活动等多种因素的影响。
可将一个极端气候-年最大流量间复杂的水过程概化为小尺度的水系统,该水系统的主要影响因子可通过对年最大流量影响显著的站点的极端气温和极端降雨体现出来,而其中影响不明显的站点可忽略,从而使问题得以简化。
BP神经网络是一个非线形系统,可用于逼近非线形映射关系,也可用于逼近一个极为复杂的函数关系。极端气候-年最大流量水系统是一个非常复杂的映射关系,可将之概化为一个系统。
BP神经网络与研究流域的极端气候-年最大流量水系统的结构是相似的,利用BP神经网络,对之进行模拟逼近。
(3)隐含层单元数的确定隐含层单元数q与所研究的具体问题有关,目前尚无统一的确定方法,通常根据网络训练情况采用试错法确定。
在训练中网络的收敛采用输出值Ykp与实测值tp的误差平方和进行控制变环境条件下的水资源保护与可持续利用研究作者认为,虽然现今的BP神经网络还是一个黑箱模型,其参数没有水文物理意义,在本节的研究过程中,将尝试着利用极端气候空间分析的结果来指导隐含层神经元个数的选取。
(4)传递函数的选择BP神经网络模型算法存在需要较长的训练时间、完全不能训练、易陷入局部极小值等缺点,可通过对模型附加动量项或设置自适应学习速率来改良。
本节采用MATLAB工具箱中带有自适应学习速率进行反向传播训练的traingdm()函数来实现。
(5)模型数据的归一化处理由于BP网络的输入层物理量及数值相差甚远,为了加快网络收敛的速度,使网络在训练过程中易于收敛,对输入数据进行归一化处理,即将输入的原始数据都化为0~1之间的数。
本节将年极端最高气温的数据乘以0.01;将极端最低气温的数据乘以0.1;年最大1d、3d、7d降雨量的数据乘以0.001;梧州水文站年最大流量的数据乘以0.00001,其他输入数据也按类似的方法进行归一化处理。
(6)年最大流量的修正梧州水文站以上的流域集水面积为32.70万km2,广西境内流域集水面积为20.24万km2,广西境内流域集水面积占梧州水文站以上的流域集水面积的61.91%。
因此,选取~梧州水文站年最大流量和红水河的天峨水文站年最大流量,分别按式4.10计算每年的贡献率(表4.25),取其平均值作为广西西江流域极端降雨对梧州水文站年最大流量的平均贡献率,最后确定平均贡献率为76.88%。
变环境条件下的水资源保护与可持续利用研究表4.25~极端降雨对梧州水文站年最大流量的贡献率建立“年极端气温、降雨与梧州年最大流量模型”时,应把平均贡献率与梧州水文站年最大流量的乘积作为模型输入的修正年最大流量,而预测的年最大流量应该为输出的年最大流量除以平均贡献率76.88%,以克服极端气温和降雨研究范围与梧州水文站集水面积不一致的问题。
4.5.1.2年极端气温、年最大1d降雨与梧州年最大流量的BP神经网络模型(1)模型的建立以1958~1997年年极端最高气温、年极端最低气温、年最大1d降雨量与梧州水文站年最大流量作为学习样本拟合、建立“年极端气温、年最大1d降雨-梧州年最大流量BP神经网络模型”。
以梧州气象站的年极端最高气温,桂林、钦州气象站的年极端最低气温,榜圩、马陇、三门、黄冕、沙街、勾滩、天河、百寿、河池、贵港、金田、平南、大化、桂林、修仁、五将雨量站的年最大1d降雨量为输入,梧州水文站年最大流量为输出,隐含层层数取2,建立(19,p,q,1)BP神经网络模型,其中神经元数目p,q经试算分别取16和3,第一隐层、第二隐层的神经元采用tansig传递函数,输出层的神经元采用线性传递函数,训练函数选用traingdm,学习率取0.1,动量项取0.9,目标取0.0001,最大训练次数取200000。
BP网络模型参数见表4.26,结构如图4.22所示。
图4.极端气温、年最大1d降雨-梧州年最大流量BP模型结构图表4.26BP网络模型参数一览表从结构上分析,梧州水文站年最大流量产生过程中,年最高气温、年最低气温和各支流相应的流量都有其阈值,而极端气温和极端降雨是其输入,年最大流量是其输出,这类似于人工神经元模型中的阈值、激活值、输出等器件。
输入年最大1d降雨时选用的雨量站分布在14条支流上(表4.27),极端降雨发生后,流经14条支流汇入梧州,在这一过程中极端气温的变化影响极端降雨的蒸散发,选用的雨量站分布在年最大1d降雨四个自然分区的Ⅱ、Ⅲ、Ⅳ3个区。
该过程可与BP神经网络结构进行类比(表4.28),其中,14条支流相当于第一隐含层中的14个神经元,年最高气温和年最低气温相当于第一隐含层中的2个神经元,年最大1d降雨所在的3个分区相当于第二隐含层的3个神经元,年最高气温、年最低气温的影响值和各支流流量的奉献值相当于隐含层中人工神经元的阈值,从整体上来说,BP神经网络的结构已经灰箱化。
表4.27选用雨量站所在支流一览表表4.28BP神经网络构件物理意义一览表(2)训练效果分析训练样本为40个,经过113617次训练,达到精度要求。
在命令窗口执行运行命令,网络开始学习和训练,其训练过程如图4.23所示,训练结果见表4.29和图4.24。
表4.29年最大流量训练结果图4.23神经网络训练过程图图4.24年最大流量神经网络模型训练结果从图4.26可知,训练后的BP网络能较好地逼近给定的目标函数。
从训练样本检验结果(表4.5)可得:1958~1997年40年中年最大流量模拟值与实测值的相对误差小于10%和20%的分别为39年,40年,合格率为100%。
说明“年极端气温、年最大1d降雨-梧州年最大流量预测模型”的实际输出与实测结果误差很小,该模型的泛化能力较好,模拟结果较可靠。
(3)模型预测检验把1998~梧州气象站的年极端最高气温,桂林、钦州气象站的年极端最低气温,榜圩、马陇、三门、黄冕、沙街、勾滩、天河、百寿、河池、贵港、金田、平南、大化、桂林、修仁、五将雨量站的年最大1d降雨量输入到“年极端气温、年最大1d降雨梧州年最大流量BP神经网络模型”。
程序运行后网络输出预测值与已知的实际值进行比较,其预测检验结果见图4.25,表4.30。
图4.25年最大流量神经网络模型预测检验结果表4.30神经网络模型预测结果与实际结果比较从预测检验结果可知:1998~中年最大流量模拟值与实测值的相对误差小于20%的为9年,合格率为90%,效果较好。
4.5.1.3年极端气温、年最大7d降雨与梧州年最大流量的BP神经网络模型(1)模型的建立以1958~1997年年极端最高气温、年极端最低气温、年最大7d降雨量和梧州水文站年最大流量作为学习样本来拟合、建立“年极端气温、年最大7d降雨-梧州年最大流量BP神经网络模型”。
以梧州气象站的年极端最高气温,桂林、钦州气象站的年极端最低气温,凤山、都安、马陇、沙街、大湟江口、大安、大化、阳朔、五将雨量站的年最大7d降雨量为输入,梧州水文站年最大流量为输出,隐含层层数取2,建立(12,p,q,1)BP神经网络模型,其中,神经元数目p,q经试算分别取10和4,第一隐层、第二隐层的神经元采用tansig传递函数,输出层的神经元采用线性传递函数,训练函数选用traingdm,学习率取0.1,动量项取0.9,目标取0.0001,最大训练次数取200000。
BP网络模型参数见表4.31,结构如图4.26所示。
表4.31BP网络模型参数一览表图4.26年极端气温、年最大7d降雨-梧州年最大流量BP模型结构图本节输入年最大7d降雨时选用的雨量站分布在8条支流上(表4.32),在发生极端降雨后,流经8条支流汇入梧州,在这一过程中极端气温的变化影响极端降雨的蒸散发,且选用的雨量站分布在年最大7d降雨四个自然分区的Ⅰ、Ⅱ、Ⅲ、Ⅳ4个区中。
该过程可与BP神经网络结构进行类比(表4.33),其中,8条支流相当于第一隐含层中的8个神经元,年最高气温和年最低气温相当于第一隐含层中的2个神经元,年最大7d降雨所在的4个分区相当于第二隐含层的4个神经元,整体上来说,BP神经网络的结构已经灰箱化。
表4.32选用雨量站所在支流一览表表4.33BP神经网络构件物理意义一览表(2)训练效果分析训练样本为40个,经过160876次的训练,达到精度要求,在命令窗口执行运行命令,网络开始学习和训练,其训练过程如图4.27所示,训练结果见表4.34,图4.28。
图4.27神经网络训练过程图表4.34年最大流量训练结果图4.28年最大流量神经网络模型训练结果从图4.28可知,训练后的BP网络能较好地逼近给定的目标函数。
由训练样本检验结果(表4.34)可得:1958~1997年40年中年最大流量模拟值与实测值的相对误差小于10%和20%的,分别为38年、40年,合格率为100%。
说明“年极端气温、年最大7d降雨-梧州年最大流量BP神经网络模型”的泛化能力较好,模拟的结果较可靠。
(3)模型预测检验把1998~梧州气象站的年极端最高气温,桂林、钦州气象站的年极端最低气温,凤山、都安、马陇、沙街、大湟江口、大安、大化、阳朔、五将雨量站的年最大7d降雨量输入到“年极端气温、年最大7d降雨-梧州年最大流量BP神经网络模型”。
程序运行后网络输出预测值与已知的实际值进行比较,其预测结果见图4.29和表4.35。
图4.29年最大流量神经网络模型预测检验结果表4.35神经网络模型预测结果与实际结果比较由预测检验结果可知:1998~中年最大流量模拟值与实测值的相对误差小于20%的为7年,合格率为70%,效果较好。
4.5.1.4梧州年最大流量-年最高水位的BP神经网络模型(1)模型的建立以1941~1997年梧州水文站的年最大流量与年最高水位作为学习样本来拟合、建立梧州水文站的“年最大流量-年最高水位BP神经网络模型”。
以年最大流量为输入,年最高水位为输出,隐含层层数取1,建立(1,q,1)BP神经网络模型,其中,神经元数目q经试算取7,隐含层、输出层的神经元采用线性传递函数,训练函数选用traingdm,学习率取0.1,动量项取0.9,目标取0.00001,最大训练次数取200000。
BP网络模型参数见表4.36,结构如图4.30所示。
表4.36BP网络模型参数一览表图4.30梧州年最大流量—年最高水位BP模型结构图广西西江流域主要河流有南盘江、红水河、黔浔江、郁江、柳江、桂江、贺江。
7条主要河流相当于隐含层中的7个神经元(表4.37),整体上来说,BP神经网络的结构已经灰箱化。
表4.37BP神经网络构件物理意义一览表(2)训练效果分析训练样本为57个,经过3327次训练,误差下降梯度已达到最小值,但误差为3.00605×10-5,未达到精度要求。
在命令窗口执行运行命令,网络开始学习和训练,其训练过程如图4.31所示,训练结果见图4.32和表4.38。
表4.38年最高水位训练结果从图4.32和表4.19可看出,训练后的BP网络能较好地逼近给定的目标函数。
对于训练样本,从检验结果可知:1941~1997年57年中年最高水位模拟值与实测值的相对误差小于10%和20%的分别为56a,57a,合格率为100%。
说明“年最大流量-年最高水位BP神经网络模型”的实际输出与实测结果误差很小,该模型的泛化能力较好,模拟的结果比较可靠。
图4.31神经网络训练过程图图4.32年最高水位神经网络模型训练结果(3)模型预测检验把1998~梧州水文站年最大流量输入到“年最大流量-年最高水位BP神经网络模型”。
程序运行后网络输出预测值与已知的实际值进行比较,其预测结果见图4.33,表4.39。
表4.39神经网络模型预测结果与实际结果比较从预测检验结果可知:1998~中,年最高水位模拟值与实测值的相对误差小于20%的为,合格率为100%,效果较好。
图4.33年最高水位量神经网络模型预测检验结果。
基于优化的BP神经网络遥感影像分类
。
罗小波1刘明培1,2(1.重庆邮电大学计算机学院中韩GIS研究所,重庆,400065;2.西南大学资源环境学院,重庆,400065)摘要:在网络结构给定的情况下,利用遗传算法的全局寻优能力得到一组权值和阈值作为BP神经网络的初始权值和阈值,来避免BP神经网络易陷入局部极小的缺陷,同时也可以提高网络的收敛速度。
然后再利用BP神经网络的局部寻优能力,对权值和阈值进行进一步的精细调整。实验结果表明,把这种基于遗传算法的BP神经网络应用于遥感影像监督分类,具有较高的分类精度。
关键词:BP神经网络;遗传算法;遥感影像分类1引言随着遥感技术的快速发展,遥感技术已经广泛应用于各个领域。其中,遥感影像分类是其重要组成部分。
近年来,随着人工神经网络理论的快速发展,神经网络技术日益成为遥感影像分类中的有效手段,特别是对高光谱等影像数据,更是具有许多独特的优势。
一般我们把采用BP(Back-propogation)算法的多层感知器叫做BP神经网络,它是目前研究得最完善、应用最广泛的神经网络之一。
与经典的最大似然法相比,BP神经网络最大的优势就是不要求训练样本正态分布。但是,它具有结构难以确定、容易陷入局部极小、不易收敛等缺陷。在本文中,网络的结构由用户根据问题的复杂度确定。
在进行网络训练之前,利用遗传算法的全局寻优能力确定网络的初始权值和阈值;然后利用BP学习算法的局部寻优能力对网络进行进一步的精细调整。最后利用训练后的网络进行遥感影像监督分类。
结果表明,基于遗传算法的BP神经网络进行遥感影像监督分类,具有较高的分类精度。2BP神经网络2.1网络结构BP神经网络的结构一般包括输入层、中间隐层、输出层。
在模式识别中,输入层的神经元个数等于输入的特征个数,输出层的神经元个数等于需要分类的类别数。隐层可以为一层或多层,但一般的实际应用中一层隐层就可以满足要求。
而各隐层的神经元个数需要根据实际问题的复杂度而定。以单隐层为例,其结构示意图如图1。
为了实现一种通用的遥感影像分类手段,除了提供默认的网络结构外,还为使用者提供了根据实际问题的复杂度自行确定网络隐层数与各隐层神经元数的功能。
这为一些高级用户提供了灵活性,但这种灵活性在一定程度上增加了使用的难度,有时也需要一个实验的过程,才能取得满意的效果。
图1BP神经网络结构2.2BP学习算法算法的基本步骤如下:(1)将全部权值与节点的阈值预置为一个小的随机数。(2)加载输入与输出。在n个输入节点上加载一n维向量X,并指定每一输出节点的期望值。
每次训练可以选取新的同类或者异类样本,直到权值对各类样本达到稳定。(3)计算实际输出y1,y2,…,yn。(4)修正权值。
权值修正采用了最小均方(LMS)算法的思想,其过程是从输出节点开始,反向地向第一隐层传播由总误差诱发的权值修正。
下一时刻的互连权值Wij(t+1)由下式给出:土地信息技术的创新与土地科学技术发展:中国土地学会学术年会论文集式中,j为本节点的输出;i则是隐层或者输入层节点的序号;或者是节点i的输出,或者是外部输入;η为学习率;α为动量率;δj为误差项,其取值有两种情况:A.若j为输出节点,则:δj=yj(1-yj)(tj-yj)其中,tj为输出节点j的期望值,yj为该节点的实际输出值;B.若j为内部隐含节点,则:土地信息技术的创新与土地科学技术发展:中国土地学会学术年会论文集其中k为j节点所在层之上各层的全部节点。
(5)在达到预定的误差精度或者循环次数后退出,否则,转(2)。2.3基于遗传算法的网络学习算法遗传算法具有全局寻优、不易陷入局部极小的优点,但局部寻优的能力较差。而BP学习算法却具有局部寻优的优势。
因此,如果将两种算法结合起来构成混合训练算法,则可以相互取长补短获得较好的分类效果。
主要思路如下:(1)利用遗传算法确定最优个体A.把全部权值、阈值作为基因进行实数编码,形成具有M个基因的遗传个体结构,其中M等于所有权值、阈值的个数。
B.设定种群规模N,随机初始化这N个具有M个基因的结构。C.适应度的计算:分别用训练样本集对N组权值、阈值进行训练,得出各自网络期望输出与网络实际输出的总误差e,适应度f=1.0-e。
D.进行遗传算子操作,包括选择算子、交叉算子和变异算子,形成新的群体:其中,选择算子采用了轮盘赌的方法,交叉算子采用了两点交叉。E.反复进行C、D两步,直到满足停止条件为止。
停止条件为:超出最大代数、最优个体精度达到了规定的精度。(2)把经过GA优化后的最优个体进行解码操作,形成BP神经网络的初始权值和阈值。(3)采用BP学习算法对网络进行训练,直到满足停止条件。
停止条件为:①达到最大迭代次数;②总体误差小于规定的最小误差。网络训练结束后,把待分数据输入训练好的神经网络,进行分类,就可以得到分类结果影像图。
3应用实例实现环境为VC++6.0,并基于Mapgis的二次开发平台,因为二次平台提供了一些遥感影像的基本处理函数,如底层的一些读取文件的基本操作。
实验中使用的遥感影像大小为500×500,如图1所示。该影像是一美国城市1985年的遥感影像图。
根据同地区的SPOT影像及相关资料,把该区地物类别分为8类,各类所对应的代码为:C1为水体、C2为草地、C3为绿化林、C4为裸地、C5为大型建筑物、C6为军事基地、C7为居民地、C8为其他生活设施(包括街道、道路、码头等)。
其中,居民地、军事设施、其他生活设施的光谱特征比较接近。
图1TM原始影像(5,4,3合成)在网络训练之前,经过目视解译,并结合一些相关资料,从原始图像上选取了3589个类别已知的样本组成原始样本集。
要求原始样本具有典型性、代表性,并能反映实际地物的分布情况。把原始样本集进行预处理,共得到2979个纯净样本。这些预处理后的样本就组成训练样本集。
网络训练时的波段选择为TM1、TM2、TM3、TM4、TM5、TM7共6个波段。
另外,由于所要分类的类别数为8,因此,网络结构为:输入层节点数为6,输出层节点数为8,隐层数为1,隐层的节点数为10,然后用训练样本集对网络进行训练。
在训练网络的时候,其训练参数分别为:学习率为0.05,动量率为0.5,最小均方误差为0.1,迭代次数为1000。把训练好的网络对整幅遥感影像进行分类,其分类结果如下面图2所示。
图2分类结果为了测试网络的分类精度,在分类完成后,需要进行网络的测试。
测试样本的选取仍然采用与选取训练样本集一样的方法在原始影像上进行选取,即结合其他资料,进行目视判读,在原始图像上随机选取类别已知的样本作为测试样本。
利用精度评价模块,把测试样本集与已分类图像进行比较,得到分类误差矩阵以及各种分类精度评价标准,如表1所示:表1分类误差矩阵总体精度:0.91,Kappa系数:0.90。
从表1可以看出,采用测试样本集进行测试,大部分地物的分类精度都达到了0.9以上,只有居民地和其他生活设施的精度没有达到,但也分别达到了0.89和0.77,总的分类精度为0.91。
Kappa系数在遥感影像分类精度评价中应用极为广泛,在本次测试中其值为0.90。从上面的分析可以看出,利用基于遗传算法的BP神经网络进行遥感影像分类,其分类精度较高,取得了令人满意的效果。
4结论与传统的基于统计理论的分类方法相比,BP神经网络分类不要求训练样本正态分布,并且具有复杂的非线性映射能力,更适合于日益激增的海量高光谱遥感数据的处理。
但BP神经网络也有易陷于局部极小、不易收敛等缺陷。初始权值和阈值设置不当,是引起网络易陷于局部极小、不易收敛的重要原因。
在实验中,利用遗传算法的全局寻优能力来确定BP网络的初始权值和阈值,使得所获取的初始权值和阈值是一组全局近似最优解。然后,利用BP学习算法的局部寻优能力对网络权值和阈值进行精细调整。
这样,训练后的稳定网络,不但具有较强的非线性映射能力,而且总可以得到一组均方误差最小的全局最优解。
实验表明,利用上述的基于遗传算法的BP神经网络进行遥感影像分类,只要所选取的训练样本具有代表性,能反映实际地物的分布情况,就能够得到较高的分类精度,具有较强的实际应用价值。
参考文献H.Yangetal,ABack-propagationneuralnetworkmformineralogicalmappingfromAVIRISdata,Int.J.Remotesensing,20(1):97~110ArdutiAlessandro,etal.Speeduplearningandnetworkoptimizationwithextendedbackpropogation.NeuralNetworks,1993,6:365~383PatrickP.Minimizationmethodsfortrainingfeedforwardneuralnetworks.NeuralNetworks,1994,7:1~12GoldbergDE.GeneticalgorithmsinSearchOptimizationandMachine:Addison-Wesley,1989RudolphGunter.ConvergenceanalysisofcanonicalgeneticTransactionsonNeuralNetworks,1994,5(1);102~119FangJ,XiY.Towarddesignbasedonevolutionary.,1997,11(2):155~161ParkYR,etal.PredictionsunspotsusinglayeredperceptionneuralNeuralNetorks,1996,7(2):501~505杨行峻、郑君里.人工神经网络与盲信号处理[M].北京:清华出版社,,23~40周成虎、骆剑成等.遥感影像地学理解与分析[M].北京:科学出版社,2001,228~238王耀男.卫星遥感图像的神经网络自动识别[J].湖南大学学报,1998,61~66江东,王建华.人工神经网络在遥感中的应用与发展.国土与资源遥感,1999,13~18。
什么是BP神经网络?
。
BP算法的基本思想是:学习过程由信号正向传播与误差的反向回传两个部分组成;正向传播时,输入样本从输入层传入,经各隐层依次逐层处理,传向输出层,若输出层输出与期望不符,则将误差作为调整信号逐层反向回传,对神经元之间的连接权矩阵做出处理,使误差减小。
经反复学习,最终使误差减小到可接受的范围。具体步骤如下:1、从训练集中取出某一样本,把信息输入网络中。2、通过各节点间的连接情况正向逐层处理后,得到神经网络的实际输出。
3、计算网络实际输出与期望输出的误差。4、将误差逐层反向回传至之前各层,并按一定原则将误差信号加载到连接权值上,使整个神经网络的连接权值向误差减小的方向转化。
5、対训练集中每一个输入—输出样本对重复以上步骤,直到整个训练样本集的误差减小到符合要求为止。
一个关于信号源识别的BP神经网络 BP网络看不懂 求大神帮助 20
A是输出结果矩阵。E=T-A;这一句是计算输出与实际的误差。输入、输出不是直接的数学表达式关系,是一个非线性系统,通过训练得到的。
BP(BackPropagation)神经网络是年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。
BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。
BP神经网络模型拓扑结构包括输入层(input)、隐层(hiddenlayer)和输出层(outputlayer)。
matlab BP神经网络 performance 图这五条线的详细解释
图上的三个彩色实线分别是:每一代BP训练过程的MSE指标的性能,每一代BP交叉验证过程的MSE指标的性能以及BP测试的MSE指标在每一代中执行的过程。
特别是,应该注意内部的TEST红线,这是BP计算/训练结果。BEST虚线表示当BP网络被训练到第八代时,BP训练结果是最佳的。
GOAL虚线是在编程或直接使用MATLAB的ANN工具箱训练此BP时设置的网络容量训练停止目标(一个)。
扩展资料:BP(BackPropagation)神经网络是由Rumelhart和McCelland领导的一组科学家于1986年提出的。
BP(BackPropagation)是由反向传播误差反向传播算法训练的多层前馈网络,是使用最广泛的神经网络模型之一。
BP网络可以学习并存储大量的输入-输出模式映射关系,而无需事先揭示描述这些映射关系的数学方程式。
BP网络的学习规则是使用最速下降法,并通过反向传播来不断调整网络的权重和阈值,以最小化网络的平方误差之和。BP神经网络模型的拓扑包括输入层,隐藏层和输出层。
长江流域中上游干流碳通量BP人工神经网络模型研究
5.5.3.1训练样本资料准备BP人工神经网络碳通量模型分为两个阶段:背景模拟与模型应用。
背景模拟是应用屏山站的实测资料作为样本,来训练网络识别参数;模型应用则是将需要定量分析的寸滩站、万州站、宜昌站、汉口站各站的流量带入训练好的网络,分析得到屏山站情景下的碳通量值。
本节BP人工神经网络的输入变量、输出变量的数值相差甚远、量纲不一致,为加速网络收敛的速度,在训练之前须将各输入、输出变量归一化。
由于本节的研究还涉及变量的反归一问题,为方便反归一,本节用下式对各个变量进行归一化处理:X(i)’=[X(i)-X]/Xmax-Xmin(5.7)式中:X(i)’、X(i)分别为经过归一化后和归一化前的值;Xmax、Xmin分别为所有输入变量、输出变量中的最大值和最小值。
5.5.3.2网络结构的设计本节以各个站的流量作为网络输入,输入层变量为1。
对于隐含层神经元个数的选择,很多学者都进行了研究,但是到目前为止,还没有通用的方法用于计算出实际需要使用的隐含层神经元个数,所以在选择时大多是采用试算的方法。
本节经过多次试算,确定隐含层神经元为5时,网络收敛效果最好,模拟精度最高,选定隐含层神经元为5,采用1-5-1的网络结构(图5.22)。
图5.22BP人工神经网络模型结构图5.5.3.3模型物理意义的探讨虽然现今的BP神经网络还是一个黑箱模型,其参数没有物理意义。但从结构上分析,本节认为河流碳输运系统和人工神经网络是同构的。
一个流域碳通量以某个碳源为输入,到河流某断面或者河口碳通量为输出,中间经过陆地表面的岩石、土壤与生物等各种自然营力;流域冲刷、淋溶;人类生产、生活废弃物中,含碳物质的排放;河流水体溶解CO2,自生有机碳;河流荷载碳输运进入海洋共5个过程。
每个过程都是影响流域碳通量的重要因素,每个过程的变化都会引起流域碳通量的响应,这可以与BP神经网络结构进行类比。
上述5个过程相当于隐含层中的5个神经元,整体上来说,本节用来模拟长江中上游干流碳输运量的BP神经网络结构已基本灰箱化(表5.15)。
表5.15BP人工神经网络构件物理意义一览表5.5.3.4网络的训练定义系统目标精度为0.0005,误差公式是对训练出网络的输出层节点和实际的网络输出结果求平方差的和。
最大训练次数取5万次,如果到达最大训练次数网络还未能达到目标精度,程序退出。已经确定网络的输入层神经元数目为1,隐含层神经元数目为5,输出层神经元数目为1(图5.22)。
将屏山站的3月下旬至3月下旬各站旬平均流量作为输入,各旬对应的碳通量作为输出。模拟值与实测值拟合效果如图5.23、图5.24所示。
图5.23屏山站训练过程图图5.24屏山站旬碳通量模拟值与实测值拟合图从图5.24可以看出,训练后的BP网络能很好地逼近给定的目标函数,模拟的结果比较可靠,训练好的人工神经网络可作为环境背景网络进行其他站的模拟。
5.5.3.5BP人工神经网络模型的应用(1)屏山站环境背景下的各站碳通量模拟将寸滩站、万州站、宜昌站、汉口站各站3月下旬至3月下旬监测流量作为输入,带入上述训练好的屏山站情景下的网络,分别模拟各站在屏山站情景下的碳通量,实测值与模拟值如图5.25所示。
图5.25各站碳通量实测值与模拟值(-03~-03)(a)寸滩站;(b)万州站;(c)宜昌站;(d)汉口站由图5.25可以直观看出,各站碳通量实测值与模拟值变化趋势基本一致,但各旬碳通量模拟值与实测值不同。
说明在不同的环境背景下,碳输运通量不同,环境背景的改变影响了碳输运通量。
将寸滩站、万州站、宜昌站、汉口站各站的流量带入屏山站环境背景下,模拟其碳输运通量,并没有剧烈改变其原有的时间变化规律,环境背景的改变不足以改变碳输运年内的整体的变化趋势。
(2)环境背景变化对各站碳通量影响量值分析1)时间变化分析。
环境背景变化对各站碳通量的影响量(附表2),为各站实测碳通量与BP人工神经网络模拟碳通量的差值;差值为正则环境变化对碳通量产生正影响,差值为负则环境变化对碳通量产生负影响;差值的绝对值越高,环境背景变化对碳通量影响越大,反之亦然;环境背景变化对年碳通量影响量为各旬碳通量影响量之和(3月下旬至3月下旬)。
从图5.26可见,环境背景变化对各站旬碳通量的影响量的绝对值,丰水期高于枯水期;且丰水期波动幅度较大,而枯水期相对比较平缓。
这进一步证实了前文的分析——降雨、径流对长江中上游干流的DOC、DIC浓度及通量影响较大。由于长江流域大部分地区,丰水期的降雨、径流占年降雨、年径流的50%~70%。
假设丰水期环境变化对其旬碳通量影响的绝对值之和为X,枯水期环境变化对其旬碳通量影响的绝对值之和为Y,丰水期的降雨、径流占年降雨、年径流的百分比为b;丰水期环境背景变化对各站碳通量影响与枯水期比值为C,降雨、径流,在各个环境背景因子中,其变化对碳通量的影响量的贡献率为D,则可根据公式(5.8)、(5.9)求C、D图5.26环境背景变化影响下旬碳通量变化曲线图(-02~-03)变环境条件下的水资源保护与可持续利用研究变环境条件下的水资源保护与可持续利用研究将附表2中各站旬碳通量影响量数据,代入公式(5.8),得到各站环境背景变化对各站碳通量影响量的丰枯之比,降雨、径流在各个环境背景因子中,其变化对碳通量影响量的贡献率见表5.16。
降雨、径流在各影响因子中所占比重较大,是长江中上游干流碳通量的重要控制因素。各站环境背景变化对各站旬碳通量的影响量,与旬平均流量相关关系较好,回归关系如图5.27所示。
表5.16环境背景变化对各站碳通量影响的C、D值表2)空间变化分析。
从图5.28、图5.29可以看出,环境背景变化对寸滩站、万州站、宜昌站旬平均碳通量、年碳通量产生负的影响,而对汉口站产生正的影响;且其绝对值沿河流流向有逐渐增加的趋势,但是宜昌绝对值最小(表5.17)。
换言之,三峡、葛洲坝以上各站碳通量的变化,对环境背景的变化产生负响应;三峡、葛洲坝下游的宜昌站最小,之后增加,到汉口为正响应。
根据本书第三章的分析,寸滩站、万州站所对应的环境DOC浓度均高于屏山站所对应的环境DOC浓度;而根据本书第四章的分析,DIC浓度受到岩性的主导作用,屏山站上游的碳酸盐岩分布,使屏山站DIC浓度高于寸滩站、万州站。
DIC浓度对碳通量的影响较DOC浓度的影响度高。
图5.27环境背景变化对旬碳通量影响量与旬平均流量回归关系图(-02~-03)(a)汉口站;(b)宜昌站;(c)万州站;(d)寸滩站图5.28环境背景变化对各站旬平均碳通量影响量空间分布图(-02~-03)图5.29环境背景变化对各站年碳通量影响量空间分布图(-02~-03)表5.17环境背景变化对碳通量影响量(-03~-03)宜昌站离三峡、葛洲坝水利工程仅几十千米,由于三峡、葛洲坝水利工程的拦蓄作用影响,宜昌站所监测水体,多是经过水库里水化学反应之后的水体,其理化性质、流量规律均与水库作用密切相关。
环境背景变化对长江中上游各站碳通量的影响,从对万州站负的影响,经过三峡、葛洲坝到宜昌站,影响的绝对值降到最低,到汉口迅速升高。
另外,汉口站位于长江中下游平原,工农业高度发展,地处武汉腹地,受人类活动影响强烈,大量生产生活废弃物的排放,迅速增加碳输入,旬平均碳通量影响量、年碳通量影响量迅速增加。
环境背景变化对长江中上游干流各站影响过程如图5.30所示。图5.30环境背景变化对长江中上游干流各站碳通量影响过程示意图。