APP下载

BP神经网络优化模型在水体富营养化预测的国内进展

2013-01-15张育张祖群

常州工学院学报 2013年3期
关键词:人工神经网络富营养化权值

张育,张祖群

(1.内蒙古师范大学化学与环境科学学院,呼和浩特,010020;2.首都经济贸易大学工商管理学院,北京100070)

1 问题提出与应用性

水体富营养化问题自出现以来,即引起了学者们极大的关注,在短时间内人类生产生活所使用的大量含氮、含磷等植物所需营养物质进入水体(湖泊、河口、海湾等缓流处更甚),从而引起藻类和浮游生物迅速繁殖,致使水中溶解氧(DO)下降、透明度(SD)下降、水质恶化、鱼贝及其他水生生物大量死亡,破坏了水体自然生态平衡,即为水体的富营养化。[1]水体富营养化已成为当今世界性水污染治理的难题,学术界设法通过构建模型来认识和预测湖泊富营养化。通过几十年的发展,从简单的单一变量估算模型发展到复杂的湖泊生态系统动态模拟模型,富营养化模型无论在理论上还是实践上都有了较大的发展。然而由于影响富营养化程度的因素很多,评价因素与富营养化等级之间的关系复杂,各等级之间的关系模糊,每种方法均有其适用条件和局限性,因此至今尚未形成一种统一的、确定的评价模型。[2]当常规方法解决不了或效果不佳时,运用BP人工神经网络一般可以取得满意的、具有稳定性和精确度的结果。国内众多学者也已将BP人工神经网络运用于湖库水质富营养的评价,并展开了各项研究,[3-5]可见该网络在解决复杂的非线性动力学问题上有诸多优势,在水体评估方面有着巨大的实用价值。近年来,BP人工神经网络已广泛应用于模式识别、优化计算、信号处理、复杂控制等诸多方面,乃至银行客户分类的仿真实验证明[6]、混煤煤质特性的预测[7]、转炉炼钢终点优化控制[8]等国民经济各个方面。本文尝试综述至今在水体富营养化评价中对BP网络模型联合使用的进展,为学者以后使用提供若干参考。

2 BP人工神经网络的计算过程

2.1 BP人工神经网络的发展脉络

BP人工神经网络(Back Propagation(BP)neural network)是1986年由以Rumelhart和Mc-Clelland为首的科学家小组提出的。Jackson[9](1989)论证了径向基神经网络对非线性连续函数的一致逼近性能。Specht[10](1991)开发的GRNN模型执行非线性回归分析的前馈型神经网络,具有强大的非线性映射特性,有效解决了输入与输出之间存在着非线性关系的各种问题。Zhao[11](2007)通过对颤藻生物量的预测值与实测值之间的均方误差值(MSE)来确定最佳网络模型。BP人工神经网络模型具有3层或3层以上的神经元,通过邻层神经元之间的连接实现信息的传递。如果输入节点数为i,输出节点数为j,则神经网络是从i维欧氏空间到j维欧氏空间的映射,形成3层结构的BP神经网络(如 图1所示),这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。这种人工神经网络具有强大的自主学习和自动适应能力,可以通过预先提供的一批相互对应的输入输出数据,分析掌握两者之间潜在的规律,而无需考虑其内在函数关系,最终根据输入输出间非线性的规律,用新的输入数据来推算输出结果。

图1 BP人工神经网络模型图

2.2 BP人工神经网络计算过程

图2为BP人工神经网络计算流程图。

图2 BP人工神经网络计算流程图

2.2.1 数据归一化

BP网络自身要求每一输入数值都在0~1之间,因此要对输入样本归一化(标准化),一般归一化公式为:

2.2.2 正向传递

网络学习训练过程的第一步是输入因子,从输入层经隐含层传向输出层,这个过程称为“模式顺传播”也就是正向传递。传播时,假定第i个神经元和j个神经元链接权值为wji,即第j个神经元的总输出量是前一层各个神经元输入向量xi与其连接权值wji的乘积总和和p层阈值的和,记为

任意神经元输出值由前一层神经元总输入量uj和激活函数f(x)运算确定,一般f(x)为Sigmoid函数,其主要优点在于输出值介于[-1,1]之间,也有学者在隐含层到输出层的传递函数使用purelin 函数[12]线性函数:

Sigmoid函数:

Purelin函数:

2.2.3 学习目标和方向传播

网络训练学习的结果目标是使得网络误差函数E<R,并输出此时的最佳权值和阈值,同时停止学习。R为自定义精度,E定义为:

其中,tj为输出期望值,uj为实际输出值。

若E>R,则返回uj到输入层再次学习,同时调整阈值,直至E<R,学习结束,并输出此时的权值和阈值。调整阈值公式为:

其中,y为学习次数,α为学习率。

2.2.4 评价网络学习效果

方根误差RMSE(Root Mean Square Error)可用来评价BP人工神经网络学习性能的效果:

其中,N是确证集样本对的数量;i是样本对编码;E是样本的相对误差;t是样本对的目标输出值;u是样本对的实测值。

3 联合模型的进展

3.1 混沌遗传算法

混沌遗传算法改进于遗传算法[13](Genetic Algorithm)是一种借鉴生物界的进化繁衍规律而发展出来的随机化搜索方法,其特点是应用混沌变异算子有效维持和控制群体的多样性,使之跳出局部极值区,快速找到全局最优解。马国建[14](2009)将混沌遗传算法应用于BP网络建模中,利用混沌遗传算法对种群的多样性和遍历性以及BP网络的连接权值进行优化,通过混沌遗传算法的强大搜寻能力,克服神经网络的初始权值人为设定的缺陷。其对万宁水库水体富营养化评价的结果表明,以BP神经网络的主要指标的比较检验结果来看,自适应GABP神经网络在预测精度上优于单纯的BP神经网络。崔明等[15](2011)应用与混沌遗传算法的联合研究了渤海湾水体富营养情况表明,该联合模型能较为准确地预测水体富营养化。

3.2 小波分析方法

小波分析(Wavelet-analysis)是在现代调和分析基础上发展起来的信号处理方法,它具有伸缩、平移、放大信号的功能。小波分析在信号的分解重构、信号和噪声的分离、特征提取、数据压缩等工程应用中,显示出极大的优越性。朱玲[16](2007)将小波变换方法分别应用于神经网络的输入层和输出层上,从而有效地消除了天气、雨水和实验人员等不可预见因素对神经网络的影响,保证了主要信息的完整,避免过拟合现象的发生,提高了网络的稳定性。曾光明等[17](2005)用小波神经网络时间序列预测模型对洞庭湖各区域的营养状况进行了评价。该研究结果表明,洞庭湖大部分区域的营养水平较高,应注意对其内的工业废水、生活污水的合理排放。吴巧媚等[18](2010)在预测北京地区水华的研究中,用小波分析对神经网络输出信号进行处理之后,其拟合精度、预测精度都比BP模型高,获得了理想的预测效果。卢志娟等[19](2008)在西湖叶绿素的预测中分别构建了两个模型,比较了小波分析应用于输出信号前后模型的学习性能和预测能力,表明基于小波分析方法构建的神经网络模型,较好地回避了BP网络的不稳定,提高了网络可靠性。

3.3 RPROP算法

弹性BP方法[20](RPROP算法)其本质是通过引入Resilient,有弹性的概念,对权值和阈值直接进行修改,从而避免收敛较慢的情况,可以有效地提高收敛时间。姜雅萍等[21](2008)以RPROP算法优化神经网络,直接以迭代次数调节了网络权值。通过对西湖、东湖、青海湖、巢湖、滇池的富营养化评价,对比迭代次数、全局误差、收敛次数、预测能力等发现其自适应能力强,局部极小点不易达到,收敛速度快。

3.4 加入惯性冲量算法

加入惯性冲量算法就是在每次权值修正时,加入一个惯性的冲量,此惯性冲量与前一次学习的校正量有关,用以滤除在学习过程中的震荡,加快学习速度。梅长青等[22](2008)在应用BP神经网络对巢湖营养化水平的研究中运用惯性冲量法。综合评价了巢湖的富营养化状况,证明用该方法评价是切实可行的,同时预测在2010年巢湖水质接近中富营养状态。姚云等[23](2008)在胶州湾的水体富营养化预测中用增加惯性冲量算法提高了网络的稳定性,避免了陷入局部极小点。

3.5 L-M算法

L-M(Levenberg-Marquardt)算法主要结合牛顿法和梯度下降法的优势,当网络权值数目较少时,收敛极其迅速,比传统的BP及其他改进算法(如共轭梯度法、附加动量法、自适应调整法等)精度高、收敛快、学习时间更短,在实际应用中效果更好。姚云等[23](2008)以L-M 算法优化神经网络的方法,通过对比增加惯量冲量算法,发现两种神经网络评价结果几乎一致,即对于同一时空体系下的同一目标,两种神经网络算法得出的营养化水平一样,同时较普通的BP算法有较大的提升,能更准确地预测水域富营养化情况。

4 BP神经网络的应用与比较

4.1 BP神经网络的应用

王建平等[24](2003)构造了包含隐含层的BP神经网络模型,进行湖泊水质同步监测、分析误差和质量评价。宋松柏等[25](2004)以评价指标生成序列和所属的评价等级值来建立BP网络评价模型,评价区域水资源可持续利用。任黎等[26](2004)研制了包括5个评价指标8种类型的评价标准在内的BP人工神经网络模型,对湖泊富营养化程度自动做出正确评价。彭金涛等[27](2011)引入“水面视觉比例”的概念,建立可预测减水河段河流景观质量的人工神经网络模型,评价了河流景观质量,最后提出相应的生态修复、植物措施及工程措施。杨红等[28](2012)运用 BP人工神经网络的方法结合地形及水动力情况,评价了长江口外海域生态环境质量状况,这种方法评价生态环境具有客观性和通用性。邹劲松等[29](2012)探讨了人工神经网络水质预测模型优劣点,便于更有效、更好地监控水质变化情况。张克鑫等[30](2012)运用 BP人工神经网络方法测定了2009年渭河宝鸡段6个过水断面水环境质量,探求颤藻生物量与总氮、总磷、透明度等6项环境因子之间的关系,BP神经网络模型在水体中藻类水华的短期预测中拟合度很高,效果很好,该研究发现神经网络方法可以构建最佳预测模型。谢恒星[31](2013)利用BP人工神经网络模型综合评价。

通过BP神经网络与其他方法的比较(如表1所示),BP人工神经网络方法以其学习、联想和容错功能,处理矛盾样本的能力高,[32]评价地表水环境质量是可行的,评价简便而实用,预测评价精度高。[33]

表1 BP神经网络与其他方法的比较

续表1

4.2 人工神经网络模型在水体富营养化预测中的优势

第一,水生生态系统是具有多要素的复杂系统,要素间的关系错综复杂,表现出极大的随机性和非线性,而神经网络作为高度非线性关系影射,可避免人为因素在模糊综合评价和灰色聚类等方面的影响,减少主观因素,使其具有更好的自学习、自适应能力[34],可极其方便地为水体富营养化提供预测。第二,BP网络用于水体富营养化评价只需向系统输入已有样本参数信息和目标输出期望,而无需人为干预网络学习过程,计算简便。第三,权值的获得是网络对水质样本学习的结果,摈弃了人为确定权值的主观影响,使评价结果更具客观性。第四,一旦对标准训练完毕,就可用训练好的网络权值和阈值对不属于训练集的样本进行评价。因此,该模型具有强大的泛化性。

4.3 人工神经网络模型缺陷及其改进

第一,由于BP网络的学习过程由正向计算和误差反向传递修改两个过程组成(图2),在误差曲面较平坦的区域,收敛速度较慢,耗时较长,而当误差曲面陡峭时,又会在峡谷区域引起振荡,通常需要上千次或更多的学习才能达到拟合。收敛速度慢,为了克服此缺陷,学者们也进行了很多改进(如方法联合使用),若干学者对于BP人工神经网络的改进方法,其主要在于以动态阈值置换静态阈值,从而有效地缩短了收敛时间(表2)。

表2 若干学者在运用BP人工网络法时的改进

续表2

第二,基于数据驱动型方法的BP人工神经网络若训练样本过少,则不能提取到足够多的数据信息,反而可能得到错误的信息[35],且网络波动较大。然而在实际建模过程中,往往无法采集足够多的实验数据,这给学者们造成了一些困扰。实际应用中通常采用插值法进行样本数量增值是一种不错的方法,并获得了较好的应用前景(如表3所示)。

表3 使用插值法进行样本增值统计列表

第三,隐层及节点数越多,BP神经网络的训练能力越强,而其泛化能力越差。因此,在选取隐层及节点数时,必须综合考虑训练能力和泛化能力。实际应用过程中一般使用实验法进行检验,也有学者在隐含层因子数目方面使用了经验公式,或改进实验步骤以求自动调节隐含层因子数,以使其取得较好的校正效果(表2)。

第四,水生生态系统是具有多要素的复杂系统,要素间的关系错综复杂,表现出极大的随机性和非线性,预测评价水体营养化程度属于一个典型的黑箱问题,输入参数会因地域的不同、视角的不同而改变(表4)。

表4 若干学者输入层指标和隐含层因子数确定方法

续表4

5 结论

第一,针对BP神经网络在学习过程中收敛慢,且易陷入,学者可适当改进阈值的更新过程,以动态惯量的方式进行。隐函数因子数因BP网络本身的局限性,不易给出统一的计量公式,学者可在实验工作中应用实验法得出,亦可根据若干参考公式进行检验。实际运用BP神经网络进行学习训练时,若实验样本并不足以得到满意的网络,可使用插值法进行学习样本增值,从而达到学习要求。

第二,国内学术界在BP神经网络上的联合模型已做出了许多有效的成果,联合各种优化算法的BP人工神经网络模型可更为准确地模拟水体富营养化的程度,反映一个更加准确、全面的水体富营养化发展动态过程。同时我国正处于工业化的飞速发展时期,各地湖泊江河水体富营养化案例层出不穷,极需要更多的高精度模拟与预测,以促进环境保护与经济发展。无论是在拟合度、准确度、收敛时间、网络学习效率,还是实际运用中,联合模型的效果都较普通的BP网络有较大的提升。

第三,在水体富营养化评价方面,BP人工神经网络模型的联合模型还处于起步阶段,更多的如共轭梯度算法[36]、模拟退火算法、VLBP 算法[37]等联合BP网络模型在多个领域已有应用,可从算法和网络结构设计方面进行综合改进[38]。可见BP人工神经网络模型中多种算法的联合使用,互相矫正,弥补单一算法的缺憾,使得水体富营养化预测与环境评价具有更加实用的学术前景。富营养化评价过程中评价参数并不唯一,根据不同地域,不同视角,参数的选取具有很大的自主性。

第四,值得指出的是,神经网络技术具有大规模并行处理、分布式存储、自适应性、容错性等显著优点,虽然BP网络构建过程中联合模型的应用已较好地回避了网络在学习过程中陷入极小点,收敛较慢,局部震荡等缺憾,如,吕琼帅[39](2011)应用混合BP神经网络的分类模型于复杂样本的分类问题中,通过分析样本中属性的相关性进行网络构建,使用主成分分析法(PCA)对样本进行降维,用蜂群算法(ABC)对网络的权值进行优化,已经较好地克服了这些难题。但是BP网络学习过程中隐性节点的不确定性,网络输入信号差异等缺憾是后期需要重点克服的学术难题,在一定程度上这些缺憾限制了BP人工神经网络在水体富营养化预测与评价中的应用。

[1]戴桂树.环境化学[M].北京:高等教育出版社,1997.

[2]金相灿.中国湖泊富营养化[M].北京:中国环境科学出版社,1990:20-24.

[3]楼文高.湖库富营养化人工神经网络评价模型[J].水产学报,2001,25(5):474-477.

[4]刘恒.BP神经网络在千岛湖水体富营养化变化预测中的应用[D].杭州:浙江大学,2007.

[5]邓大鹏,刘刚,李学德,等.基于神经网络简单集成的湖库富营养化综合评价模型[J].生态学报,2007,27(2):725-731.

[6]黄光明.BP神经网络的模型优化研究及应用[J].河池学院学报,2008(5):66-70.

[7]李颖,周俊虎.BP神经网络在优化配煤预测模型中的研究[J].煤炭转化,2002(2):79-85.

[8]孔祥瑞.转炉炼钢终点优化控制模型的研究[D].杭州:杭州电子科技大学,2010.

[9](转引自)张德丰.MATLAB神经网络应用设计[M].北京:机械工业出版社,2008.

[10]Specht D F.A General Regression Neural Network[J].IEEE Transactions on Neural Networks,1991,2(6):568-576.

[11]Zhao.Water Quality Forecast Through Application of BP Neural Network at Yuqiao Reservoir[J].Zhejiang Univ Sci A,2007,8(9):1482-1487.

[12]杨松芹,张慧珍,巴月,等.水体富营养化状况的人工神经网络预测模型的建立[J].卫生研究,2008(5):543-545.

[13]袁晓辉,袁艳斌,王乘,等.一种新型的自适应混沌遗传算法[J].电子学报,2006(4):708-712.

[14]马国建.混沌优化神经网络在渤海湾富营养化模型中的应用研究[D].天津:天津大学,2009.

[15]崔明,马国建.神经网络在渤海湾富营养化模型中的研究[J].山西建筑,2011(15):191-192.

[16]朱玲.基于小波分析的BP神经网络在西湖富营养化趋势预测中的应用[D].杭州:浙江大学,2007.

[17]曾光明,卢宏玮,金相灿,等.洞庭湖水体水质状况及运用小波神经网络对营养状态的评价[J].湖南大学学报:自然科学版,2005(1):91-94.

[18]吴巧媚,刘载文,王小艺,等.小波神经网络在北京河湖水华预测中的应用[J].计算机工程与应用,2010(12):233-235.

[19]卢志娟,朱玲,裴洪平,等.基于小波分析与BP神经网络的西湖叶绿素a浓度预测模型[J].生态学报,2008(10):4965-4973.

[20]余妹兰,匡芳君.BP神经网络学习算法的改进及应用[J].沈阳农业大学学报,2011(3):382-384.

[21]姜雅萍,马宗仁.基于 RPROP算法的湖泊富营养化评价[J].中国资源综合利用,2008(11):17-19.

[22]梅长青,王心源,李文达.BP网络模型在巢湖富营养化评价中的应用[J].能源与环境,2008(1):9-11.

[23]姚云,郑世清,沈志良.利用人工神经网络模型评价胶州湾水域富营养化水平[J].海洋环境科学,2008(1):10-12.

[24]王建平,程声通,贾海峰,等.用TM 影像进行湖泊水色反演研究的人工神经网络模型[J].环境科学,2003,24(2):73-76.

[25]宋松柏,蔡焕杰.区域水资源可持续利用评价的人工神经网络模型[J].农业工程学报,2004,20(6):89-92.

[26]任黎,董增川,李少华.人工神经网络模型在太湖富营养化评价中的应用[J].河海大学学报:自然科学版,2004,32(2):147-150.

[27]彭金涛,王莉,杨玖贤,等.人工神经网络模型在河流减水河段景观质量评价中的应用[J].水电站设计,2011(4):77-82.

[28]杨红,戴桂香,赵瀛,等.基于BP人工神经网络的长江口外海生态综合评价及其成因分析[J].海洋环境科学,2012(6):893-896.

[29]邹劲松,徐伟刚.基于MATLAB的人工神经网络水质预测模型探析[J].网友世界,2012(10):40-41.

[30]张克鑫,陆开宏,朱津永,等.基于BP神经网络的藻类水华预测模型研究[J].中国环境监测,2012,28(3):53-57.

[31]谢恒星.渭河宝鸡段水环境质量的BP人工神经网络分析[J].河南科学,2013,31(4):509-512.

[32]纪桂霞,李培红.水环境质量评价的人工神经网络模型及应用[J].华北水利水电学院学报,1999,20(1):60-62.

[33]郭庆春,赵雪茹.基于人工神经网络的黄河水质评价[J].计算机与数字工程,2013(5):683-685.

[34]王冬云,黄焱歆.海水富营养化评价的人工神经网络方法[J].河北建筑科技学院学报:自然科学版,2001(4):27-29.

[35]张福勇.汽车驾驶室显控系统的人机界面评价研究[D].哈尔滨:哈尔滨工程大学,2007.

[36]史春朝,叶建美.共轭梯度法在BP算法中的应用及其MATLAB 仿真[J].科技信息:科学教研,2008(23):563,578.

[37]侯彦东,方惠敏,杨国胜,等.一种改进的可变学习速率的BP神经网络算法[J].河南大学学报:自然科学版,2008(3):309-312.

[38]贺昌政,李晓峰,俞海.BP人工神经网络模型的新改进及其应用[J].数学的实践与认识,2002,32(4):554-561.

[39]吕琼帅.BP神经网络的优化与研究[D].郑州:郑州大学,2011.

猜你喜欢

人工神经网络富营养化权值
基于临界点的杭州湾水体富营养化多年变化研究
一种融合时间权值和用户行为序列的电影推荐模型
CONTENTS
利用人工神经网络快速计算木星系磁坐标
洪口水库近年富营养化程度时间分布的研究
人工神经网络实现简单字母的识别
滑动电接触摩擦力的BP与RBF人工神经网络建模
基于权值动量的RBM加速学习算法研究
洞庭湖典型垸内沟渠水体富营养化评价
基于多维度特征权值动态更新的用户推荐模型研究