基于MCMC的BP网络在水质评价中的应用
2012-08-07穆秀云李林兵
穆秀云 李林兵
一、水质评价方法
水质评价方法总的来说可分为两大类:单因子评价法和综合评价法。单因子评价法计算简单,可直观反映哪些指标超标,但由于是对单个水质指标独立进行评价,因此得到的评价结果不能全面反映水质量的整体状况,可能会导致较大的偏差。综合评价法可同时评价多种指标对水质的影响,从整体上给水质一个客观全面的评价。当前研究较多的综合评价法包括综合指数法、灰色聚类法、灰色模式识别法、模糊综合评判法、模糊模式识别法和人工神经网络模型等。综合指数法通过多个指标并赋予各指标不同权重的综合来判断水质标准,它综合考虑了各指标对水质的影响,却忽略了水质分级界线的模糊性,评价结果不能很好地反映出水质污染的真实状况;灰色和模糊系统两大类方法也均存在一些缺陷,如都需要设计若干不同的效用函数(灰色系统的白化函数、模糊数学的隶属函数等)以及人为地给定各评价指标的权重(或权函数)等。这些效用函数和指标权重的给定往往因人而异,造成评价模式难以通用,而且增加了应用的困难和人为主观因素对结论的影响。事实上,在评价指标确定后,水质评价的过程是把这些指标的监测值与标准值进行比较和分析,在此基础上判断其与哪一级分类标准更接近。因此,水质综合评价属于模式识别问题。当前,人工神经网络已在模式识别中广泛应用,可利用它对环境水质进行评价,可将水质评价中的评价标准作为样本输入,评价级别作为网络输出,通过网络归纳出评价标准与评价级别间复杂的内在非线性关系,从而对水质进行综合评价。
二、MCMC-BP模型
BP网络对水质进行评价时,其输出层的神经元个数取为水质分类的级数,其输入为评价指标的不同指标值。在传统的BP网络训练中,是各水质级别的指标值范围内抽取足够的训练样本,但这种做法无法考虑处于两个相邻水质级别分界处的样本,使训练后的网络对处于两个相邻水质级别分界处的水质评价误差很大。由于各级水质的指标值均处于一个给定取值区间(根据水质评价标准选取)内,各指标的取值是随机的,可视为一个随机过程,故本文引入马尔可夫链蒙特卡罗方法(MCMC)来模拟各指标的取值。这样可生成大量的训练样本,从而克服了传统BP方法训练样本少的弊端;由于将各指标取值视为一个随机过程,故各指标值均可以一定概率出现,克服了传统方法无法考虑不同水质级别分界线模糊性的缺点。
本文将改进后的BP算法称为基于MCMC的BP算法,即MCMC-BP。为检验本文提出的MCMC-BP模型的实用性,拟在以下实例中进行检验。
三、实例研究
某市1998年在7个样本点对污染指标进行监测,表1列出了其中8项指标的实测值。为了与其他评价方法比较,利用MCMC算法生成训练样本时,假定各指标值符合正态分布,其方差为取值范围的5%。MCMC算法随机模拟2200组样本,其中200组样本做校核样本。为削除不同量纲的影响,需对模拟样本和实测数据进行归一化处理,其处理过程如下:
图1 三层BP神经网络图
表1 地表水水质监测实测值 (mg/L)
BP网络采用三层,即输入层-隐层-输出层,隐层激活函数采用双曲正切函数(式(2)),输出层采用线性函数。输入层节点数为监测水质指标总数,输出层节点数为水质级别总数,隐层节点数根据经验优选确定,本文取为13,故网络拓扑结构为8-13-5,BP训练1456次收敛,而传统BP在相同容量的训练样本条件下,收敛时训练次数为1162次,改进的BP收敛速度提高了约20%。
式(2)中:f为网络节点的输出;n为网络节点的输入;b为网络阈值。
图1中,n为输入节点的个数;m为隐层节点的个数;l为输出节点的个数。
将归一化以后的实测数据输入到已训练好的RAGA-BP模型中,对7个样本点的水质进行评价,输出结果见表2。从表1与《地表水环境质量标准》对比中可以看出,测点3的指标值有三项指标达到Ⅱ级,两项达到Ⅴ级,Ⅰ级、Ⅲ级、Ⅳ各一项,因此本文模型判定为Ⅱ是比较合理的;测点7指标有4项达到Ⅱ级,故判其为Ⅱ级更准确,且与《水环境质量评价灰色模式识别模型及应用》(史晓新,夏军—中国环境科学)中的DT法结果相同,证实了本文方法的准确性。
表2 水质评价结果
四、结论
1.本文建议的基于MCMC的BP算法将各评价指标值视为随机,利用MCMC方法获取足够的训练样本,克服了训练样本不足的问题,并考虑了水质级别界线的模糊性,增强了BP网络的泛化能力。
2.MCMC算法在很大程度上提高了传统BP算法的收敛速度。从两个应用实例的BP网络输出结果来看,预报的精度有所提高,收敛速度平均提高约20%。
3.该方法可以用于地下水水质评价或地震灾害等的评价问题中,具有较好的普适性