法律状态公告日
法律状态信息
法律状态
2022-09-02
实质审查的生效 IPC(主分类):G06Q10/04 专利申请号:2022104736305 申请日:20220429
实质审查的生效
技术领域
本发明涉及一种基于鲸鱼优化算法和长短时记忆网络的水位预测方法,属于水文预测技术领域。
背景技术
随着科学技术的发展,深度学习被广泛运用于时间序列分析中,并且取得了良好的效果。水文数据受到多方面因素:降雨量、上游水位、水流量、季节等的影响,因而表现出复杂、不确定等特性,对水文时间序列的研究也受到这些因素的干扰。长短时记忆网络(LSTM)能够学习水文时间序列中长期的依赖信息,并且其结构中存在的门单元可以控制对时间序列的记忆,被广泛运用于水文时间序列预测中。采用LSTM对水文时间序列进行预测,能够更好的分析水文数据中蕴含的规律,对于防洪以及流域的协同调度有重要意义。
在LSTM神经网络构建的过程中,神经网络的结构对其预测结果和预测效率有很大的影响,利用智能优化算法对神经网络的参数进行动态调整可以提升其预测效率。鲸鱼优化算法(WOA)是2016年提出的新型群体智能优化算法。它模拟了座头鲸捕猎时使用的气泡网觅食法,具有操作简单、参数少的优点,在神经网络结构优化方面有广泛的应用。同时,它也存在着求解精度低、收敛速度慢和易陷入局部最优的问题。
发明内容
发明目的:针对现有水位预测技术的不足以及水位时间序列表现出的复杂、不确定的特点,本发明提供一种基于鲸鱼优化算法和长短时记忆网络的水位预测方法。利用长短期记忆网络来捕捉时序数据中长时依赖的同时,引入注意力机制自适应地关注每个时间单位中的不同特征,并使用双层LSTM来获取水文时间序列中的信息。针对长短时记忆网络参数复杂,网络结构影响预测精度的问题,采用改进的鲸鱼优化算法对建立的水位预测模型进行参数优选,提高计算效率和预报精度。
技术方案:一种基于鲸鱼优化算法和长短时记忆网络的水位预测方法,包括以下步骤:
步骤1:获取预测对象的基本信息数据,包括水文站的水位、水势、流量和上游水位数据,对数据进行预处理。
步骤2:构建添加注意力机制的双层长短时记忆网络预测模型。
步骤3:执行改进鲸鱼优化算法对预测模型的参数进行动态优化。使用优化后的鲸鱼优化算法对步骤2中的预测模型中的第一层LSTM隐藏层节点数、第二层LSTM隐藏层节点数、全连接层节点数、学习率、批处理数量和迭代次数进行动态参数优化。
步骤4:将预测模型的最优参数带入预测模型中,输入预测对象的基本信息数据,进行水位预测,得到最终的预测结果。
所述步骤1中使用的数据预处理方法是:对缺失的数据采用公式(1)进行线性插值,对水位值采用公式(2)进行标准化处理,即最大最小归一化。
其中,(x
其中,X
所述步骤2中建立的添加注意力机制的双层长短时记忆网络模型(ALSTM),包括输入层、第一层LSTM、注意力层、第二层LSTM、全连接层与输出层这6个部分。将注意力机制添加进两层长短时记忆网络之间,通过注意力机制判断各时间步不同特征的重要程度,使得不同时刻的输入向量自适应选择相关程度不同的特征,以提升预测结果的准确性。第二层长短时记忆网络能够提高预测精度,学习高级别的时间特征,它同时还有助于逐步建立输入序列数据的更高级别的表示。添加的注意力层的表达式如公式(3)-(6)所示。
a=softmax(ω
其中,X=[X
所述步骤3中采用的改进鲸鱼优化算法对预测模型的参数进行动态优化,包括以下步骤:
步骤3.1:设置步骤2中建立的预测模型的初始值,包括第一层LSTM隐藏层的神经元的数量和第二层LSTM隐藏层的神经元的数量、全连接神经元数量、学习率、批处理数量、迭代次数的最大边界值和最小边界值,利用鲸鱼优化算法对上述预测模型预设的初始值进行编码;
步骤3.2:初始化鲸鱼优化算法中的种群个数N,最大迭代次数T
步骤3.3:采用非线性收敛因子进行种群更新;
步骤3.4:将更新后的种群参数信息传入步骤2的预测模型中,计算适应度的值,如果适应度值相对当前适应度值更小,则覆盖当前最优解和适应度值。如果更大则保留当前的最优解和对应的适应度。
步骤3.5:判断训练次数是否达到最大迭代次数T
步骤3.2提到的反向学习方法初始化种群表达式为(7)所示。
其中,Y
步骤3.2提到的个体排序方法将种群个体进行分层排序,根据个体间的关系,将种群中的个体分为L层,相同层的个体有相同的秩,记为Level
其中,Dis(i)表示个体的拥挤距离,第i个个体的拥挤距离初值设置为0,f
所述步骤3.3提到的非线性收敛因子计算表达式如公式9所示。
其中,T
一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行上述计算机程序时实现如上所述的基于鲸鱼优化算法和长短时记忆网络的水位预测方法。
一种计算机可读存储介质,该计算机可读存储介质存储有执行如上所述的基于鲸鱼优化算法和长短时记忆网络的水位预测方法的计算机程序。
有益效果:与现有技术相比,本发明具有以下优点:
(1)本发明在构建预测模型时,在双层长短时记忆网络之间引入注意力机制计算每个时间单位的不同特征的权重值,根据权重使得模型对每个特征的关注程度不同,模型的预测更加精确。
(2)本发明对鲸鱼优化算法从初始化种群和收敛因子两个方面进行优化,提高了模型的收敛速度,保证了算法全局搜索能力和局部搜索能力的平衡。
附图说明
图1为本发明实施例提供的整体工作流程图;
图2为本发明实施例中添加注意力机制的双层长短时记忆网络(ALSTM)预测模型结构示意图;
图3为本发明实施例中的改进鲸鱼优化算法(IWOA)的工作流程图;
图4为本发明实施例中改进鲸鱼优化算法优化预测模型的模型结构图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,基于鲸鱼优化算法和长短时记忆网络的水位预测方法,其具体步骤如下:
步骤1:获取预测对象的基本信息数据,包括水文站的水位、水势、流量和上游水位数据,对数据进行预处理;
步骤2:构建添加注意力机制的双层长短时记忆网络预测模型;
步骤3:执行改进鲸鱼优化算法对模型的参数进行动态优化。对鲸鱼优化算法进行改进,主要从初始化种群和设置非线性收敛因子两个方面改进。对步骤2中构建的网络使用改进后的鲸鱼优化算法对模型中的第一层LSTM隐藏层节点数、第二层LSTM隐藏层节点数、全连接层节点数、学习率、批处理数量和迭代次数进行动态参数优化;
步骤4:将模型的最优参数带入模型中,输入预测对象的基本信息数据,进行水位预测,得到最终的预测结果。
步骤1采用公式(1)对缺失的水位数据进行插值处理,采用公式(2)对水位数据进行标准化处理;
其中,(x
其中,X
步骤2中添加注意力机制的双层长短时记忆网络预测模型依次包括输入层、第一层LSTM、注意力层、第二层LSTM、全连接层与输出层这6个部分。输入层将各属性元素组成特征向量序列,并将该序列输入第一层LSTM神经网络中。第一层LSTM用来获取输入的特征向量序列到记忆单元和隐藏层的状态。注意力层根据第一层LSTM获取的状态进行权重计算,并得到新的特征向量序列。第二层LSTM对注意力层得到的特征向量序列进行训练得到预测序列。全连接层将第二层LSTM的预测序列转化为特定形式的序列,输出层将根据全连接层的特定形式序列输出预测结果。
设计结构描述如下:
输入层输入的是预处理后的由预测时刻前12个时间片的水位、水势、流量、上游水位等属性元素组成的特征向量序列[X
在注意力层中,通过对输入特征向量序列X=[X
a=softmax(ω
其中,ω
图3为改进的鲸鱼优化算法(IWOA)优化预测模型(ALSTM)的工作结构图,具体优化步骤如下:
步骤3.1:设置预测模型LSTM隐藏层神经元的数量、全连接神经元数量、学习率、批处理数量、迭代次数的最大边界值和最小边界值,改进鲸鱼优化算法(IWOA)对初始值进行编码;
步骤3.2:初始化IWOA算法中的种群个数N,最大迭代次数T
步骤3.3:进行IWOA种群更新;
步骤3.4:将更新后的种群参数信息传入添加注意力机制的双层长短时记忆网络(ALSTM)中,计算适应度的值,如果适应度值更小,则覆盖当前最优解和适应度值。如果更大则保留当前的最优解和对应的适应度。
步骤3.5:判断训练次数是否达到最大迭代次数T
步骤3.6:根据得到的最优ALSTM超参数建立ALSTM,对水文时间序列进行预测和分析。
图4为步骤3.2和3.3所述的改进鲸鱼优化算法的工作流程图,具体包括以下步骤:
步骤3.2.1:初始化算法中的种群个数N,最大迭代次数T
步骤3.2.2:计算出初始种群的反向种群,反向种群计算表达式为公式(7),将初始化种群和反向种群合并为2N的种群,使用分层排序和拥挤距离排序对种群中的个体进行排序,排序表达式为公式(8),筛选出前N个个体作为新种群;
其中,Y
将种群个体进行分层排序,根据个体间的关系,将种群中的个体分为L层,相同层的个体有相同的秩,记为Level
其中,Dis(i)表示个体的拥挤距离,第i个个体的拥挤距离初值设置为0,f
步骤3.2.3:根据种群中个体的适应度值确定种群的最优个体,并设置迭代数t为1。
步骤3.2.4:进入循环,根据公式(9)设置收敛因子
其中,T
步骤3.2.5:更新个体位置信息,得到子代种群。
步骤3.2.6:重新计算子代种群中每个个体的适应度值,进行排序得到种群中的最优个体。
步骤3.2.7:判断算法循环是否达到最大迭代次数T
步骤3.2.8:输出最优解,结束。
步骤3.2.3中个体适应度使用均方根误差(RMSE),它用来衡量观测值和真实值的偏差,值越小表示预测的准确率越高,如公式(10)所示。
n表示水位数据样本的数量,y
根据以上实施例可知,本发明实现了一种基于鲸鱼优化算法和长短时记忆网络的水位预测方法,在双层长短时记忆网络中嵌入注意力模块,实现对水位的预测。为了获得更精确的模型,使用改进鲸鱼优化算法对预测模型的参数进行动态调整,优化预测模型的结构,进而实现对水位数据的精确预测。
显然,本领域的技术人员应该明白,上述的本发明实施例的基于鲸鱼优化算法和长短时记忆网络的水位预测方法各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
机译: 基于IP协议的分组交换网络中基于线性预测的语音信号编解码传输帧长确定方法
机译: 基于模糊神经网络的水平预测和控制水位的方法
机译: 基于模糊神经网络的系列输水渠道水位预测与控制方法