您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 人事档案/员工关系 > 自适应变步长BP神经网络在水质评价中的应用
自适应变步长BP神经网络在水质评价中的应用关键词:水质网络评价水质评价神经网络摘要:为克服传统的BP网络的不足,采用自适应变步长算法(ABPM)来训练前馈人工神经网络。根据黄河流域的大汶河水系的水质监测的数据,建立了一个对地面水质进行判别的多层前馈网络数学模型。以地面水质七项污染指标为训练样本,对网络进行训练,并将训练好的网络用于水质进行评价,将计算结果与BP网络评价结果、单因子评价结果进行了比较分析。结果表明,ABPM神经网络方法收敛速度较快,预测精度很高,为水质评价提供了一种新方法。关键词:人工神经网络;BP网络;自适应变步长算法(ABPM);水质评价;作者简介:黄胜伟(1965-),男,安徽安庆人,副教授,博士,从事人工神经网络建模和可视化研究。由于影响水质的因素较多,目前用物理方法进行水质评价存在一些困难。70年代我国使用的是综合污染指标法的“硬性分级划分”,目前使用的是灰色和模糊系统,如灰色集类法、模糊综合评判法[1]等。30多年来在评价原理的科学性和实际评价结论的合理性等方面都有了长足的发展。然而,灰色和模糊系统两大类方法都仍然存在一些缺陷,如都需要设计若干不同的效用函数(灰色系统的白化函数、模糊数学的隶属函数等)以及人为地给定各评价指标的权重(或权函数)等。这些效用函数和指标权重的给定往往因人而异,造成评价模式难以通用,而且增加了应用的困难和人为臆断因素对结论的影响。事实上,在评价指标确定后,水质评价的过程是把这些指标的监测值与标准值进行比较和分析,在此基础上判断其与哪一级分类标准更接近。因此,水质综合评价属于模式识别问题。当前,迅速发展的人工神经网络已在模式识别中广泛应用[2]。人工神经网络是近几年来发展起来的一门新兴学科,它是一种大规模并行分布处理的非线性系统,可以处理那些难以用数学模型描述的系统,可以逼近任何非线性的特性,具有很强的自适应、自学习、联想记忆、高度容错和并行处理能力,使得神经网络理论的应用已经渗透到了各个领域。近年来,人工神经网络在水质分析和评价中的应用越来越广泛,并取得良好效果[2]。在这些应用中,纵观应用于模式识别的神经网络,BP网络是最有效、最活跃的方法之一。笔者根据黄河流域大汶河水系水质监测的条件,建立了一个对地表水质进行判别的多层前馈网络数学模型。以地表水质7项污染指标为训练样本,利用自适应变步长BP神经网络(即ABPM网)进行训练,并将训练好的网络来对水质进行评价。1BP算法及其改进1.1BP网络特点多层前向网络的权值学习常采用误差逆传播学习算法(ErrorBackPropagation简称BP)。为了简单起见,将采用这一学习算法进行训练的多层前向网络简称为BP网络。在具体应用该网络时分为网络训练及网络工作2个阶段。在网络训练阶段,根据给定的训练模式,按照“模式的顺传播”→“误差逆传播”→“记忆训练”→“学习收敛”4个过程进行网络权值(包括阈值)的训练[2]。在网络的工作阶段,根据训练好的网络权值及给定的输入向量,按照“模式顺传播”方式求得与输入向量相对应的输出向量的解答。BP算法是一种比较成熟的有指导的训练方法,是一个单向传播的多层前馈网络。它包含输入层、隐含层、输出层。同层节点之间不连接。输入信号从输入层节点,依次传过各隐含层节点,然后传到输出层节点,每一层节点的输出只影响下一层节点的输入。网络训练目标是使误差函数E最小,E的定义如下:式中:E为网络输出误差,P代表第P个样本,j为输出单元数,tjp为单元期望输出,Ojp为单元的实际输出,(tjp-Ojp)2输出层第j个神经元在模式P作用下的实际输出和期望输出之差的平方。1.2BP算法存在的问题BP算法的基本形式为[3]:W(k+1)=W(k)+αD(k)(2)式中:W(k)为时刻的权值;α为学习率;(k)为k时刻的负梯度。用三层BP网络可以任意逼近任何连续函数,但是它主要存在如下缺点:(1)从数学上看,它可归结为一非线性的梯度优化问题,因此不可避免地存在局部极小问题;(2)学习算法的收敛速度慢,通常需要上千次或更多;(3)络结构为前向结构,没有反馈连接,因此它是一非线性映射系统。1.3BP算法的改进(ABPM算法)由于BP算法存在以上的缺陷,因而用BP网络训练网络时常常会出现收敛慢、振荡和陷入局部极小等问题。因此,采用引入动量项的自适应变步长来调整学习率的改进算法(即ABPM算法)。自适应变步长算法和常规BP算法的主要区别在于学习步长λ随误差曲面的变化而进行调整。由于BP网络的逼近误差曲面的梯度变化是不均匀的,即(k)在不同的位置大小不同。如果采用固定的步长λ,当λ较小时,在误差曲面较平坦的区域,收敛较慢;当步长λ较大时,又会在峡谷区域引起振荡。自适应变步长算法正是针对步长的缺陷提出来的。这种算法是以进化论中的进退法为理论基础的,即连续两次观测训练的误差值,如果误差下降则增大学习率,误差的反弹在一定的范围内,则保持步长,误差的反弹超过一定限度则减小学习率。学习率的调整可用如下公式进行描述。W(k+1)=W(k)+α(k)[1-ηD(k)+ηD(k-1)](3)其中:α(k)=2λα(k-1);λ=sign[D(k)D(k-1)]。式中:(k)为k时刻的学习率,它是(k-1)时刻学习率的函数。η是动量因子,用来抑制振荡。确定好网络结构和训练算法后,就可以利用输入输山样本对网络进行训练,即按照式(3)对网络权值进行调整,当达到期望的输出时训练即告完成,否则继续调整权值。2水质评价的ABPM模型对于水质综合评价的ABPM神经网络来说,其训练样本即为水质分级标准,网络训练完成后,将网络对分级标准学习的知识和有关信息保存下来,然后输入待评价样本资料得到有关评价结论的信息,从而根据一定的规则作出有关评价结论的判断。2.1输入层神经元数和输入模式向量设有需分级评价的水质样本n个,对每个样本,本文取如下7项污染指标监测值:溶解氧(DO)、五日生化需氧量(BOD5)、挥发酚、氰化物(CN-)、汞(Hg)、砷(As)、六价镉(Cr+6)等,国家行业规范规定,根据相应于这7项污染指标下的水质标准浓度将水质划分为5个等级。由于取7项污染指标数,即取每一份水样有7项污染指标监测值,因而输入层神经元的节点数为7。若某一流域需监测断面m个(现每一断面取一份水样),则网络的输入模式向量为:Xk=(x1,x2,…,x7),k=1,2,…,m(4)式中:m为学习样本个数。2.2隐层和隐层神经元数的确定水质评价是一个非线性关系较为复杂的问题,考虑到既满足精度要求,又要尽可能减少学习费用,一个隐含层足够了。下面主要确定隐单元个数。采用“试错法”确定隐层单元数。首先给定较小初始隐单元数,构成一个结构较小的BP网络进行训练。如果训练次数很多或者在规定的训练次数内没有满足收敛条件,停止训练,逐渐增加隐单元数形成新的网络重新训练。作为算例,对文献[4]的数据,分别采用BP、ABPM网络训练方法,经过50次试验获得训练最大次数和最小次数与隐单元的关系如表1。其中初始权值和阈值是用Matlab中rand()函数产生均匀分布随机数矩阵,控制误差(一般根据实际情况而定)暂定为0.0001表1网络的训练次数与隐单元数的关系(表中INF代表无穷多次)隐单元数468101215最小最大最小最大最小最大最小最大最小最大最小最大次数次数次数次数次数次数次数次数次数次数次数次数BP网络8700INF6860INF36002650026802100022001620015808180ABPM网络103INF138558993398285312021821141402368由表1可以看出,当隐含单元数小于8时,网络易陷入局部极小,难以达到所要求的精度(表1中表示为TNF);当隐含单元数为8~12时,训练次数明显减少,再增加隐含单元数对训练次数影响不大。由此可以看出,选取隐单元数的最佳值为8~12。2.3水质评价的神经网络模型针对水质综合评价是个非线性关系较为复杂的问题,笔者建立了一个含有7个输入神经元节点、10个隐含神经元节点和5个输出神经元节点的人工神经网络,如图1所示。2.4学习样本和期望输出对于水质综合评价的RBF神经网络来说,其训练样本即为地面水质分级标准。表1为国家地面水环境质量标准(GHZB1—1999),因而也为RBF网络的训练样本。对每一类水质,期望输出值见表1所示。表1地表水环境质量标准浓度值和网络希望输出值污染指标溶解氧生化需氧量挥发酚氰化物汞(Hg)砷(As)六价铬希望输出值Ⅰ类9.02.00.0010.0050.000050.050.0110000Ⅱ类6.03.00.0020.050.000050.050.0501000Ⅲ类5.04.00.0050.20.00010.050.0500100Ⅳ类3.06.00.010.20.0010.10.0500010Ⅴ类2.010.00.10.20.0010.10.1000012.5样本的规范化处理通过实践,选用下述规范化方法,效果更好。即:(5)(6)式(5)和(6)中:,分别为原始资料的第P1个实际样本的第i个输入值和第j个期望输出值:,分别为规范化后第P1个样本的第i个输入值和第j个期望输出值;xi,max,xi,min分别为样本中第i个输入的最大和最小值;tj,max,tj,min分别为样本中第j个期望输出的最大和最小值。由式(5)和(6)规范化的教师值域仍在[0,1]之间但不包括0和1。3应用实例对黄河流域的大汶河水系进行评价。黄河流域的大汶河水系设立了东周、雪野等9个水质监测站,对1991~1993年间每年分别在丰、平、枯水期取样监测,各断面指标实测浓度的平均值列于表2。表21991~1993年黄河流域的大汶河水系9个监测站水质浓度平均值和水质3种评价方法结果断面溶解氧生化需氧挥发酚氰化物汞(Hg)砷(As)六价铭ABPM网络训练结果ABPMBP网络单因子网络评评价评价/(mg/l)量/(mg/l)/(mg/l)/(mg/l)/(mg/l)/(mg/l)(mg/l)价结果结果结果东周13.11.00.00.00.00.0010.0021.088-0.0990.0040.000-0.004Ⅰ类Ⅰ类Ⅰ类雪野12.71.50.00.00.00.00.0011.087-0.0970.0030.000-0.005Ⅰ类Ⅰ类Ⅰ类莱芜8.029.40.0080.00.00.010.00080.002-0.0020.001-0.0020.998Ⅴ类Ⅴ类Ⅴ类羊流12.41.50.00.00.00.00.01.087-0.0970.0040.000-0.005Ⅰ类Ⅰ类Ⅰ类临汶8.49.00.0160.00.00090.0120.00.002-0.0360.2260.8050.077Ⅳ类Ⅳ类Ⅳ类北望6.037.50.0590.0180.00090.0160.001-0.0020.0020.0010.0020.998Ⅴ类Ⅴ类Ⅴ类戴村9.27.80.0630.0120.000440.0760.00.018-0.1311.1020.0070.001Ⅲ类Ⅲ类Ⅲ类白楼8.011.40.0390.0480.000380.0920.0030.0040.0000.0011.0530.048Ⅳ类Ⅳ类Ⅴ类石汶12.50.80.00.00.00.0010.01.088-0.0990.0040.000-0.005Ⅰ类Ⅰ类Ⅰ类图2ABPM网络训练次数与网络输出误差关系3.1ABPM网络训练结果取动量因子η=0.3,初始学习率α(1)=0.01,随机赋予ABPM网络的初始权值和阈值,控制误差取为0.0001。利用上述ABPM神经网络和标准BP神经网络进行网络训练,并将其评价结果与单因子评价结果比较,如表2所示。图2为地表水水质评价的ABPM网络训练次数与网络输出误差E变化规律;图3为ABPM网络训练次数与学习率(k)变化规律。图4为地表水水质评价的标准BP神经网络训练次数与网络输出误差E变化规律。图3ABPM网络训练次数与学习率α(k)变化规律图4标准BP网络
本文标题:自适应变步长BP神经网络在水质评价中的应用
链接地址:https://www.777doc.com/doc-2119425 .html