基于深度学习的洪水流量预测系统和方法与流程

文档序号:24333929发布日期:2021-03-19 12:13阅读:181来源:国知局
基于深度学习的洪水流量预测系统和方法与流程
本发明属于洪水流量预测领域,具体涉及一种基于深度学习的洪水流量预测系统和方法。
背景技术
:洪水是常见的自然灾害之一,每年有上亿人受洪水影响,流离失所,而洪水所造成的财力物力损失也非常巨大。有效地预测洪水流量并及时发出预警对于防洪减灾具有重大意义。当前的洪水流量预测模型主要分为传统物理模型和智能洪水预测模型。传统物理模型例如新安江模型,其是在充分挖掘当地的地形地貌、蒸发量、植被覆盖率等物理特征的前提下,进行物理过程的参数计算,最终制定出的一套具有区域针对性的预测模型。而智能洪水预测模型是以海量的历史数据作为先验知识,利用机器学习等智能方法得到的从输入特征到输出特征的函数映射或者联合分布。但现有的洪水流量预测模型多属于单点预测,即只能预测未来一个时间点的流量情况,预测得到的单个时间点的流量数据缺乏实际应用价值。并且,现有的洪洪水流量预测模型在利用降雨数据时仅仅将其作为时间序列进行分析,并未考虑降雨量的空间分布情况,因此无法完全挖掘实际降雨数据所描述的信息,预测的准确性不高。技术实现要素:为了解决现有技术中存在的上述问题,本发明提供了一种基于深度学习的洪水流量预测系统和方法。本发明要解决的技术问题通过以下技术方案实现:第一方面,本发明实施例提供的一种基于深度学习的洪水流量预测系统,包括n个站点端和一个预测端,其中所述n个站点端是预定流域的n个水文站点对应的终端,所述n个水文站点中有一个目标水文站点位于所述预定流域的出口断面处;每个站点端,用于向所述预测端发送表征该水文站点历史k年各小时降雨数据的单端原始降雨数据,且所述目标水文站点对应的站点端还向所述预测端发送表征该目标水文站点历史k年各小时流量数据的原始流量数据;所述预测端,用于获取所述单端原始降雨数据、所述原始流量数据、未来p小时各个水文站点的先验降雨数据和所述n个水文站点的原始位置信息,并由获取到的所有单端原始降雨数据得到原始降雨数据;将所述原始降雨数据、所述先验降雨数据、所述原始流量数据以及所述原始位置信息进行预处理,分别得到处理后降雨数据、处理后先验降雨数据、处理后流量数据以及处理后位置信息;基于所述处理后降雨数据、所述处理后先验降雨数据以及所述处理后位置信息,形成网格化降雨数据;基于所述网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征;基于所述处理后流量数据,利用所述基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征;利用所述基于深度学习的洪水流量预测模型的第三网络对所述第一输出特征以及所述第二输出特征进行合并分类预测,得到所述目标水文站点未来p小时的流量预测值,n、k、t和p均为大于1的自然数,且t小于等于所述k年对应的小时数。可选的,所述预测端将所述原始降雨数据、所述先验降雨数据、所述原始流量数据以及所述原始位置信息进行预处理,分别得到处理后降雨数据、处理后流量数据以及处理后位置信息,包括:对所述原始降雨数据进行数据剔除、数据补全处理以及归一化处理,得到处理后降雨数据;将所述先验降雨数据进行归一化处理,得到处理后先验降雨数据;将所述原始流量数据进行归一化处理,得到处理后流量数据;将所述原始位置信息进行网格化处理,得到处理后位置信息。可选的,所述预测端对所述原始降雨数据进行数据剔除、数据补全处理以及归一化处理,得到处理后降雨数据,包括:将所述原始降雨数据中,数据数目低于预设数量的水文站点所对应的数据剔除,得到剩余降雨数据;对所述剩余降雨数据中缺失的降雨数据,利用反距离加权法进行数据补全,得到补全降雨数据;将所述补全降雨数据进行归一化处理,得到处理后降雨数据。可选的,所述归一化处理包括[0,1]归一化处理。可选的,所述预测端基于所述处理后降雨数据、所述处理后先验降雨数据以及所述处理后位置信息,形成网格化降雨数据,包括:针对每一小时,从所述处理后降雨数据和所述处理后先验降雨数据中,选取该小时各水文站点对应的降雨数据分别填入所述处理后位置信息中各水文站点的对应位置处,形成该小时对应的第一网格化降雨数据,由所述处理后降雨数据和所述处理后先验降雨数据对应的所有所述第一网格化降雨数据构成所述网格化降雨数据。可选的,所述预测端基于所述网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征,包括:将所述网格化降雨数据输入所述第一分支网络的降维网络得到降维数据;将所述降维数据利用所述第一分支网络的特征变换网络进行特征展平,得到展平数据;从所述展平数据中选取历史t小时和未来p小时对应的数据构成第一向量;将所述第一向量利用所述第一分支网络的多个gru层提取时序特征,得到第一输出特征;其中,所述降维网络包括二维卷积层以及最大池化层。可选的,所述预测端基于所述处理后流量数据,利用所述基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征,包括:从所述处理后流量数据中选取t小时对应的数据构成第二向量;将所述第二向量利用所述第二分支网络的多个gru层提取时序特征,得到第二输出特征。可选的,所述预测端利用所述基于深度学习的洪水流量预测模型的第三网络对所述第一输出特征以及所述第二输出特征进行合并分类预测,得到所述目标水文站点未来p小时的流量预测值,包括:将所述第一输出特征以及所述第二输出特征利用所述第三网络的concat模块进行特征合并,得到合并特征;将所述合并特征利用所述第三网络的多个全连接层进行分类预测,得到所述目标水文站点未来p小时的流量预测值。可选的,所述预测端为所述目标水文站点对应的站点端。第二方面,本发明实施例还提供一种基于深度学习的洪水流量预测方法,应用于基于深度学习的洪水流量预测系统中的预测端,所述基于深度学习的洪水流量预测系统还包括n个站点端,其中,所述n个站点端是预定流域的n个水文站点对应的终端,所述n个水文站点中有一个目标水文站点位于所述预定流域的出口断面处;每个站点端向所述预测端发送表征该水文站点历史k年各小时降雨数据的单端原始降雨数据,且所述目标水文站点对应的站点端还向所述预测端发送表征该目标水文站点历史k年各小时流量数据的原始流量数据;所述基于深度学习的洪水流量预测方法包括:获取所述单端原始降雨数据、所述原始流量数据、未来p小时各水文站点的先验降雨数据以及n个水文站点的原始位置信息,并由获取到的所有单端原始降雨数据得到原始降雨数据;将所述原始降雨数据、所述原始流量数据以及所述先验降雨数据进行预处理,分别得到处理后降雨数据、处理后流量数据以及处理后位置信息;基于所述处理后降雨数据、所述处理后先验降雨数据以及所述处理后位置信息,形成网格化降雨数据;基于所述网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征;基于所述处理后流量数据,利用所述基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征;利用所述基于深度学习的洪水流量预测模型的第三网络对所述第一输出特征以及所述第二输出特征进行合并分类预测,得到所述目标水文站点未来p小时的流量预测值,其中,所述基于深度学习的洪水流量预测模型包括串联的分支网络组和所述第三网络,所述分支网络组包括并联的所述第一分支网络和所述第二分支网络,n、k、t和p均为大于1的自然数,且t小于等于所述k年对应的小时数。本发明实施例提供的一种基于深度学习的洪水流量预测系统和方法,利用各水文站点的位置信息,将历史降雨数据和未来先验降雨数据进行网格化,从而引入降雨的空间分布信息,并将网格化降雨数据,利用预先训练的基于深度学习的洪水流量预测模型的分支网络之一提取空间分布特征和时序特征;将历史流量数据利用基于深度学习的洪水流量预测模型的分支网络之另一进行时序特征提取,通过对两分支网络的输出特征进行合并分类预测,可以得到未来一个时间段的洪水流量预测值。本发明实施例提出的预测系统可以一次性得到未来一个时间段的洪水流量预测结果,该结果考虑到降雨量的空间分布情况,因此能够充分挖掘实际降雨数据所描述的信息,得到与实际降雨情况相符的预测结果,预测的准确性较高。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。以下将结合附图及实施例对本发明做进一步详细说明。附图说明图1是本发明实施例提供的一种基于深度学习的洪水流量预测系统的结构示意图;图2是本发明实施例提供的基于深度学习的洪水流量预测系统的预测端的结构示意图;图3是本发明实施例的基于深度学习的洪水流量预测模型的结构示意图;图4是本发明实施例提供的第一分支网络的具体结构图;图5是本发明实施例提供的第二分支网络的具体结构图;图6是本发明实施例提供的第三网络的具体结构图;图7是本发明实施例的预测过程示意图;图8是本发明实施例提供的输入数据的示例图;图9是本发明实施例提供的自编码器训练结构示意图;图10是本发明实施例的水峰值预测效果对比图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了实现未来一个时间段的洪水流量预测,并完全挖掘实际降雨数据所描述的信息,得到与实际降雨情况相符的准确性高的预测结果的目的,本发明实施例提供了一种基于深度学习的洪水流量预测系统和方法。第一方面,首先对本发明实施例所提供的一种基于深度学习的洪水流量预测系统进行介绍。参见图1,图1为本发明实施例提供的一种基于深度学习的洪水流量预测系统的结构示意图。本发明实施例提供的一种基于深度学习的洪水流量预测系统100,可以包括n个站点端110和一个预测端120。其中,n个站点端110是预定流域的n个水文站点对应的终端,n个水文站点中有一个目标水文站点位于预定流域的出口断面处。每个站点端110,用于向预测端发送表征该水文站点历史k年各小时降雨数据的单端原始降雨数据,且目标水文站点对应的站点端还向预测端发送表征该目标水文站点历史k年各小时流量数据的原始流量数据;预测端120,用于获取单端原始降雨数据、原始流量数据、未来p小时各个水文站点的先验降雨数据和n个水文站点的原始位置信息,并由获取到的所有单端原始降雨数据得到原始降雨数据;将原始降雨数据、预先获取的未来p小时的先验降雨数据、原始流量数据以及原始位置信息进行预处理,分别得到处理后降雨数据、处理后先验降雨数据、处理后流量数据以及处理后位置信息;基于处理后降雨数据、处理后先验降雨数据以及处理后位置信息,形成网格化降雨数据;基于网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征;基于处理后流量数据,利用基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征;利用基于深度学习的洪水流量预测模型的第三网络对第一输出特征以及第二输出特征进行合并分类预测,得到目标水文站点未来p小时的流量预测值,n、k、t和p均为大于1的自然数,且t小于等于k年对应的小时数。以下针对各部分分别进行说明:1.站点端110:预定流域是一个地理区域,在该地理区域内包含n个水文站点,用于监测降雨情况,n个水文站点中有一个目标水文站点位于预定流域的出口断面,用于监测该预定流域出口断面的水位及流量的变化情况。每个水文站点记录并存储有该水文站点在每小时的降雨数据,目标水文站点还记录并存储有该目标水文站点在每小时的流量数据。水文站点可以将上述降雨数据或者流量数据存储在对应的站点端110中。站点端110可以是一个处理器或者其余电子设备等。或者,水文站点也可以将上述降雨数据或者流量数据存储在与对应的站点端110具有通信连接的一个存储地址中,这都是合理的。每个站点端110可以在响应于预测端120的一个数据请求之后,从存储的降雨数据中,提取该水文站点在历史k年中每小时的降雨数据形成单端原始降雨数据,并向预测端120发送;并且目标水文站点对应的站点端110还可以从存储的流量数据中提取该目标水文站点在历史k年中每小时的流量数据形成原始流量数据,并向预测端120发送。作为优选的实施方案,历史k年可以为历史数据中,距离当前时间最近的连续k年。2.预测端120:参见图2,图2为本发明实施例提供的基于深度学习的洪水流量预测系统的预测端的结构示意图。预测端可以包括原始数据获取模块1201、数据预处理模块1202、输入数据构建模块1203以及模型预测模块1204。以下分别介绍各个模块的具体工作过程。(1)原始数据获取模块1201,用于获取单端原始降雨数据、原始流量数据、未来p小时各水文站点的先验降雨数据以及n个水文站点的原始位置信息,并由获取到的所有单端原始降雨数据得到原始降雨数据。原始数据获取模块1201将获取到的所有单端原始降雨数据,依据时间进行合并整合得到原始降雨数据。原始降雨数据包括预定流域的n个水文站点的历史k年各小时降雨数据。原始流量数据包括n个水文站点中位于预定流域的出口断面处的目标水文站点的历史k年各小时流量数据。原始位置信息包括n个水文站点的经度和n个水文站点的纬度,n和k为大于1的自然数。因此,在本发明实施例中,可以分别从n个水文站点处获取历史k年各小时降雨数据生成原始降雨数据,从目标水文站点处获取历史k年各小时流量数据生成原始流量数据。作为优选的实施方案,历史k年可以为历史数据中,距离当前时间最近的连续k年。作为本发明实施例的具体示例,选择中国河南省的息县流域作为预定流域,息县流域共有50个水文站点,时间范围可以选择为2013年~2018年,即n=50,k=6。获得的原始降雨数据、原始流量数据以及原始位置信息的示例如表1~表3所示,因作为形式示例,具体数值、名称不进行示出。其中,tm为时间戳,以一小时为单位;s1~s50表示50个水文站点的降雨数据;q表示目标水文站点的流量数据;a1~a50表示50个水文站点的编号;ltgd表示水文站点的经度坐标;lttd表示水文站点的纬度坐标,s1~s50、q均以毫米为单位。表1原始降雨数据示例表tms1/mms2/mm……s50/mm2013年1月1日0时////2013年1月1日1时////……////2013年12月31日23时////……////2018年12月31日23时////表2原始流量数据示例表tmq/mm2013年1月1日0时/2013年1月1日1时/……/2013年12月31日23时/……/2018年12月31日23时/表3原始位置信息示例表站点lgtdlttda1//a2//……//a50//本领域技术人员可以理解的是,表1示例的原始降雨数据的维度为[(6×365×24),50]=[52560,50]。表2示例的原始流量数据的维度为[52560,1]。表3示例的原始位置信息的维度为[50,2]。原始数据获取模块1201除了从站点端获取单端原始降雨数据、原始流量数据之外,还可以通过天气预报等手段,获取未来p小时各水文站点的先验降雨数据。未来p小时即为需要预测的未来时间段。比如p可以为24小时等。(2)数据预处理模块1202,用于将原始降雨数据、先验降雨数据、原始流量数据以及原始位置信息进行预处理,分别得到处理后降雨数据、处理后先验降雨数据、处理后流量数据以及处理后位置信息。数据预处理模块1202对原始降雨数据的处理过程可以包括:对原始降雨数据进行数据剔除、数据补全处理以及归一化处理,得到处理后降雨数据。在实际中,由于疏漏等原因,水文站点的降雨数据可能存在缺失,可以理解的是,如果使用缺失数据过多的原始降雨数据进行计算,会影响后续预测的准确性,因此,在该步骤中,首先需要对缺失数据过多的水文站点的数据进行剔除。可选的一种实施方式中,上述过程可以包括以下三个步骤:步骤一,将原始降雨数据中,数据数目低于预设数量的水文站点所对应的数据剔除,得到剩余降雨数据;比如针对表1的原始降雨数据,如果某一个水文站点的降雨数据的数目低于预设数量30000,则表明现存数据比例已经小于意味着数据缺失近半数,对于如此多的缺失数据,没有必要在后续进行缺失值补全。因为如果对其进行缺失值补全,将会引入过多人工因素,使得模型泛化能力下降。使得最终神经网络学习到的规律不符合真实的数据关系。因此,可以将缺失数据较多的水文站点所对应的数据剔除,保留优选水文站点的降雨数据,得到剩余降雨数据。关于预设数量可以根据原始降雨数据的维度以及数据精度的需要进行合理选择。步骤二,对剩余降雨数据中缺失的降雨数据,利用反距离加权法进行数据补全,得到补全降雨数据。本领域技术人员可以理解的是,在剩余降雨数据中仍会有一些时间点的降雨数据存在缺失,可以使用缺失值补全算法对缺失的降雨数据进行补全。其中,反距离加权算法(inversedistanceweighted,idw)是缺失值补全的经典算法。反距离加权算法按照距离越远,相关性越小的原则,使用临近水文站点的降雨数据来对某一水文站点的缺失降雨数据进行补全。反距离加权算法的公式如下公式(1)所示。其中,q为出现数据缺失的水文站点的降雨数据估计值;m为参与计算的水文站点个数;qr为相邻水文站点的降雨数据实际值;dr为参与计算的相邻水文站点距离数据缺失的水文站点的实际距离;p为计算距离向量的范数类型,一般可以取值为2。利用上述反距离加权算法可以对剩余降雨数据中缺失降雨数据的水文站点的降雨数据补全,并得到完整的降雨总和数据,从而得到补全降雨数据。即表1中的数据得以完整填充。步骤三,对补全降雨数据中所有水文站点的降雨数据进行归一化处理。归一化是一种无量纲处理手段,使物理系统数值的绝对值变成某种相对值关系。是简化计算,缩小量值的有效办法。通过合适的归一化处理,可以加快梯度下降求最优解的速度,降低模型参数数值大小,加快模型训练过程中的收敛速度,改善模型的性能,提高精度。常用的归一化方法包括:min-max标准化、标准差标准化、非线性归一化等。由于降雨数据和流量数据并不满足正态分布,因此,本发明实施例优选的实施方案中,归一化处理包括[0,1]归一化处理。[0,1]归一化处理属于min-max标准化,其通过对数据的每一个维度的值进行重新调节,使得最终的数据向量落在[0,1]之间。[0,1]归一化处理具体公式如下公式(2)所示。其中,hmax和hmin分别是数据样本中的最大值和最小值;h是归一化前的原数据,h*是归一化后的数据。通过上述[0,1]归一化处理,可以得到补全降雨数据进行归一化处理后的处理后降雨数据。数据预处理模块1202对原始流量数据的处理过程可以包括:将原始流量数据进行归一化处理,得到处理后流量数据。该过程的归一化处理与上述步骤中的归一化处理相同。通过上述[0,1]归一化处理,可以得到原始流量数据进行归一化处理后的处理后流量数据。数据预处理模块1202对先验降雨数据的处理过程可以包括:将先验降雨数据进行归一化处理,得到处理后先验降雨数据。该过程的归一化处理与上述步骤中的归一化处理相同。通过上述[0,1]归一化处理,可以得到先验降雨数据进行归一化处理后的处理后先验降雨数据。数据预处理模块1202对原始位置信息的处理过程可以包括:将原始位置信息进行网格化处理,得到处理后位置信息。本实施例中,数据网格化根据各个站点的经纬度信息,按照0.01的分度值进行坐标生成,坐标计算公式如下公式(3)所示。其中,lgi为水文站点i的经度信息,lai为水文站点i的纬度信息,lgmax和lgmin分别是所有水文站点里面经度信息的最大值和最小值,lamax和lamin分别是所有水文站点里面纬度信息的最大值和最小值。计算结果取整得到对应水文站点的位置坐标信息(xi,yi),每个水文站点的位置坐标信息以一个网格表示,那么可以由所有水文站点的位置坐标信息对应的网格组合得到处理后位置信息。可以理解的是,处理后位置信息含有多个网格,每个网格表示一个水文站点的位置信息。(3)输入数据构建模块1203,用于基于处理后降雨数据、处理后先验降雨数据以及处理后位置信息,形成网格化降雨数据。针对每一小时,从处理后降雨数据和处理后先验降雨数据中,选取该小时各水文站点对应的降雨数据分别填入处理后位置信息中各水文站点的对应位置处,形成该小时对应的第一网格化降雨数据,由处理后降雨数据和处理后先验降雨数据对应的所有第一网格化降雨数据构成网格化降雨数据。可以理解的是,经过上述步骤后,将n个水文站点表示在网格坐标上,本步骤中,从生成的处理后降雨数据以及处理验降雨数据,找取每一小时中,每一水文站点对应的降雨数据,填入该水文站点在处理后位置信息中的对应位置处,当该小时内所有水文站点均对应填充后可以得到该小时对应的第一网格化降雨数据,针对历史k年每一小时以及未来p小时均按照同样操作处理完毕。可以理解的是,针对每一小时可以得到一个对应的第一网格化降雨数据,由最终得到的所有第一网格化降雨数据构成网格化降雨数据。本领域技术人员可以理解的是,网格化降雨数据的表格维度为[52560,x,y],其中,x、y分别表示网格化降雨数据的矩阵跨度。(4)模型预测模块1204,用于将网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征;基于处理后流量数据,利用基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征;利用基于深度学习的洪水流量预测模型的第三网络对第一输出特征以及第二输出特征进行合并分类预测,得到目标水文站点未来p小时的流量预测值。模型预测模块1204内置有预先训练得到的基于深度学习的洪水流量预测模型。为了便于理解本发明实施例的预测过程,首先,对本发明实施例的基于深度学习的洪水流量预测模型的结构和训练过程予以介绍。本发明实施例为了实现未来一个时间段的洪水流量预测,利用卷积神经网络(cnn)技术以及循环神经网络(rnn)技术提出具体的基于深度学习的洪水流量预测模型。其中,如下公式(4)所示。q[1...p]=f(x[t+p...0])s.p.n≤0(4)其中,f(x[t+p...0])表示输入的数据,即已知小时的降雨数据以及流量数据,q[1...p]表示计算未来1至p小时的流量预测结果。本发明将结合降雨数据,对未来p小时的流量进行预测。卷积神经网络是一种专门用来处理网格化数据结构的神经网络,相比于传统的全连接网络结构,其具有参数少,感受野易调整等优点,在图像处理方面具有较大的优势。应用在水利中,结合生成的降雨空间分布二维数据,可以有效的提取降雨数据的空间分布信息。循环神经网络是一种专门处理具有时序特征的神经网络,其内部特殊的隐含状态传递机制,可以使得当前的数据特征传递给下一时刻合并分析。从而让整个序列具有时间上的因果连续性。本发明使用rnn的变体结构gru网络,相比于rnn,gru添加了遗忘门,可以有效的防止时序过长导致的梯度爆炸问题。本发明实施例基于python搭建基于深度学习的洪水流量预测模型,图3是本发明实施例的基于深度学习的洪水流量预测模型的结构示意图。该基于深度学习的洪水流量预测模型包括:串联的分支网络组和第三网络,分支网络组包括并联的第一分支网络和第二分支网络。其中,第一分支网络包括:降维网络、特征变换网络以及多个gru层。第二分支网络包括多个gru层。第三网络包括:concat模块以及多个全连接层。下面对基于深度学习的洪水流量预测模型的各个网络进行具体介绍。(1)第一分支网络:参考图4,图4是本发明实施例提供的第一分支网络的具体结构图。降维网络包括卷积层以及池化层构成的级联结构。本实施例中,将cnn结构用于降维网络。本发明实施例中的卷积层可以为二维卷积层,用conv2d表示,池化层用pooling表示。具体各层的参数见表4。表4基于深度学习的洪水流量预测模型的降维网络的层参数本模型中conv2d用于进行特征提取,pooling用于降低参数数目,进行特征筛选。卷积模式均为valid卷积模式,pooling采用的池化模式均为maxpooling。最终得到的输出向量的维度为[t,k1,k2],其中,k1、k2与卷积模块大小设置相关。又因为,降维网络输出为三维数据,而gru网络需要二维的输入数据。gru第一个维度为时间步长,即t,与降维网络的输出一致,第二个维度为每个时间点的特征向量。本发明实施例中,采用reshape的方式进行维度的重新构建,增加特征变换网络,将降维网络输出维度的k1、k2合并成一个维度,作为对应时间点的特征向量,维度为[t,k1×k2],符合gru网络的输入数据维度要求。第一分支网络的包括gru层1、gru层2、gru层3。本实施例中,rnn计算模块采用gru网络作为其结构核心,使用多层gru的模型架构,具体结构如图4所示。本实施例中,采用三层gru层构建gru网络。gru网络每层的神经元个数依次为50、30、10,输出数据的维度为[t,10]。具体各层的参数见表5。表5gru网络的层参数gru层神经元个数gru层150gru层230gru层310(2)第二分支网络:参考图5,图5是本发明实施例提供的第二分支网络的具体结构图。与第一分支网络的多个gru层类似,也采用三层gru层,具体参数与第一分支网络的多个gru层相同,在此不再赘述。(3)第三网络:参考图6,图6是本发明实施例提供的第三网络的具体结构图。concat是神经网络中特征融合的一种方式,是通道数的合并。全连接层主要用于模型的数值拟合,来增加模型的拟合能力。采用多层全连接层级联结构,添加dropout和batchnormalize操作进行过拟合避免。三层全连接层神经元个数依次为100、50、p。dropout采用的丢弃比例均为0.1。模型的输出维度为[p,1],即为所求的未来p小时的流量。具体各层的参数见表6。表6全连接层的层参数全连接层神经元个数全连接层1100全连接层250全连接层3p基于深度学习的洪水流量预测模型是利用n个水文站点的历史数据中,在前的t个小时的降雨数据、流量数据,以及其后的p小时的降雨数据和流量数据迭代训练得到的。比如,可以利用历史数据中2013至2017年的100小时的降雨数据和流量数据、针对待预测时间段为24小时的已知的降雨数据,构建样本输入数据(参考前文)。以针对待预测时间段为24小时的已知的流量数据作为真值,进行迭代训练,比如迭代达到100次,直至获得训练好的模型参数,即得到训练完成的基于深度学习的洪水流量预测模型。关于模型训练过程概述为如下步骤。1)将样本输入数据中每一样本数据和对应的真值,通过如图3结构所示的初始的网络模型进行训练,获得各样本数据的训练结果。2)将每一样本数据的训练结果与该样本数据对应的真值进行比较,得到该样本数据对应的预测结果。3)根据各个样本数据对应的预测结果,计算网络模型的损失值。4)根据损失值调整网络模型的参数,并重新进行1)-3)步骤,直至网络模型的损失值达到了一定的收敛条件,也就是损失值达到最小,这时,意味着每一样本数据的训练结果与该样本数据对应的真值一致,从而完成网络模型的训练,得到训练完成的基于深度学习的洪水流量预测模型。具体的,训练过程采用adam(adaptivemomentestimation)梯度下降的优化算法,以获得较好的损失下降过程。损失函数采用mse(mean-squareerror,均方误差)。学习率为0.01。同时,添加了dropout操作,dropout是一种在深度学习环境中应用的参数正则化手段。可以作为训练深度神经网络的一种trick供选择。在每个训练批次中,通过忽略一半的特征检测器(让一半的隐层节点值为0),可以明显地减少过拟合现象。在训练完成后,可以将待预测的输入数据输入预先训练得到的基于深度学习的洪水流量预测模型进行预测。具体过程可以参见图7,图7是本发明实施例的预测过程示意图。以t=100,p=24为例说明。优选的,历史t小时与未来p小时为连续时间时,得到的流量预测值更为精确。为了便于理解输入数据的形式,请参见图8,图8是本发明实施例的输入数据的示例图。该图仅作为形式示例,具体数据不进行示出。其中0表示当前时刻。需要说明的是,图8中的文字说明进行了简化示意。具体的,模型预测模块1204的预测过程可以包括以下步骤s1~s3,其中步骤s1与步骤s2的顺序不做限定。步骤s1,基于网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征。基于深度学习的洪水流量预测模型的第一分支网络是利用自编码器(autoencoder,ae)的方案来进行原始网格数据的降维处理,自编码器对输入信息进行学习,是对输入特征的一个表征学习。可以在降低网格化数据维度的同时,最大程度的保留原始数据的特征。具体结构如图9所示,图9是本发明实施例提供的自编码器训练结构示意图。encoder为编码器,decoder为解码器,ae在训练的过程中,训练目标为decoder的输出和encoder的输入之间差距尽可能的小。在模型训练好之后,我们去掉其decoder模块。使用encoder模块的输出作为降维的结果。另外,除了上述降维方法,还可以采用传统机器学习的pca降维以及网络嵌入等手段进行降维。可以理解的是,降维除了能够减小计算量,还可以有效的去掉数据中的一些噪声,提高模型的训练速度和预测精度。具体的,步骤s1可以包括以下步骤s11~s14。步骤s11,将网格化降雨数据输入第一分支网络的降维网络得到降维数据。由于站点覆盖区域范围较大,按照0.01的刻度来进行生成网格,将导致得到的网格规模过大,给硬件数据存储和模型训练计算都带来了较大的负担。如果采用更大的刻度来进行网格化生成,在矩阵规模减小的同时,却损失了大量的空间分布信息,与本实施例中采用cnn网络的目的相悖。因此,本发明实施例中第一分支网络的降维网络即为上述自编码器,用于对网格化降雨数据进行降维。本实施例中,以息县流域的50个水文站点为例,得到了一个维度为[150,150]的处理后位置信息。基于处理后降雨数据与处理后位置信息,形成的网格化降雨数据的维度为[k×365×24+p,150,150]=[8760k+p,150,150],其中[8760k+p,150,150]表示的是网格化降雨数据维度,经过降维网络的二维卷积层以及最大池化层,得到的降维数据维度为[8760k+p,30,30]。步骤s12,将降维数据利用第一分支网络的特征变换网络进行特征展平,得到展平数据。为了与gru网络的输入向量维度相匹配,需要对降维数据的维度进行重新构建。因此,对降维数据进行特征展平,得到的展平数据的维度为[8760k+p,30×30]=[8760k+p,900]。步骤s13,从展平数据中选取历史t小时和未来p小时对应的数据构成第一向量。选取了历史100小时以及未来24小时的降雨数据,得到的第一向量的维度为[124,900]。步骤s14,将第一向量利用第一分支网络的多个gru层提取时序特征,得到第一输出特征。第一向量经过gru层1后,维度从[124,900]变为[124,30];经过gru层2后,维度从[124,30]变为[124,20];经过gru层2后,维度从[124,20]变为[124,10]。最后,第一向量经由第一分支网络的三层gru层进行时序特征提取,得到第一输出特征,维度从[124,10]变为[10]。步骤s2,基于处理后流量数据,利用基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征。具体的,步骤s2可以包括以下步骤s21~s22。步骤s21,从处理后流量数据中选取t小时对应的数据构成第二向量。选取历史100小时的处理后流量数据构成第二向量,第二向量的维度为[100,1]。步骤s22,将第二向量利用第二分支网络的多个gru层提取时序特征,得到第二输出特征。第二向量经过gru层1后,维度从[100,1]变为[100,30];经过gru层2后,维度从[100,30]变为[100,20];经过gru层2后,维度从[100,20]变为[100,10]。最后,第二向量经由第二分支网络的三层gru层进行时序特征提取,针对[124,10]的向量利用注意力机制为124小时数据中每个小时的数据附加一个权重,并进行加权求和,得到维度为[10]的第二输出特征。步骤s3,利用基于深度学习的洪水流量预测模型的第三网络对第一输出特征以及第二输出特征进行合并分类预测,得到目标水文站点未来p个小时的流量预测值。具体的,步骤s3可以包括以下步骤s31~s32。步骤s31,将第一输出特征以及第二输出特征利用第三网络的concat模块进行特征合并,得到合并特征。将第一输出特征和第二输出特征利用第三网络的concat模块进行向量合并,得到的合并特征维度为[20]。步骤s32,将合并特征利用第三网络的多个全连接层进行分类预测,得到目标水文站点未来p小时的流量预测值。本实施例中,预测的是未来24小时的流量预测值。三个全连接层,神经元数量分别为100、50和24。将合并特征利用三层全连接层进行分类预测,实现网络的数值拟合。合并特征经过全连接层1后,维度从[20]变为[50];经过全连接层2后,维度从[50]变为[40];经过全连接层3后,维度从[40]变为[24]。最后,得到维度为[24]的目标水文站点未来p小时的流量预测值。其中,concat是神经网络中特征融合的一种方式,是通道数的合并。在图7中标记有各层处理的数据维度,以便于理解数据变化。关于gru层和全连接层的具体处理过程请参见现有技术理解,在此不再赘述。具体预测结果请参见图10,图10是本发明实施例的水峰值预测效果对比图。其中,上图为2018年实际流量图,下图为2018年预测流量图,flow为水峰值,单位为毫米。time为时间,单位h表示小时。可以看到,上下两图相似度极高,表明应用本发明实施例的基于深度学习的洪水流量预测模型可以达到较高的预测准确性。因此,利用本发明实施例的基于深度学习的洪水流量预测方法可以实现未来一个时间段的水流量的准确预测。可以理解的是,通过本发明实施例的基于深度学习的洪水流量预测模型得到的流量预测值也是归一化的数据,之后,可选的,可以利用相应的数据处理,得到与真实测量得到的流量值同一数据规格的数值。对此不再赘述。可选的实施方式中,预测端可以将得到的目标水文站点未来p小时的流量预测值进行输出,例如发送至另一设备或者进行显示,如显示在预定电子设备的显示屏上等等。可选的实施方式中,预测端还可以将得到的目标水文站点未来p小时的流量预测值与预定阈值进行比较,当目标水文站点未来p小时的流量预测值大于预定阈值时,发出警示信息。本发明实施例所提供的方案中,利用各水文站点的位置信息,将历史降雨数据和未来先验降雨数据进行网格化,从而引入降雨的空间分布信息,并将网格化降雨数据,利用预先训练的基于深度学习的洪水流量预测模型的分支网络之一提取空间分布特征和时序特征;将历史流量数据利用基于深度学习的洪水流量预测模型的分支网络之另一进行时序特征提取,通过对两分支网络的输出特征进行合并分类预测,可以得到未来一个时间段的洪水流量预测值。本发明实施例提出的预测系统可以一次性得到未来一个时间段的洪水流量预测结果,该结果考虑到降雨量的空间分布情况,因此能够充分挖掘实际降雨数据所描述的信息,得到与实际降雨情况相符的预测结果,预测的准确性较高。第二方面,本发明实施例提供的一种基于深度学习的洪水流量预测方法,应用于基于深度学习的洪水流量预测系统中的预测端,基于深度学习的洪水流量预测系统还包括n个站点端,其中,n个站点端是预定流域的n个水文站点对应的终端,n个水文站点中有一个目标水文站点位于预定流域的出口断面处;每个站点端向预测端发送表征该水文站点历史k年各小时降雨数据的单端原始降雨数据,且目标水文站点对应的站点端还向预测端发送表征该目标水文站点历史k年各小时流量数据的原始流量数据;基于深度学习的洪水流量预测方法包括:获取单端原始降雨数据、原始流量数据、未来p小时各水文站点的先验降雨数据以及n个水文站点的原始位置信息,并由获取到的所有单端原始降雨数据得到原始降雨数据;将原始降雨数据、原始流量数据以及先验降雨数据进行预处理,分别得到处理后降雨数据、处理后流量数据以及处理后位置信息;基于处理后降雨数据、处理后先验降雨数据以及处理后位置信息,形成网格化降雨数据;基于网格化降雨数据,利用预先训练得到的基于深度学习的洪水流量预测模型的第一分支网络提取空间分布特征,以及提取历史t小时和未来p小时的降雨数据的时序特征,得到第一输出特征;基于处理后流量数据,利用基于深度学习的洪水流量预测模型的第二分支网络提取历史t小时的流量数据的时序特征,得到第二输出特征;利用基于深度学习的洪水流量预测模型的第三网络对第一输出特征以及第二输出特征进行合并分类预测,得到目标水文站点未来p小时的流量预测值,其中,基于深度学习的洪水流量预测模型包括串联的分支网络组和第三网络,分支网络组包括并联的第一分支网络和第二分支网络,n、k、t和p均为大于1的自然数,且t小于等于k年对应的小时数。其中,本发明实施例提供的基于深度学习的洪水流量预测系统即为第一方面的系统。相关具体内容参见第一方面的一种基于深度学习的洪水流量预测系统的内容,在此不再赘述。本发明实施例所提供的方案中,利用各水文站点的位置信息,将历史降雨数据和未来先验降雨数据进行网格化,从而引入降雨的空间分布信息,并将网格化降雨数据,利用预先训练的基于深度学习的洪水流量预测模型的分支网络之一提取空间分布特征和时序特征;将历史流量数据利用基于深度学习的洪水流量预测模型的分支网络之另一进行时序特征提取,通过对两分支网络的输出特征进行合并分类预测,可以得到未来一个时间段的洪水流量预测值。本发明实施例提出的预测方法可以一次性得到未来一个时间段的洪水流量预测结果,该结果考虑到降雨量的空间分布情况,因此能够充分挖掘实际降雨数据所描述的信息,得到与实际降雨情况相符的预测结果,预测的准确性较高。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属
技术领域
的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1