一种水库水位时间序列预测方法与系统与流程

文档序号:25523423发布日期:2021-06-18 20:11阅读:127来源:国知局
一种水库水位时间序列预测方法与系统与流程

本申请涉及水利水电技术领域,特别是涉及一种水库水位时间序列预测方法与系统。



背景技术:

水库水位上涨是洪水来临前的体现,预测水库水位时间序列可以及时获知洪水信息,提醒相关人员在洪水来临前做好相应的准备,以此避免不必要的人员伤亡和钱财损失。然而,水库水位时间序列受历史面雨量、历史蒸发量、历史水库流量、历史实测水位等因素影响,呈现出不稳定和非线性的特征。现有的水位预测方法信息挖掘能力不足,无法准确预测受多变量影响的不稳定和非线性水库水位时间序列。因此,选择合适的人工智能方法是预测水位时间序列的关键。

长短期记忆网络(longshort-termmemory,lstm)是一种具有反馈连接结构的递归神经网络,由四个门控系统组成,并通过引入巧妙的可控自循环,产生让梯度能够得以长时间可持续流动的路径,这使得它对多变量的长时间序列处理能力较强,能够在更长的时期内跟踪信息,属于深度学习模型。但传统lstm门控系统中的记忆细胞会存储与当前时间步骤不相关的记忆,导致预测模型鲁棒性弱,预测精度降低。



技术实现要素:

基于此,有必要针对传统水库水位时间序列预测方法应用长短期记忆网络时,传统长短期记忆网络门控系统中的记忆细胞会存储与当前时间步骤不相关的记忆,导致预测模型鲁棒性弱,预测精度降低问题,本申请提供一种水库水位时间序列预测方法与系统。

本申请提供一种水库水位时间序列预测方法,所述方法包括:

获取多个影响水位变化的历史因素,以及每一个历史因素对应的历史时间序列数据,基于每一个历史因素对应的历史时间序列数据,生成高维时间序列数据集;

对高维时间序列数据集进行预处理;

将一个长短期记忆网络模型嵌入另一个长短期记忆网络模型的内部,并替换另一个长短期记忆网络模型的记忆细胞,以构建嵌套长短期记忆网络模型,将预处理后的高维时间序列数据集输入至所述嵌套长短期记忆网络模型,输出未来水库时间序列数据集。

本申请还提供一种水库水位时间序列预测系统,所述系统包括:

嵌套长短期记忆网络模型;

服务器,与嵌套长短期记忆网络模型通信连接,用于执行如前述内容提及的水库水位时间序列预测方法。

本申请涉及一种水库水位时间序列预测方法与系统,通过将一个长短期记忆网络模型嵌入另一个长短期记忆网络模型的内部,并替换另一个长短期记忆网络模型的记忆细胞,形成一个嵌套形式的长短期记忆网络模型,改变了长短期记忆网络模型内部的存储记忆方式,在访问嵌套长短期记忆网络模型内部的记忆细胞时,又以同样的方式被门控,使得嵌套长短期记忆网络模型能够指导性的记忆遗忘和记忆选择使之更适用于处理多维度,多变量的水库水位时间序列数据,以此解决传统水库水位时间序列预测方法出现的信息能力挖掘不足,以及存储不相关记忆导致预测模型鲁棒性弱,预测精度降低的问题。

附图说明

图1为本申请一实施例提供的水库水位时间序列预测方法的流程示意图;

图2为本申请一实施例提供的水库水位时间序列预测系统的结构示意图;

图3为本申请一实施例提供的单个长短期记忆网络模型的结构示意图;

图4为为本申请一实施例提供的嵌套长短期记忆网络模型的结构示意图。

具体实施方式

为了使本申请的目的.技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供一种水库水位时间序列预测方法。需要说明的是,本申请提供的水库水位时间序列预测方法可以应用于一种水库水位时间序列预测系统。所述水库水位时间序列预测系统可以包括一个嵌套长短期记忆网络模型和一个服务器,二者相互通信连接。

此外,本申请提供的水库水位时间序列预测方法不限制其执行主体。可选地,本申请提供的水库水位时间序列预测方法的执行主体的可以为水库水位时间序列预测系统中的服务器。

如图1所示,在本申请的一实施例中,所述水库水位时间序列预测方法包括如下s100至s300:

s100,获取多个影响水位变化的历史因素,以及每一个历史因素对应的历史时间序列数据。基于每一个历史因素对应的历史时间序列数据,生成高维时间序列数据集。

具体地,水库水位由多个历史因素影响,例如水库的历史面雨量,历史蒸发量等。那么本步骤中,服务器中存储了每一个历史时间内的每一个历史因素对应的历史时间序列数据。例如,以历史面雨量为例,服务器中会存储30天内,每一天对应的水库的历史面雨量,这样就组成了历史面雨量对应的历史时间序列数据,可以看出,这是在一个维度上横向(时间)展开的数据团。

服务器为了节省存储空间,会将各个历史因素对应的历史时间序列数据,归入一个高维时间序列数据集,相当于聚合了各个历史因素的历史时间序列数据,每一个历史因素为一个维度。高维时间序列数据集虽然是一个数据集,里面包含了散落的数据,但是在整体上,也可以看做是一个数据团,而且是一个不但在横向(时间)上展开的数据团,而且在纵向(维度,也就是历史因素)上展开的数据团,因此,这也是一个高维的数据团。

s200,对高维时间序列数据集进行预处理。

具体地,预处理的目的是简化数据,去除高维时间序列数据集中的噪音,便于后续高维时间序列数据集的训练。

s300,将一个长短期记忆网络模型嵌入另一个长短期记忆网络模型的内部,并替换另一个长短期记忆网络模型的记忆细胞,以构建嵌套长短期记忆网络模型,将预处理后的高维时间序列数据集输入至所述嵌套长短期记忆网络模型,输出未来水库时间序列数据集。

具体地,图3是单个长短期记忆网络模型的结构示意图。图4是嵌套长短期记忆网络模型的结构示意图。可以看出,嵌套长短期记忆网络模型由两个长短期记忆网络模型组成,是将一个长短期记忆网络模型嵌入另一个长短期记忆网络模型的内部,并替换另一个长短期记忆网络模型的记忆细胞而形成的。

预处理后的高维时间序列数据集是训练数据。具体地,模型构建完毕后,将预处理后的高维时间序列数据集作为训练数据,对嵌套长短期记忆网络模型进行训练。最终训练后的嵌套长短期记忆网络模型可以输出未来水库时间序列数据集。

本实施例中,通过将一个长短期记忆网络模型嵌入另一个长短期记忆网络模型的内部,并替换另一个长短期记忆网络模型的记忆细胞,形成一个嵌套形式的长短期记忆网络模型,改变了长短期记忆网络模型内部的存储记忆方式,在访问嵌套长短期记忆网络模型内部的记忆细胞时,又以同样的方式被门控,使得嵌套长短期记忆网络模型能够指导性的记忆遗忘和记忆选择使之更适用于处理多维度,多变量的水库水位时间序列数据,以此解决传统水库水位时间序列预测方法出现的信息能力挖掘不足,以及存储不相关记忆导致预测模型鲁棒性弱,预测精度降低的问题。

在本申请的一实施例中,所述历史因素包括历史面雨量、历史蒸发量、历史水库流量和历史实测水位中的一种或多种。

具体地,历史因素可以不限制于上述所列举的历史面雨量、历史蒸发量、历史水库流量和历史实测水位,还可以是其他任何可以影响水库水位变化的历史因素。

在本申请的一实施例中,所述s200包括如下s210至s230:

s210,对高维时间序列数据集进行标准化处理,生成标准化处理后的高维时间序列数据集。

s220,对标准化处理后的高维时间序列数据集进行降维处理,生成降维处理后的时间序列数据集。

s230,对降维处理后的时间序列数据集进行相空间重构,生成重构后的时间序列数据集。

具体地,本实施例介绍了对高维时间序列数据集的预处理的详细步骤,分别是标准化处理、降维处理和相空间重构。

本实施例中,通过数据标准化防止后续嵌套长短期记忆网络模型的训练结果发散。通过降维处理在压缩高维时间序列数据集中的数据的同时让信息损失最小化。通过相空间重构构造最终的时间序列数据集,可以获取水库水位不同时间点的精准变化信息。

在本申请的一实施例中,所述s210包括如下步骤:

s211,基于公式1,对高维时间序列数据集中的数据进行数据标准化,得到标准化处理后的高维时间序列数据集。

其中,x为标准化处理后的高维时间序列数据集。n为影响水位变化的历史因素的总数。xn为标准化处理后的高维时间序列数据集中每一个历史因素对应的时间序列数据。为高维时间序列数据集中一个历史因素对应的时间序列数据。为高维时间序列数据集中一个历史因素下所有时间序列数据的平均数。为高维时间序列数据集中一个历史因素下所有时间序列数据的标准差。

具体地,标准化的目的就是把每一个历史因素下不同时间节点对应的数据进行标准化,然后在置入一个集合,这样可以实现数据的去发散化,简化数据。

本实施例中,通过数据标准化可以防止后续嵌套长短期记忆网络模型的训练结果发散。

在本申请的一实施例中,所述s220包括如下s221至s227:

s221,将标准化处理后的高维时间序列数据集映射至高维特征空间f,生成映射数据集。标准化处理后的高维时间序列数据集和映射数据集如公式2所示。

其中,x为标准化处理后的高维时间序列数据集。φ(xi)为映射数据集。

s222,构建映射数据集的协方差矩阵,以及构建映射数据集的协方差矩阵的特征值和特征向量的关系式。关系式如公式2所示。

其中,c为映射数据集的协方差矩阵。λ为映射数据集的协方差矩阵的特征值。v为映射数据集的协方差矩阵的特征向量。φ(xi)为映射数据集。i为影响水位变化的历史因素的序号。n为影响水位变化的历史因素的总数。

s223,依据公式3推导得出公式4。

其中,αi为方程系数。v为映射数据集的协方差矩阵的特征向量。φ(xi)为映射数据集。i为影响水位变化的历史因素的序号。

s224,定义一个n×n的矩阵kij。

s225,定义σ为协方差矩阵中所有数据的标准差。将公式4和公式5代入公式3后化简得到公式6。

nλα=kα公式6

其中,α为i个αi组成的列向量。

s226,对映射数据集的协方差矩阵的特征向量v进行归一化,求取样本φ(xi)在v上的映射。所述样本φ(xi)在v上的映射如公式7所示。

其中,ti(x)为样本φ(xi)在v上的映射。

s227,将ti(x)作为降维处理后的时间序列数据集。

具体地,本实施例中,利用这个高斯核核函数,进行kpca数据降维,可以去掉不重要的历史因素,提高后续嵌套长短期记忆网络模型的预测精度,实现了对标准化处理后的高维时间序列数据集进行降维并让信息损失最小化。

在本申请的一实施例中,所述s230包括如下步骤:

s231,设定重构维数和时延,对降维处理后的时间序列数据集ti(x)进行相空间重构,生成重构后的时间序列数据集(x,y)。重构后的时间序列数据集(x,y)的形式如公式8所示。

其中,m为重构维数。tau为时延。n为矩阵中每一行的数据总数。

具体地,本实施例采用多维数据重构方法,获取水库水位不同时间节点的变化信息,以此获得合适的训练集和测试集。无论是训练集和测试集,在预测时,通过x预测y实现训练与测试。

在本申请的一实施例中,所述s300包括如下s310至s380:

s310,构建嵌套长短期记忆网络模型,所述嵌套长短期记忆网络模型由两个长短期记忆网络模型嵌套形成。

s320,初始化所述嵌套长短期记忆网络模型的模型参数,设置误差阈值。

s330,将重构后的时间序列数据集(x,y)输入至所述嵌套长短期记忆网络模型。

s340,控制所述嵌套长短期记忆网络模型进行前向计算。

s350,定义所述嵌套长短期记忆网络模型的损失函数。

s360,依据所述损失函数调整嵌套长短期记忆网络模型中各个结构的权重矩阵,生成调整后的嵌套长短期记忆网络模型。

s370,运行调整后的嵌套长短期记忆网络模型,获取调整后的嵌套长短期记忆网络模型的输出层输出的未来水库时间序列数据集,计算输出层输出的未来水库时间序列数据集和实际数据集的误差,并判断误差是否小于误差阈值。

s380,若误差小于误差阈值,则输出所述输出层输出的未来水库时间序列数据集。

具体地,s310中,具体地,是将一个长短期记忆网络模型嵌入另一个长短期记忆网络模型的内部,并替换另一个长短期记忆网络模型的记忆细胞,以构建嵌套长短期记忆网络模型。

s310至s360是嵌套长短期记忆网络模型的训练过程。

s370是嵌套长短期记忆网络模型的输出结果的误差排除过程。

在本申请的一实施例中,所述s340包括如下s341至s349:

s341,依据公式9计算嵌套长短期记忆网络模型中遗忘门的表达式。

ft=σ(wfxxt+wfhht-1+bf)公式9

其中,ft为遗忘门。σ为sigmoid函数。wfx为第一遗忘门权重矩阵。wfh为第二遗忘门权重矩阵。bf为遗忘门的偏置。xt为当前输入。ht-1为上一轮的隐藏状态。

s342,依据公式10计算嵌套长短期记忆网络模型中输入门的表达式。

it=σ(wixxt+wihht-1+bi)公式10

其中,it为输入门。σ为sigmoid函数。wix为第一输入门权重矩阵。wih为第二输入门权重矩阵。bi为输入门的偏置。xt为当前输入。ht-1为上一轮的隐藏状态。

s343,依据公式11计算嵌套长短期记忆网络模型中输出门的表达式。

ot=σ(woxxt+wohht-1+bo)公式11

其中,ot为输出门。σ为sigmoid函数。wox为第一输出门权重矩阵。woh为第二输出门权重矩阵。bo为输出门的偏置。xt为当前输入。ht-1为上一轮的隐藏状态。

s344,依据公式12计算嵌套长短期记忆网络模型中候选记忆细胞的表达式。

其中,为候选记忆细胞。bc为候选记忆细胞的偏置。wcx为第一候选记忆细胞权重矩阵。wch为第二候选记忆细胞权重矩阵。xt为当前输入。ht-1为上一轮的隐藏状态。

s345,依据公式13计算嵌套长短期记忆网络模型中记忆细胞的表达式。

其中,ct为记忆细胞。ct-1为上一轮的记忆细胞。ft为遗忘门。it为输入门。

s346,依据公式14计算嵌套长短期记忆网络模型的新一轮的隐藏状态。

ht=ot×tanh(ct)公式14

其中,ht为新一轮的隐藏状态。ot为输出门。ct为记忆细胞。

s347,依据公式15计算嵌套长短期记忆网络模型中内部模型的上一轮的隐藏状态,以及嵌套长短期记忆网络模型中内部模型的输入。

其中,为嵌套长短期记忆网络模型中内部模型的上一轮的隐藏状态。为嵌套长短期记忆网络模型的内部输入。ft为遗忘门。ct-1为上一轮的记忆细胞。it为输入门为候选记忆细胞。

s348,依据公式16更新嵌套长短期记忆网络模型中的外部记忆细胞。将嵌套长短期记忆网络模型中内部模型的新一轮的隐藏状态的值赋予给嵌套长短期记忆网络模型中的外部记忆细胞。

其中,ct为记忆细胞。为嵌套长短期记忆网络模型中内部模型的新一轮的隐藏状态。

s349,依据公式17计算嵌套长短期记忆网络模型的输出层输出的未来水库时间序列数据集。

yt=σ(wyhht)公式17

其中,yt为未来水库时间序列数据集。σ为singmoid函数。wyh为输出层权重矩阵。ht为新一轮的隐藏状态。

具体地,如图3所示,单个长短期记忆网络模型中的xt是模型的输入,ht是模型的输出。

而如图4所示,在嵌套长短期记忆网络模型中,嵌套长短期记忆网络模型包括外围模型和内部模型。外围模型和内部模型均是长短期记忆网络模型。内部模型作为外围模型的记忆细胞ct而存在。

公式9至公式12均是外围模型的参数计算。外围模型的参数特点是参数符号不带上横线。通过公式9至公式12的计算后,上一轮的记忆细胞ct-1,遗忘门ft,输入门it这四个数据均计算完毕。

如果没有内部模型,外围模型的记忆细胞ct,应当由上一轮的记忆细胞ct-1,遗忘门ft,输入门it这四个数据通过公式13计算。然后外围模型再通过公式14输出计算结果ht,即新一轮的隐藏状态。本实施例列举公式13和公式14也是嵌套长短期记忆网络模型训练是的必然触发的外围模型的计算步骤。

然而,由于嵌套长短期记忆网络模型的结构特殊,导致外围模型的记忆细胞ct,以及计算结果ht的计算过程没有那么简单。上一轮的记忆细胞ct-1,遗忘门ft,输入门it这四个数据需要输入至内部模型中继续进行计算。内部模型内部再次执行一系列运算,依据上一轮的记忆细胞ct-1,遗忘门ft,输入门it这四个数据计算内部模型的上一轮的隐藏状态以及内部模型的输入请参见公式15。都是内部模型的参数。内部模型的参数特点是参数符号带有一个上横线,可以配合图4理解本段文字阐述的内容。

进一步的,在内部模型中,基于相同的模型结构,和相同的算法,可以基于内部模型的上一轮的隐藏状态以及内部模型的输入得到内部模型输出的新一轮的隐藏状态将内部模型输出的新一轮的隐藏状态的值作为外围模型的记忆细胞ct的值,就可以得到外围模型的真正的输出结果ht,参见公式16。

最后可以推导出外围模型输出层输出的未来水库时间序列数据集的表达式,参见公式17。

本实施例中,通过在外围的长短期记忆网络模型内部嵌套一个内部的长短期记忆网络模型,作为外围模型的记忆细胞,改变了外围的长短期记忆网络模型内部存储记忆方式,使整个嵌套长短期记忆网络模型更适用于处理多变量的长水库水位时间序列,以此解决传统技术出现的信息能力挖掘不足和存储不相关记忆问题。

在本申请的一实施例中,所述s350包括如下步骤:

s351,依据公式18定义嵌套长短期记忆网络模型的损失函数。

其中,et为t时刻的误差。e为总误差。yt为输出层输出的未来水库时间序列数据集。为目标数据集。t是总时间长度。

具体地,本实施例只是列举了一种损失函数的设定方法,并不对本申请可能用到的其他损失函数的设定方法产生限制。

在本申请的一实施例中,所述s360包括如下s361至s366:

s361,依据公式19计算权重梯度。

其中,et为t时刻的误差。e为总误差。wfx为第一遗忘门权重矩阵。

s362,依据公式20调整输出层权重矩阵。

其中,为调整后的输出层权重矩阵。为输出层的残差。ht为嵌套长短期记忆网络模型的新一轮的隐藏状态。为输出层权重矩阵的偏导。α为模型训练速度参数。

s363,依据公式21调整第一遗忘门权重矩阵和第二遗忘门权重矩阵。

其中,为遗忘门的残差。xt为当前输入。ht-1为上一轮的隐藏状态。为第一遗忘门权重矩阵的偏导。为第二遗忘门权重矩阵的偏导。α为模型训练速度参数。为调整后的第一遗忘门权重矩阵。为调整后的第二遗忘门权重矩阵。

s364,依据公式22调整第一输入门权重矩阵和第二输入门权重矩阵。

其中,为输入门的残差。xt为当前输入。为第一输入门权重矩阵的偏导。为第二输入门权重矩阵的偏导。ht-1为上一轮的隐藏状态。为调整后的第一输入门权重矩阵。为调整后的第二输入门权重矩阵。α为模型训练速度参数。

s365,依据公式23调整第一输出门权重矩阵和第二输出门权重矩阵。

其中,为输出门的残差。xt为当前输入。为第一输出门权重矩阵的偏导。为第二输出门权重矩阵的偏导。ht-1为上一轮的隐藏状态。为调整后的第一输出门权重矩阵。为调整后的第二输出门权重矩阵。α为模型训练速度参数。

s366,依据公式24调整第一候选记忆细胞矩阵和第二候选记忆细胞矩阵;

其中,为候选记忆细胞的残差。xt为当前输入。为第一候选记忆细胞矩阵的偏导。为第二候选记忆细胞矩阵的偏导。ht-1为上一轮的隐藏状态。为调整后的第一候选记忆细胞矩阵。为调整后的第二候选记忆细胞矩阵。α为模型训练速度参数。

具体地,可以理解,本实施例是调整嵌套长短期记忆网络模型中各个重要结构的矩阵的偏导,这些结构有输入门,输出门,输出层和候选记忆细胞。本实施例相当于调整了嵌套长短期记忆网络模型的模型参数。

本申请还提供一种水库水位时间序列预测系统。

如图2所示,在本申请的一实施例中,所述水库水位时间序列预测系统包括嵌套长短期记忆网络模型100和服务器200。所述服务器200与嵌套长短期记忆网络模型100通信连接。所述服务器200用于执行前述任意一个实施例中提及的水库水位时间序列预测方法。

需要说明的是,本实施例提供的水库水位时间序列预测系统可以应用前述提及的水库水位时间序列预测方法,因此,为了描述简洁,前述水库水位时间序列预测方法和本实施例提供的水库水位时间序列预测系统中出现的相同设备或部件,统一在本实施例中进行标号,方法部分的相同设备或部件不进行标号。

以上所述实施例的各技术特征可以进行任意的组合,各方法步骤也并不做执行顺序的限制,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1