基于CEEMD-BP模型的汾河上游月径流预测
2019-08-24桑宇婷赵雪花祝雪萍席东洁
桑宇婷,赵雪花,祝雪萍,席东洁
(太原理工大学水利科学与工程学院,山西太原030024)
随着经济社会的发展,温室气体大量排放,使得全球平均气温升高,降水分布不均匀度加剧,极端天气愈发频繁,洪水、干旱等自然灾害增多[1-2]。准确、合理地对径流进行分析预测,对水资源的合理开发利用及生态环境保护具有重要意义。受气候、地理环境、社会发展及人类活动的影响,径流的变化规律错综复杂,具体表现为突变性、非线性、随机性等特性[3]。为克服径流序列非平稳性的影响,Huang等于1998年提出了经验模态分解(Empirical Mode Decomposition,简称EMD)法,该方法是一种自适应的局部化分析方法,可将非平稳的径流序列分解为有限个具有一定周期及平稳性的固有模态函数(IMF),但EMD会出现模态混叠现象[4-5],影响后续径流预测的精度。为解决EMD的模态混叠问题,Huang等于2009年提出了集合经验模态分解(Ensemble Empirical Mode Decomposition,简称EEMD)法,将具有均匀分布特征的白噪声加入到待分解的信号中[6],但其分解效率较低。因此,Yeh等于2010年提出了互补集合经验模态分解(Complete Ensemble Empirical Mode Decomposition,简称 CEEMD)法[7],主要是通过向待分解信号中加入两个互补的白噪声信号并进行分解,此方法不仅能得到与EEMD法相同的分解效果,而且减小了由白噪声引起的重构误差,提高了分解效率,使径流序列得到了有效的平稳化处理。
在目前已有的多种径流预测方法中,人工神经网络是一种模拟动物神经网络进行信息处理的算法数学模型,具有自适应、自学习及容错性高等特点,可有效克服径流序列非线性的影响。BP神经网络是应用较为普遍的人工神经网络之一[8],其结构简单,具有较强的泛化能力和良好的非线性映射能力[9],能够在复杂的径流序列中找出一定的变化规律。
随着预测模型的不断改进和预测机制认识的不断深化,为了降低预测误差,人们更趋向于利用多种模型进行组合预测。本文通过构建CEEMD-BP模型,对汾河上游月径流进行了预测,并与单一BP模型及EMDBP模型的预测结果进行对比,以验证该模型预测非平稳、非线性径流序列的可行性与有效性。
1 方法理论简介
1.1 CEEMD法的基本理论
CEEMD法通过对月径流序列进行除噪分解,得到多个具有一定物理意义的IMF分量和趋势项(Res),进而确定月径流序列的周期性及变化趋势。CEEMD法可依据各层分解的频谱提取有效信号,消除高频随机噪声,使径流序列平稳化。其主要分解步骤如下[10-11]。
(1)设 x(t)为原序列,则 IMF1的计算公式为
(2)求一阶残差 r1(t),计算公式为
(3)计算 IMF2,公式为
(4)求 k 阶残差 rk(t),计算公式为
(5)计算原序列的 IMFk+1(t),公式为
(6)重复步骤(4)~(5),直至残差不能再分解,求得最终残差 R(t):
则原序列x(t)的表达式为
式中:I为集总次数,即每次求取分量时进行I次分解;ωi(t)为单位方差的零均值高斯白噪声;εk为控制所添加噪声和原始信号信噪比的噪声系数;Ek(·)为定义好的算子;K为IMF(t)的总数。
1.2 BP 神经网络
1986年,Rumelhart D E提出了BP神经网络,它是一种按误差逆传播算法训练的多层前馈网络,普遍应用于径流预测。BP神经网络包括输入层、隐含层和输出层,网络结构见图1,通过各层之间的信息正向传播和误差反向传播来确定权值与阈值。具体训练过程见文献[12-15]。
1.3 CEEMD-BP 模型
CEEMD-BP模型进行径流预测的基本原理:月径流序列通过CEEMD法分解,提取月径流序列中具有一定物理意义的信号,并降低噪音干扰的影响,得到不同频率的子序列,再通过BP神经网络对各子序列进行预测,最后对各子序列预测结果进行重构,得到月径流预测值。模型预测过程见图2。
2 实例分析
2.1 汾河上游月径流资料分析
汾河位于黄河中游,全长716 km,东西宽188 km,南北长412 km,从宁武县管涔山雷鸣寺到太原市兰村为汾河上游,全长216.9 km,流域面积为7 705 km2,属温带大陆性气候区。汾河上游水文站中,上静游站位于汾河支流岚河上,此站上游集水面积为1 140 km2;汾河水库站位于岚河与汾河干流交汇处,集水面积约32 km2,水库总库容为7亿m3;寨上站坐落于古交市寨上村,位于汾河干流,集水面积约6 800 km2,与汾河水库站之间的流域面积约1 500 km2;兰村水文站位于太原市西北22.5 km的上兰村,地处汾河中上游,集水面积约7 700 km2。4个水文站1958—2000年月径流数据资料来自山西省水文局,已被运用于多个科研项目及工程,因此可以保证可靠性,其变差系数、偏度、峰度见表1。
表1 各站月径流特征值
由表1可知:①上静游站位于汾河支流,其月径流量均值在4个水文站中最小;②汾河上游各站的变差系数为1.35~1.61,其月径流量变化剧烈,径流年内分配不均,上静游站变差系数最大,这主要与汾河水库对下游的调节作用有关;③4个水文站的偏度均大于0,分布为右偏态;④4个水文站的峰度均大于40,远远大于正态分布及均匀分布的峰度,说明月径流量数值与均值相差较大,分布有更多的极端值,具有尖峰厚尾的特征。综上所述,汾河上游4个水文站的月径流序列是具有较多极端值、存在右偏现象且变化剧烈的非正态序列,即为非平稳、非线性序列。
2.2 月径流资料的CEEMD法分解
利用CEEMD法对4个水文站的月径流资料进行分解,由分解结果可知4个水文站从IMF1到趋势项的子序列均呈现频率降低、波长变长、振幅变小的特征。各水文站的分解结果中,由于IMF1~IMF3中包含了原径流序列中的主要成分,因此其仍表现出较高的频率、较短的波长及较大的振幅;上静游站、汾河水库站、寨上站的IMF4~IMF7及兰村站的IMF4~IMF6已明显表现出一定的周期性及比较规律的波动性,其非线性、非平稳性均有所下降;各站的Res已基本表现出径流序列的长期变化趋势,即上静游站及汾河水库站为下降趋势、寨上站为先下降后上升趋势、兰村站总体为先下降后小幅上升再下降趋势。由此可见,经过CEEMD法分解可得到比原径流序列更加平稳的子序列。
为进一步说明CEEMD法分解效果,将CEEMD法分解结果与EMD分解结果进行了对比,可知EMD法分解结果的变化趋势与CEEMD法的相似。但是,上静游站、汾河水库站、寨上站、兰村站月径流CEEMD法分解得到的IMF分别为8、8、8、7个,而EMD法得到的IMF分别为8、9、9、8个。除上静游站外,其他3个水文站月径流CEEMD法分解出的IMF比EMD法的少,且EMD法分解的各分量频率曲线中频率变化比CEEMD法的多,即CEEMD法分解减少了EMD法各分量中的某些频率信号,可以推测CEEMD法能解决EMD法的模态混叠问题。通过CEEMD法分解的各分量比前一个分量频率减小程度比EMD法的更加明显,且CEEMD法分解的趋势项也更加趋于线性平稳,由此验证了CEEMD法在保留了EMD法处理非平稳问题的优势的基础上,能够有效解决EMD法的模态混叠问题,这为后续BP神经网络预测精度的提高奠定了基础。
2.3 预测结果分析
将上静游站、汾河水库站、寨上站及兰村站1958—2000年516个月的径流资料分为两部分,1958年1月—1999年6月498个月的径流数据用于模型建模,1999年7月—2000年12月18个月的径流数据用于模型验证。
本文使用的BP神经网络输入层节点数为31,输出层节点数为18,根据前文分解出的IMF的不同频率选择合适的隐含层节点数,高频项、低频项、趋势项对应的隐含层节点数分别为18、15、17。确定好BP神经网络参数后,各IMF同样被分为两部分,前498个数据进行模拟,对后18个数据进行预测,再对各IMF的后18个预测数据进行重构,与原径流数据进行对比,以验证模型的预测效果,结果见图3。
由图3可知:①使用单一BP模型预测时,上静游站2000年2—7月的预测值明显大于实测值,其中2月偏差达到50%,BP模型预测结果是3个模型中偏差最大的;汾河水库站除了2000年8月外,其余月份预测值均与实测值有较大偏差;寨上站出现两处偏差大于50%的值,分别为1999年7月、2000年4月;兰村站在2000年6月同样出现偏差大于50%的值,但其预测值与实测值的变化趋势基本相同,因此虽然BP模型预测精度较另外两种模型低,但其也适用于非线性径流序列的预测。②EMD-BP模型的预测效果整体较单一BP模型更好,均更加接近实测值,变化趋势也基本相同,说明径流经过平稳化处理后再进行预测,精度会有所提高,但汾河水库站2000年9—12月通过EMD-BP模型预测出的结果是3种模型中偏差最大的,由此推测EMD法存在一定的模态混叠问题,对径流预测有一定影响;改进EMD法分解过程的CEEMD-BP模型模拟各时段径流的拟合程度均比EMD-BP模型更高。③CEEMD-BP模型的预测结果与实测径流曲线拟合度最好,变化趋势均与原序列相同,且无极端值出现。
综上,CEEMD法在保留平稳化处理的优势下,可有效克服EMD模态混叠问题对预测效果的影响,且BP模型适用于非线性径流序列的预测,这说明利用CEEMD-BP模型对非平稳、非线性径流序列进行预测是可行、有效的。
为了更加清楚地反映模型预测结果的误差及预测精度,采用平均绝对误差(MAE)、均方根误差(RMSE)及确定性系数(NS)这3个指标进行分析,3个指标的计算公式分别为
式中:σi为i时刻的预测值;σ0为i时刻的实测值;σ为实测值的均值。
根据《水文情报预报规范》(SL 250—2000)的规定,当 NS≥0.9 时,预测精度为甲级;0.7≤NS<0.9 时,预测精度为乙级;0.5≤NS<0.7时,预测精度为丙级;NS<0.5时,预测结果不可信。汾河上游4个水文站的误差结果见表2。
由表2可知:①模拟期CEEMD-BP模型的误差与BP模型、EMD-BP模型相比大幅减小,CEEMD-BP模型的MAE、RMSE与单一BP模型相比分别减小75%~82%、57%~70%;与 EMD-BP模型相比分别减小62%~77%、40%~64%。 BP 模型的 NS为 0.83~0.87,预测精度为乙级;EMD-BP 模型的 NS 为 0.87~0.91,其中上静游站、汾河水库站的模拟精度为乙级,寨上站及兰村站的模拟精度为甲级;CEEMD-BP模型的NS在0.95以上,模拟精度均为甲级。由此可知,CEEMDBP模型的预测精度最高;3种模型的预测精度都达到了乙级以上,因此模型预测效果良好。②验证期预测结果与模拟期相似,CEEMD-BP模型的误差与BP模型、EMD-BP模型相比同样大幅减小,CEEMD-BP模型的MAE、RMSE与单一BP模型相比分别减小53%~62%、48%~65%,与EMD-BP模型相比分别减小34%~46%、30%~43%。由于数据较多,因此BP神经网络出现了一定的过拟合现象,导致验证期各模型的误差均大于对应的模拟期误差,但验证期4个水文站通过BP 单一模型预测得出的 NS 为 0.81~0.84,EMD-BP模型的 NS 为0.84~0.86,CEEMD-BP 模型的 NS 均在0.90以上,3种模型的预测精度均达到乙级以上,因此这3种模型仍然适用于非平稳、非线性的径流序列预测,其中CEEMD-BP模型的预测精度均达到甲级,是3种模型中预测误差最小的。
表2 汾河上游4个水文站的预测结果
综上所述,无论是模拟期还是验证期,CEEMDBP模型的模拟预测效果都比单一BP模型及EMDBP模型的要好,且预测精度均达到甲级,这进一步说明其用于非平稳、非线性的径流序列预测是可行、有效的。
3 结 论
(1)在对非平稳、非线性径流序列进行预测时,单一BP模型的预测精度虽然达到乙级,但是预测值与实测值易有偏差较大的情况出现,因此需要先对径流序列进行平稳化处理。
(2)CEEMD法在保留EMD法对径流序列平稳化的优势下,解决了EMD法的模态混叠问题,从而提高了径流处理的平稳化程度。
(3)CEEMD-BP模型先通过CEEMD法将原径流序列分解成若干子序列,再通过BP神经网络对各子序列进行预测,其预测结果与单一BP模型及EMDBP模型相比,误差最小,预测精度最高,等级均达到甲级。因此,该方法用于复杂的非平稳、非线性径流序列预测是可行、有效的。