lstm原文_LSTM模型与水文模型在径流模拟中的比较

学术简报

df398c3dfe0eeca2d4131ceb318afc2d.png

题目:Comparison of Long Short Term Memory Networks and the Hydrological Model in Runoff Simulation

作者:Hailin You1,Hongxiang Fan2,Ligang Xu2,Yongmi Wu1,*,Lizhen Liu2 and Zhong Yao1

作者单位:

1 Poyang Lake Research Center, Jiangxi Academy of Sciences, Nanchang 330096, Jiangxi, China; youhailin1985@163.com (H.Y.); woliulizhen2007@126.com (L.L.); readnature@163.com (Z.Y.)

2 Key Laboratory of Watershed Geographic Sciences, Nanjing Institute of Geography and Limnology, Chinese Academy of Sciences, Nanjing 21008, Jiangsu, China; fanhongxiang13@mails.ucas.ac.cn (H.F.); lgxu@niglas.ac.cn (L.X.)

* Correspondence: wuyongming@jxas.ac.cn

期刊/日期:Water/8 January 2020

文案:郭东淏排版:郭东淏校核:杨苑

Part.1

研究背景

水文研究中模拟径流的方法可分为三大类:(1)概念模型,使用概念组成模型径流;(2)物理模型,代表实际的产流过程;(3)数据驱动方法,从输入变量中估算径流。由于模型结构和参数估计的不确定性,物理模型十分依赖模型的校准。如需实现水文或水动力过程的精确模拟,则需要依赖强大的计算能力,所以此方法仅限于模拟持续时间较短的水文过程。以往的研究证明了多元线性回归(MLR)、支持向量机(SVM)和人工神经网络(ANN)等数据驱动的方法在水文应用中的可行性。与传统物理模型相比,深度学习方法可以获得相当甚至更好的结果。其中长短期记忆人工神经网络(Long Short-Term Memory,LSTM)在水文模拟、土壤水分预测、降雨径流模拟等方面都有不错的效果。

Part.2

研究目的

该研究将建立一个LSTM神经网络,用降水资料和其他气象资料对其进行训练,并与传统的水文模型和人工神经网络模型进行比较。该研究的目的是:

1、分析窗口尺寸对模拟性能的影响。给定一个时间序列数据集,模型使用前一个时间步长作为输入变量,下一个时间步长作为输出变量。前一个的时间步长称为窗口尺寸(Windows Size)。

2、 用仅包含降水量的数据集和包含所有可用气象变量的数据集作为输入数据集分别训练模型,分析在LSTM模型中输入更多的气象变量是否可以提高模拟性能;

3、 比较LSTM模型与其他模型的模拟能力。

da59f33f36713093a059b68c4b067cc3.png

图1 鄱阳湖流域的地形与河网(A)。7个水文站和13个气象站的位置分别用红三角和蓝点表示

Part.3

研究方法

1、 数据归一化。数据归一化是大多数神经网络的一般要求。对所有气象和水文数据采用零均值归一化可以确保数据保持在同一尺度上,进一步保证模型可以快速稳定地收敛。

2、 LSTM是一种递归神经网络(RNN)的特殊类型,它避免了RNN不能准确地提取过去的特征信息的特点。该研究开发的LSTM神经网络模型包含3层,共有128个LSTM神经元。输出层产生5组不同的径流时间序列。训练周期为2002年至2008年,测试周期为2009年至2013年。

e3473c01e3c44019b06d78862e49973d.png

图2 该研究提出的LSTM模型结构

3、 该研究实现了一个标准的三层前馈网络的ANN模型。其隐藏层包含双曲正切sigmoid传递函数,输出层包含线性传递函数,其他设置均与LSTM相同。

30939645a50ed3012bfc006ea7208051.png

图3 该研究的ANN结构

4、 该研究将揭示从短时期到长时期的窗口大小(几天到半年)对模型的影响。受限于计算能力,该研究窗口设置为1、5、10、15、20、25、30、60、90和180天。气象变量对径流产生的日和周影响可以用1到25天的窗口来表示,月影响可以用30天的窗口说明,年际气候变化的影响可以用60天、90天和180天的窗口说明。然后选择产生最佳模型性能的窗口尺寸以供进一步应用。

5、 为了比较LSTM与传统分布式水文模型的性能,该研究利用土壤水评价工具(SWAT)建立了鄱阳湖流域径流模拟模型。该模型对2002–2008年期间的每日观测径流对模拟径流进行了训练,并用2009–2013年的数据进行验证。

f43b2d80b541beaf32b5e6d978198cf1.png

图4 鄱阳湖流域特征:(A)土壤类型;(B)土地利用;(C)水文响应单元

6、 模型性能的评价指标是均方根误差(RMSE)和纳什效率系数(NSE)。

Part.4

研究结果

f6aced6627e0fc3cc5e94749fe90ceb6.png

图5 不同窗口大小下的模型性能。(A)RMSE;(B)NSE

该研究分析了窗口尺寸对模型性能的影响。如图5所示,随着窗口尺寸的增加,RMSE出现了先减小后增加的趋势。最小的RMSE和最大的NSE都是在窗口为15时获得的,这表明15天的窗口可能是模拟鄱阳湖流域径流的最佳选择。

表1 LSTM模型在训练和测试期间的总体性能统计结果

1cb124a0560afc3072f965a8b1281717.png

如表1所示,LSTM在训练期表现良好,降水数据集LSTM1和气象数据集LSTM2的平均NSE分别为0.86和0.90。尽管在训练期LSTM1和LSTM2趋势大致相同,但在测试期,两种模型的性能差异是显著的。在测试期,修水子流域LSTM2的NSE为0.74,而LSTM1的NSE仅为0.60,说明气象资料可以改善模型的性能。

920fd1093813d41f12efaad5f6a52aaa.png

图6 测试期内所有五个子流域的LSTM1表现

18f6b7ade2ab813fe394d274d658120a.png

图7 测试期内所有五个子流域的LSTM2表现

图6和图7显示了来自LSTM模型的实测和模拟径流。如图所示,LSTM1和LSTM2都能很好地模拟整个测试期内的径流模式。但是当径流量相对较低时,LSTM1往往明显高估了径流的变化,并低估了峰值径流的值。与LSTM1相比,修水子流域LSTM2的性能要好得多,峰值更准确。

05d3e7de05b67d304c383388713ed5c0.png

图8 LSTM、ANN和SWAT模型在径流模拟中的应用

在模拟性能方面,LSTM生成的时间序列与传统的ANN和SWAT相比均表现出了良好的结果。如图8所示,与传统的ANN和SWAT模型相比,在整个测试期间,LSTM2在所有子流域的RMSE最低,NSE最高。虽然LSTM模型对修水子流域的径流模拟存在一定的困难,但在输入更多气象变量时,LSTM的NSE值升高了23%。除修水流域外,传统的ANN与SWAT模型表现相当甚至优于SWAT模型。然而在修水子流域,传统的神经网络模型的性能明显下降,NSE值低于0.40。

Part.5

研究结论

该研究提出了一种使用最先进的LSTM网络的数据驱动方法,将所提出的模型用于鄱阳湖流域。该研究检验了窗口尺寸和输入数据集对LSTM模型模拟精度的影响,并与ANN和SWAT进行了比较。从该研究的结果可以得出以下结论:

1、 LSTM模型的性能受窗口尺寸的影响十分强烈。对研究区而言,15天的窗口尺寸比较稳定。

2、 当以降水资料为唯一输入时,所提出的LSTM1模式可取得理想的结果(NSE在测试期间的范围为0.60至0.92)。通过向模型输入更多的气象变量(NSE在试验期间的变化范围为0.74~0.94)时,可以提高模型的性能。

3、 该研究所提出的LSTM模型与人工神经网络(ANN)和SWAT模型相比,在大多数情况下,即使是在气象台站稀少的地区也取得了不错的效果。因此,基于数据建模的LSTM及其进一步的发展在径流模拟领域中具有较大的潜力。

原文链接

https://www.mdpi.com/2073-4441/12/1/175

77f55c160a1f7064ed40a8f616d6794d.png

你在看这篇文章吗?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/502883.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 获取已用空间,PHP5:获取导入的名称空间列表 - php

是否可以在当前上下文中获取PHP文件中所有导入的类/命名空间的列表?例如:namespace A;use B, C\D;我想得到这个数组:array(B, C\D);原因是我正在构建一个Mapper注册表,并且希望能够在当前上下文中使用别名类名而不是全名来查询该M…

[英语单词] piss in the wind

有点粗俗的俚语:piss in the wind。 感觉这个谚语是写在实:就是找不准点,pointless;然后引申代表是浪费时间。 https://lkml.org/lkml/2006/10/10/130 This is not a pointless piss-in-the-wind discussion; unless we define ra…

pythonos模块介绍_Python OS模块介绍

OS模块简单的来说它是一个Python的系统编程的操作模块,可以处理文件和目录这些我们日常手动需要做的操作。可以查看OS模块的帮助文档:>>> import os #导入os模块>>> help(os) #查看os模块帮助文档,里面详细的模块相关函数…

php 安装 bzip2,php如何安装bzip2

php安装bzip2的方法:首先安装扩展依赖的系统bzip2开发库;然后编译安装php源码包目录下的“ext/bz2”扩展;最后修改“php.ini”配置文件即可。php安装bzip2安装扩展依赖的系统bzip2开发库sudo yum install bzip2-devel编译安装php源码包目录下…

python处理滑块验证码_使用python实现滑动验证码

首先安装一个需要用到的模块pip install social-auth-app-django安装完后在终端输入pip list会看到social-auth-app-django 3.1.0social-auth-core 3.0.0然后可以来我的github,下载关于滑动验证码的这个demo:https://github.com/Edward66/slide_auth_cod…

java 虚拟机 字节码,JAVA虚拟机:虚拟机字节码执行引擎

“虚拟机”是一个相对“物理机”的概念,这两种机器都有代码执行能力。物理机的执行引擎是直接建立在处理器、硬件、指令集和操作系统层面上的。虚拟机的执行引擎由自己实现,自行制定指令集与执行引擎的结构体系,并可执行不被硬件直接支持的指…

mysql 触发器不能同时 insert or update or delete_MySQL6:触发器

什么是触发器MySQL的触发器(trigger)和存储过程一样,都是嵌入到MySQL中的一段程序。触发器是由事件来触发某个操作,这些事件包括INSERT、UPDATE和DELETE语句。如果定义了触发程序,当数据库执行这些语句的时候就会激发触发器执行相应的操作&am…

javabean连接mysql数据库,jsp+javabean 链接 mysql 数据库

JSPJavaBean html一、JavaBean类java首先先澄清 这个三个都是绝对路径 没有相对路径, E://test.txt 和 E:/test.txt 是一个意思 E:\\text.txt 用这样的写法是 \\ 转义了 ‘\’ .linux为何有\\ 的写法 和 / 这样的写法呢 ,由于window 默认的是\\ 这样…

mysql 强制使用索引_快速找出MySQL数据库冗余索引和未使用索引

冗余索引和未使用索引的危害随着上线的业务越来越多,在MySQL数据库中建的表也会越来越多,为提高查询访问速度,会创建相应的索引。但是由于技术人员的水平参差不齐,业务下线,代码逻辑变更等原因,导致线上数据…

java第一次课必修实验答案,Java第一次实验报告

北京电子科技学院(BESTI)实验报告课程:Java实验 班级:201352 姓名:池彬宁 学号:20135212成绩: 指导教师:娄佳鹏 实验日期:15.04.14实验密级: 预习程度…

python实现目标识别_Python10行代码实现目标检测

ImageAI可以让程序员和软件开发者只用几行代码,就能轻易地把最先进的计算机视觉技术整合到他们现有的以及新的应用程序里面。用ImageAI实现目标检测,你只需要以下步骤:安装Python安装ImageAI和相关函数库下载目标检测模型文件运行示例代码(只…

在matlab中求协方差,matlab里面的求协方差函数

一:matlab里面关于方差和协方差的几点需要注意的求均值的函数:mean求方差的函数:var标准差:方差:求协方差的函数:cov1 如果a,b是向量,则:cov(a,b)相当于是[D(a),cov(a,b);cov(b,a),D…

python做var模型_【Python金融量化】VaR系列(五):Copula模型估计组合VaR-阿里云开发者社区...

1. 资产组合VaR建模方法回顾文章中总结了通过DCC模型估计组合向前一日VaR的方法,整体思路如下:● 通过Garch族模型估计各资产的波动率● 通过DCC模型估计各资产间的相关系数,结合1得到资产组合的协方差矩阵● 在各资产正态性假设的前提下&…

matlab从矩阵中取rp开头文件,matlab trainrp

Af ] train(net, P,T, Pi, Ai,VV ,TV ) 3 [Y, Pf , Af , E, perf ] sim(net, P, Pi, Ai,T ) {tansig,purelin},trainrp BP lr......traingdm、traingda、 traingdx 、 trainrp 、 ...traingdm traingda traingdx trainrp train...{tansig,purelin},trainrp BP 网络的训练函数 训…

手机浏览器网址_「效率集」自定义网址导航高级功能介绍

「效率集」是国内仅有的几家提供了个性自定义导航的网站,功能比hao123强,用户体验优于百度导航首页,且支持聚合搜索,方便用户从不同渠道(网页,微博,微信公众号,知乎,维基…

属于服务器端运行的程序_生信分析云平台产品开发 - 5 生信分析pipeline服务器端运行...

在上文 [生信分析云平台产品开发 - 4 生信分析pipeline的图形化] 讨论了生信分析pipeline的图形化,如何用图形的方式显示生信pipeline,但是pipeline脚本按照变量的形式保存之后,如何运行,在什么环境下运行?是本文要解决…

c mysql 统计不重复数据库,MySQL_MySQL数据库中分组统计的问题,首先准备四张表A、B、C、D, - phpStudy...

MySQL数据库中分组统计的问题首先准备四张表A、B、C、D,--------------------------------A  | B  | C  | Da b | a c | a d | d e1 1 | 1 1 | 1 A | A 12 2 | 1 3 | 2 B | B 23 4 | …

TF卡里删掉文件后内存没变大_原来三星手机是这样清理内存的,难怪用好几年也不卡...

三星手机的耐用性一直都很高,而除了手机本身系统性能做的很好之外,手机的设置也是很人性化的。在三星手机使用了一段时间过后,手机里的内存会越来越大,手机里的垃圾也会越存越多,那么我们应该怎么清理手机中的内存呢&a…

拓扑排序排课系统_视频结构化人脸布控系统

一、平台背景在国家智慧城市的建设中的公共安全,对维稳防控、全城布控、预测预警、综合管理等提出了更高需求,针对这些需求我们作为识别领域的领先者,结合我们的识别技术,更全面、更智能提出了我们视频结构化黑名单布控系统解决方…

php数组转ini文件,php – 将数组转换为.ini文件

为了编写.ini文件,你需要创建自己的函数,因为除了阅读之外,PHP没有提供开箱即用的功能(可以在这里找到:http://php.net/manual/pl/function.parse-ini-file.php).可能将多维数组封装到.ini-syntax兼容字符串的函数示例可能如下所示:function arr2ini(arr…