长短期记忆模型在小流域洪水预报上的应用研究
Application of the Long Short-Term Memory Networks for Flood Forecast
DOI: 10.12677/JWRR.2019.81003, PDF,  被引量 下载: 1,239  浏览: 3,130  国家自然科学基金支持
作者: 郭 炅, 张艳军, 王俊勃, 吴金津, 董文逊, 王素描:武汉大学水资源与水电工程科学国家重点实验室,湖北 武汉;袁正颖:长江水利委员会水文局,湖北 武汉
关键词: 长短期记忆洪水预报Long Short-Term Memory (LSTM) Flood Forecast
摘要: 在山区小流域,降水资料稀缺,且难以反应其降水的空间异质性,使得仅依靠降水资料进行洪水预报十分困难。为了提高山区小流域洪水预报精度,本文以官山河流域为例,选择可同时输入降水和径流资料进行水文模拟和预报的长短期记忆模型(LSTM),对洪水过程进行模拟。同时构建了新安江模型模拟,进行对比研究。研究结果表明,若使用1975~1987年逐日数据对模型进行率定和检验,传统水文模型检验期的纳什效率系数为0.55,而对应的LSTM检验期的纳什效率系数为0.73,长短期记忆模型(LSTM)能够较大地提高降水资料缺少地区的水文模拟和预报效果。
Abstract: Flood forecasting is difficult in mountain watershed because precipitation data is scarce and hard to reflect spatial heterogeneity. To improve the accuracy of flood forecasting in mountain watershed, long short-term memory model (LSTM) and Xin’anjiang model are used to simulate flood in Guanshan river watershed. The results show that the Nash efficiency coefficient of verification period in the tra-ditional hydrological model is 0.55, while that in the LSTM is 0.7 with daily data from 1975 to 1987. LSTM can greatly improve the hydrological simulation and forecast effect in the areas lacking precipi-tation data.
文章引用:郭炅, 张艳军, 王俊勃, 袁正颖, 吴金津, 董文逊, 王素描. 长短期记忆模型在小流域洪水预报上的应用研究[J]. 水资源研究, 2019, 8(1): 24-32. https://doi.org/10.12677/JWRR.2019.81003

1. 引言

山洪是最常见的自然灾害之一,具有短历时,高强度的特点,威胁着社会与国民经济的发展 [1] 。洪水预报是为了预先获得洪水发生发展过程,根据洪水形成机理与运动规律,利用气象、水文等信息,预报预测洪水发生与变化过程的技术方法,并作为一项重要的防洪非工程措施,是减少洪水损失的最重要手段和方法之一。因此,建立有效的洪水预报模型,具有强烈的紧迫性和必要性。目前洪水预报方法可分为三类:经验预报、概念模型和系统或黑箱模型 [2] 。但是,对于我国广大山区,由于水文资料缺失,且降雨的空间异质性强,传统的概念模型在山洪模拟上精度较差 [3] 。近年来,人工神经网络等黑箱被广泛应用于水文预报的相关研究,并取得一定成果 [4] [5] [6] 。然而,传统的人工神经网络对样本的噪声、网络模式等因素比较敏感,而且存在过拟合以及结点记忆快速衰弱现象,其应用也是受到很大限制 [7] 。长短期记忆网络是一种改进的神经网络模型 [8] [9] ,它通过修改神经网络结构中的隐藏层神经元,解决了上述问题。本文提出了一种基于长短期记忆网络的洪水预报模型,同时使用官山河流域的降水、径流资料,对其流域进行洪水预报,提高洪水预报精度。

2. 模型介绍

2.1. LSTM模型

神经网络是一种由处理单元相互关联,有自适应能力的,非线性系统。它可以通过神经元的有向连接,建立输入参数到输出参数的映射,这种学习能力可以省略系统建模的步骤,特别适用于规律未知的情况。而比较传统的BP神经网络也已经广泛应用于水文预报,但是容易出现梯度消失,结点记忆快速衰弱的缺点,而LSTM长短期记忆网络模型可以改善这种情况。

长短期记忆(long-short term memory, LSTM)神经网络是一种改进的时间递归神经网络 [10] [11] 。LSTM网络模型引入了多个自相关的核心信元cell和3个新增单元 [12] ,分别是:输入门(inputgate)、输出门(output gate)和遗忘门(forget gate)。核心信元即细胞状态,3个门结构则控制信息在细胞状态上的更新。这样便实现了信息在网络上的更新。LSTM神经元结构如图1所示。

由结构图可知,为了与时间建立联系,LSTM在递归循环过程中增加了一个记忆单元——细胞状态,然后通过输入门it、输出门ot和遗忘门ft这三个结构来进行数据写入、读取和过去状态的重置工作。Sigmoid激活函数使遗忘门的输出值为[0, 1],当输出为0时,表示上一状态的信息全部被遗忘门舍弃;当输出为1时,表示上一状态的信息全部被保留。该结构的前向计算过程如下:

Figure 1. LSTM structure diagram

图1. LSTM结构示意图

i t = σ ( W i [ h t 1 , x t ] + b i ) (1)

o t = σ ( W o [ h t 1 , x t ] + b o ) (2)

f t = σ ( W f [ h t 1 , x t ] + b f ) (3)

C ˜ t = tanh ( W C h t 1 + W C x t + b C ) (4)

C t = f t C t 1 + i t C t (5)

h t = o t tanh ( C t ) (6)

式中: σ 为Sigmoid激活函数, W f W i W C 分别为对应的权重系数矩阵, h t 1 h t 为上一时刻和这一时刻的隐藏层输出量, C t 1 C t C ˜ t 分别为上一时刻和当前时刻细胞状态以及输入的候选状态, x t 为当前层输出, b f b i b C b o 分别为对应的偏置项。首先,利用上一时刻的隐藏层输出和当前层输出,通过(1)、(2)、(3)式计算输入门、输出门、遗忘门的系数。然后,通过(4)式得到当前神经元的候选状态 C ˜ t 。再通过遗忘门和输入门确定 C ˜ t C t 1 在当前细胞状态中的比例关系,使用(5)式对其进行更新。最后,使用(6)式计算当前时刻的隐藏层输出量。

在本文的LSTM网络训练中,采用时间反向传播算法,反向计算各神经元的输出值与真实值的误差,根据误差结果计算各权重。

同时,在LSTM模型的输入层中,输入层变量包括三个特征值:时间、降水量、径流量。输出层变量只有一个特征值:径流量。这样,模型的预报结果不仅与降雨有关,也与前期的径流量有关。

2.2. 对比模型介绍

在本文中,选取水文上广泛应用的三水源新安江模型,使用该模型的洪水模拟结果与LSTM模型的模拟结果进行对比分析。

新安江是一种适用于我国湿润半湿润地区的概念性流域水文模型 [13] [14] 。三水源新安江模型蒸散发采用三层模型计算;产流计算选择蓄满产流模型;总径流采用自由水库结构被划分为地表径流、壤中流和地下径流;汇流计算采用线性水库;河道汇流采用马斯京根演算。

模型参数主要包括以下4类:1) 蒸散发计算参数;2) 产流模型计算参数;3) 水源划分参数;4) 汇流模型计算参数。

对于新安江模型而言,其模型的输入变量包括降水,蒸发。

从两个模型的输入变量来看,LSTM模型可以同时输入降水和径流资料,而新安江模型只是降水资料。文献 [15] 表明,水文序列具有较强的自相关性,同时长记忆性分解结果表明,随着时间的延长,序列的长记忆性逐渐减弱。由此分析,当流域的降水资料与实际降水偏差较大时,同时使用降水、径流作为输入变量的LSTM的效果会更好。

3. 实例分析

3.1. 研究区概况

官山河位于汉江中上游,湖北省丹江口市西南部,丹江南岸 [16] 。其经纬度范围东经110˚48'00''~111˚34'59'',北纬32˚13'16''~32˚58'20''。该流域面积465 km2,河长66.5千米,孤山水文站以上流域面积300多km2 (孤山站集水面积322 km2)。流域平均高程690米,河道平均坡降5.7‰,多年平均流量7.78 m3/s。官山河流域地形以山地和丘陵为主,地形起伏变化较大,海拔范围240到1606 m。该流域属于局地性暴雨和连阴雨高发区,年降水量高达1100 mm。官山河流域内有水文站1个(孤山站),自动雨量站4个,分布在吕家河村、官亭村、田贩村、铁炉村。

3.2. 数据处理及模型参数分析

本文构建的LSTM洪水预报模型中,作为预报因子的输入层变量有两个,分别是径流量和降雨量。

对于官山河流域洪水模拟,径流量数据由孤山站直接测得,采用泰森多边形法对4个自动雨量站数据进行插值得到降水数据。本文选取该流域1975到1987年的相关数据资料。其中,共计9场洪水,预见期为24 h来对模型进行训练和验证。其中,前7场为训练集,后2场为检验集。

对于模型本身参数的设定,通过试错法,确定LSTM网络的中间层数为3层,优化方法采用RMSProp (root mean square prop)算法,节点数为30个,最大训练次数为1500次。

3.2.1. 数据归一化处理

由于输入的数据之间数量级有时候差别较大,使用LSTM网络预测结果会存很大的误差。数据的归一化处理会有效的减少这个误差,归一化数据的取值范围为[0,1]。本文中归一化采用的是离差标准化方法(Min-Max Normalization),转换式为:

X * = X X min X max X min (7)

式中: X max 为数据序列的最大值, X min 为数据序列的最小值,X为原始的实测数据, X * 为归一化数据。经过这种归一化方法处理的数据,不但会消除因数据之间数量级差异造成的影响,而且会保留原始数据中存在的关系,使得之后的模型运算结果符合实际的范围和意义。

3.2.2. 模型的参数设定

LSTM模型的主要参数包括:输入层step步数的选择以及LSTM层记忆神经元的个数。

对于LSTM网络模型,输入层加入了时序step的概念,这样处理单元便从常规的向量变成了张量,不同的步数选择对模型的精度有着不同的影响。在训练中,LSTM层记忆神经元的个数也会影响模型的精度。若节点个数设置较少,模型拟合效果会很差,同时会存在学习回归问题,最终模型结果精度较差。若节点个数设置过多,会增加训练过程的训练时间,还会带来过拟合问题,从而影响到模型性能。至于隐藏层节点个数的设置,本文采用经验公式确定,将此作为初值。最后,通过试错法确定隐藏层节点个数。根据前人的结果,隐藏层节点数N的经验公式为:

N = ( n + m ) + a (8)

式中:m和n为输入层和输出层的节点数,a为常数,取值范围[0,10]。

最终,通过试错法,确定LSTM网络的中间层数为3层,输入层步数为,优化方法采用RMSProp (root mean square prop)算法,误差控制率为0.001,节点数为30个,最大训练次数为1500次。

Figure 2. Study site

图2. 研究区域

3.2.3. 模型的评价指标

基于水文预报的规范以及从官山河的实际情况出发(见图2),本文洪峰流量相对误差和洪量相对误差对两个模型进行对比,同时采用纳什模型效率系数评价LSTM模型的精度:

1) 洪峰流量相对误差

Q e = Q p , s i m Q p , o b s Q p , o b s × 100 % (9)

式中:Qsim、Qobs分别为场次洪峰流量的模拟值与实测值,m3/s;Qe为场次洪峰流量相对误差,%,所有场次取其平均值即为流域洪峰流量平均相对误差。

2) 洪量相对误差

V e = V s i m V o b s V o b s × 100 % (10)

式中:Vsim、Vobs分别为场次洪水流量的模拟值与实测值,m3/s;Ve为场次洪水流量相对误差,%,所有场次取其平均值即为流域洪水流量平均相对误差。

3) 纳什效率系数

N S = 1 t = 1 n ( Q o t Q p t ) 2 t = 1 n ( Q o t Q o ¯ ) 2 (11)

式中:n是径流序列的长度, Q o t 分别表示t时刻径流的预报值和实测值,m3/s; Q o ¯ 是实测径流均值,m3/s。改系数越接近1,表示模型效果越好。

3.3. 结果与讨论

利用流域1975~1987年逐日水文资料对两个个模型参数进行率定,资料来源于《长江流域水文资料》。并选取场次洪水用已优选参数进行模拟,模拟结果以及部分场次洪水模拟结果见图3

Figure 3. Results of flood simulation

图3. 洪水模拟结果

图3可得,就洪峰流量看,两个模型模拟的结果均小于实测流量,但是LSTM网络模型的模拟结果更接近实际值;就峰现时间看,新安江模型模拟的洪水过程,峰现时间比实际情况晚,甚至会出现实际上不存在的洪水过程,而LSTM模型模拟的洪水峰现时间基本与实际洪水过程吻合,模拟精度较高。总体来看,LSTM网络模型的模拟效果比新安江模型的模拟效果好。

由部分场次洪水过程图来看,LSTM网络模型的洪水过程与实际洪水过程相似,而新安江模型模拟结果与实际情况有较大偏差,尤其是峰现时间。仔细分析可以发现,该流域的洪水过程与降水过程并不对应,就19760601次洪水数据来看,当降水事件发生时,并没有观测到洪水发生,而是在之后一天才观测到洪水。

本文作者认为,之所以会发生这样的事情,很重要的原因在于该流域的降雨具有极强的空间变异性,监测到的降水过程与流域整体的降水过程偏差较大。另外,官山河流域植被覆盖度高,下垫面情况复杂。综合以上原因,传统的有很强物理机制的水文模型在该流域并不适用。

而就LSTM模型而言,同时输入降水和径流资料,这样便可以解决降雨与径流过程不对应的情况。同时,LSTM模型并不具备较强的物理机制,是单纯从降雨、径流资料的统计学关系出发。这样,其模拟的洪水过程的效果反而较好,模拟的精度较高,见图4

深入分析模型模拟结果,结果见表1。从模拟结果来看,对于洪峰误差,LSTM模型的模拟结果误差在40%左右,而新安江模型的模拟结果误差在50%左右;对于洪量误差,LSTM模型的模拟结果误差在35%左右,而

Figure 4. Results of flood simulation

图4. 场次洪水模拟结果

新安江模型的模拟结果误差仍在50%左右。无论是洪峰还是洪量,LSTM模型模拟结果均优于新安江模型。最后,分别计算率定期和检验期模型结果的纳什效率系数,结果分别为0.75和0.73,模拟结果精度较高。

Table 1. The results of error analysis

表1. 各模型模拟误差结果

4. 结论

本文以官山河流域1975到1986年的降水量、径流量资料为依据,采用归一化法对数据进行预处理,选用LSTM网络模型以及水文上广泛应用的三水源新安江模型作为预测模型,对该流域进行洪水模拟及预测。经过两者结果的对比分析,可以得到以下几条结论:

1) LSTM模型进行洪水预报时,同时使用降雨与径流数据,可以一定程度上提高洪水预报精度。

2) LSTM模型更适用于降雨资料缺少或者降雨的监测资料误差较大的山区小流域的洪水预报。在这些缺资料或无资料地区,传统的水文模型难以应用或应用结果较差,LSTM模型具有很强的参考价值。

3) 由于LSTM模型基于神经网络系统改进得来,在实际的洪水预报过程中有时会存在一定的过拟合现象,因此对于模拟结果应该辩证看待。

基金项目

本文由国家重点研发计划(No. 2017YFC1502503)和国家自然科学基金重大项目(No. 41790431)资助。

参考文献

[1] 包红军, 王莉莉, 沈学顺, 等. 气象水文耦合的洪水预报研究进展[J]. 气象, 2016, 42(9): 1045-1057. BAO Hongjun, WANG Lili, SHEN Xueshun, et al. Advances of flood forecasting of hydro-meteorological forecast technology. Meteorological Monthly, 2016, 42(9): 1045-1057. (in Chinese)
[2] 吴超羽, 张文. 水文预报的人工神经网络方法[J]. 中山大学学报(自然科学版), 1994(1): 79-90. WU Chaoyu, ZHANG Wen. Application of artificial neural net: A new approach for hydrological forecasting. Acta Scientiarum Naturalium Universitatis Sunyatseni, 1994(1): 79-90. (in Chinese)
[3] 包红军, 赵琳娜. 基于集合预报的淮河流域洪水预报研究[J]. 水利学报, 2012, 43(2): 216-224. BAO Hongjun, ZHAO Linna. Flood forecast of Huaihe River based on TIGGE ensemble predictions. Journal of Hydraulic Engineering, 2012, 43(2): 216-224. (in Chinese)
[4] 俞亭超, 张土乔, 毛根海, 等. 预测城市用水量的人工神经网络模型研究[J]. 浙江大学学报(工学版), 2004, 38(9): 1156-1161. YU Tingchao, ZHANG Tuqiao, MAO Genhai, et al. Study of artificial neural network model for forecasting urban water demand. Journal of Zhejiang University (Engineering Science), 2004, 38(9): 1156-1161. (in Chinese)
[5] CHIANG, Y. M., CHANG, L. C. and CHANG, F. Comparison of static-feed forward and dynamic-feedback neural networks for rainfall-runoff modeling. Journal of Hydrology, 2004, 290(3-4): 297-311.
https://doi.org/10.1016/j.jhydrol.2003.12.033
[6] TAKUMI, A., SATOSHI, Y. and KOHEI, S. Distributed CFG-based symbolic execution for assembly programs: Consumer electronics. IEEE Consumer Electronics, Osaka, 2015: 76-80.
[7] 江衍铭, 张建全, 明焱. 集合神经网络的洪水预报[J]. 浙江大学学报(工学版), 2016, 50(8): 1471-1478. CHIANG Yenming, ZHANG Jianquan and MING Yan. Flood forecasting by ensemble neural networks. Journal of Zhejiang University (Engineering Science), 2016, 50(8): 1471-1478. (in Chinese)
[8] 于家斌, 尚方方, 王小艺, 等. 基于遗传算法改进的一阶滞后滤波和长短期记忆网络的蓝藻水华预测方法[J]. 计算机应用, 2018, 38(7): 2119-2123, 2135. YU Jiabin, SHANG Fangfang, WANG Xiaoyi, et al. Cyanobacterial bloom forecast method based on genetic algorithm-first order lag filter and long short-term memory network. Journal of Computer Applications, 2018, 38(7): 2119-2123, 2135. (in Chinese)
[9] 冯钧, 潘飞. 一种LSTM-BP多模型组合水文预报方法[J]. 计算机与现代化, 2018, 275(7): 82-85. FENG Jun, PAN Fei. A hydrologic forecast method based on LSTM-BP. Computer and Modernization, 2018, 275(7): 82-85. (in Chinese)
[10] 王旭东, 严珂, 陆慧娟, 等. LSTM的单变量短期家庭电力需求预测[J]. 中国计量大学学报, 2018, 29(2): 142-148. WANG Xudong, YAN Ke, LU Huijuan, et al. Short-term household electricity demand forecast based on LSTM single variable. Journal of China University of Metrology, 2018, 29(2): 142-148. (in Chinese)
[11] JAVIER, O. F., DANIEL, R. Deep convolutional and LSTM recurrent neural networks for multimodal wearable activity recognition. Sensors, 2016, 16(1): 115.
https://doi.org/10.3390/s16010115
[12] 权波, 杨博辰, 胡可奇, 等. 基于LSTM的船舶航迹预测模型[J]. 计算机科学, 2018, 45(S2): 126-131. QUAN Bo, YANG Bochen, HU Keqi, et al. Prediction model of ship trajectory based on LSTM. Computer Science, 2018, 45(S2): 126-131. (in Chinese)
[13] 杨凯, 阮晓波, 游圆. 新安江模型在马尪溪流域径流模拟的应用[J]. 浙江水利水电学院学报, 2017, 29(5): 10-13. YANG Kai, RUAN Xiaobo and YOU Yuan. Application of Xin’anjiang model in Mawang River Basin runoff simulation. Journal of Zhejiang University of Water Resources and Electric Power, 2017, 29(5): 10-13. (in Chinese)
[14] 刘佩瑶, 郝振纯, 王国庆, 等. 新安江模型和改进BP神经网络模型在闽江水文预报中的应用[J]. 水资源与水工程学报, 2017, 28(1): 40-44. LIU Peiyao, HAO Zhenchun, WANG Guoqing, et al. Application of Xin’anjiang model and the improved BP neural network model in hydrological forecasting of the Min River. Journal of Water Resources and Water Engineering, 2017, 28(1): 40-44. (in Chinese)
[15] 劳应文, 吴志斌. U形板桩在官山河道治理中的应用[J]. 价值工程, 2015, 34(16): 139-140. LAO Yingwen, WU Zhibin. Application of U-shaped plate piles in Guanshan River regulation. Value Engineering, 2015, 34(16): 139-140. (in Chinese)
[16] 谢俊. 径流时间序列的长记忆特性分析[D]. 武汉: 华中科技大学, 2012. XIE Jun. Research on long memory characteristic of runoff time series. Wuhan: Huazhong University of Science and Technology, 2012. (in Chinese)