基于海洋捕食者算法优化的长短期记忆神经网络径流预测

2021-03-05 08:18胡顺强崔东文
中国农村水利水电 2021年2期
关键词:降维捕食者径流

胡顺强,崔东文

(1.云南省文山州水利电力勘察设计院,云南 文山 663000;2.云南省文山州水务局,云南 文山 663000)

提高水文预测预报精度目前仍是一项具有挑战性的工作。近年来,BP等[1-5]人工神经网络、支持向量机[6,7]、随机森林[8,9]、极限学习机[10]、自适应神经模糊推理系统[11]等有别于传统回归分析的模型及方法已在径流预测研究中得到应用。相较于其他方法,BP神经网络和支持向量机(Support Vector Machines,SVM)在径流预测研究中应用最为广泛。在实际应用中,BP神经网络存在收敛速度慢、易陷入局部最优等不足,同时面临权阈值参数、网络结构、隐含层传递函数、输出层传递函数、训练函数等选取的困难;SVM存在如何选取合适的惩罚因子、核函数参数、不敏感系数和交叉验证折数来防止模型过拟合导致预测精度不高等不足。长短期记忆(Long-Short Term Memory,LSTM)神经网络属循环神经网络 (Recurrent Neural Network,RNN)的改进网络,其有效克服了RNN结构中存在的梯度消失等缺点,适合处理和预测时间序列中间隔和延迟相对较长等问题,目前已在问题分类[12]、地下水水位预测[13]、网络流量预测[14]、股票价格预测[15]等领域得到应用,但鲜见于径流预测研究。在实际应用中,LSTM存在隐含层神经元数、训练次数、学习速率等关键参数难以确定的困难。目前除遗传算法(GA)[16]、粒子群优化(PSO)算法[17,18]尝试用于LSTM关键参数寻优外,普遍采用试凑的方法确定LSTM隐含层神经元数等关键参数,不但费时费力,且精度不高。

为拓展LSTM应用领域和提高径流预测精度,本文内容安排如下:①介绍海洋捕食者算法(Marine Predators Algorithm,MPA),在不同维度条件下选取6个仿真函数对MPA、PSO算法进行测试;②通过主分量分析(Principal Component Analysis,PCA)对原始径流序列进行降维和不降维处理,采用MPA优化LSTM隐含层神经元数、训练次数、学习速率和梯度阈值,建立PCA-MPA-LSTM、MPA-LSTM径流预测模型,并构建PCA-LSTM、LSTM、PCA-MPA-支持向量机(Support Vector Machines,SVM)、MPA-SVM、PCA-MPA-BP、MPA-BP作对比模型;③基于云南省落却站年径流预测实例对所建立的8种模型对进行预测及对比分析,进一步验证MPA与LSTM整合模型用于年径流预测的可行性。

1 预测模型

1.1 海洋捕食者算法(MPA)

1.1.1 MPA描述

海洋捕食者算法(Marine Predators Algorithm,MPA)是Afshin Faramarzi等人于2020年提出的一种新型元启发式优化算法,其灵感来源于海洋适者生存理论,即海洋捕食者通过在Lévy游走或布朗游走之间选择最佳觅食策略。参考文献[11,19],MPA优化过程数学描述如下:

(1)初始化阶段。与大多数元启发式算法类似,MPA随机在搜索空间范围内初始化猎物位置来启动优化过程。数学描述如下:

X0=Xmin+rand(Xmax-Xmin)

(1)

式中:Xmax、Xmin为搜索空间范围;rand( )为[0,1]内的随机数。

(2)MPA优化阶段。在迭代初期,当捕食者速度比猎物速度快时,基于勘探策略的MPA优化过程数学描述如下:

(2)

式中:stepsice为移动步长;RB为呈正态分布的布朗游走随机向量;Elitei为由顶级捕食者构造的精英矩阵;Preyi为与精英矩阵具有相同维数的猎物矩阵;⊗为逐项乘法运算符;P等于0.5;R为[0,1]内均匀随机向量;n为种群规模;Iter、Max_Iter分别为当前和最大迭代次数。

在迭代中期,当捕食者与猎物速度相同时,猎物基于Lévy游走策略负责开发;捕食者基于布朗游走策略负责勘探,并逐渐由勘探策略转向开发策略。开发和勘探的数学描述如下:

(3)

(4)

式中:RL为呈Lévy分布的随机向量;CF=(1-Iter/Max_Iter)(2·Iter/Max_Iter),为控制捕食者移动步长的自适应参数;其他参数意义同上。

在迭代终期,当捕食者速度比猎物速度慢时,捕食者基于Lévy游走采用开发策略。其数学描述如下:

(5)

式中:其他参数意义同上。

(3)FADs效应或涡流。鱼类聚集装置(FADs)或涡流效应通常改变海洋捕食者觅食行为,这一策略能使MPA在寻优过程中克服早熟收敛问题,逃离局部极值。其数学描述如下:

Preyi=

(6)

式中:FADs为影响概率,取0.2;U为二进制向量;r为[0,1]内随机数;r1、r2分别为猎物矩阵的随机索引。

1.1.2 MPA仿真验证

选取文献[20]中Sphere等 6个典型测试函数在10维、30维、50维、100维和500维条件下对MPA、PSO进行仿真验证。其中,单峰函数主要测试MPA、PSO的寻优精度,多峰函数主要测试MPA、PSO的全局搜索能力,并利用20次寻优平均值对MPA、PSO寻优性能进行评估,见表1。算法参数设置如下:MPA、PSO算法最大迭代次数Max_iter=500,种群规模n=100。其中,MPA算法FADs效应系数=0.2,常量P=0.5;PSO算法惯性权重wmax、wmin分别取值0.9和0.6。

从表1可以得出:对于单峰函数,MPA在不同维度条件下寻优精度较PSO算法提高6个数量级以上;对于多峰函数Griewank、Rastrigin,MPA在10维、30维、50维、100维和500维条件下20次寻优均获得了理论最优值0;对于旋转不可分函数Ackley,MPA在不同维度条件下寻优精度较PSO算法提高10个数量级以上。

表1 函数优化对比结果

可见,对于上述6个仿真函数,PO在不同维度条件下寻优效果均优于PSO算法,表现出较好的优化效果和极值搜索能力,将其用于LSTM隐含层神经元数、训练次数、学习速率和梯度阈值的寻优是可靠的。

1.2 长短期记忆(LSTM)神经网络

长短期记忆(LSTM)模型是一种特殊的RNNs,由Sepp Hochreiter和Jurgen Schmidhuber于1997年提出,该模型中,传统网络的神经元被存储单元替代,每个存储单元由输入门(input gate)、遗忘门、输出门(output gate)组成[13,14,17]。

预测过程中,LSTM模型通过输入门、遗忘门实现单元状态c状态的控制,通过输出门来控制单元状态ct有多少输出到LSTM的当前输出值ht。设输入序列为(x1,x2,…,xT),隐含层状态为(h1,h2,…,hT),则在t时刻有:

it=σ(Whiht-1+Wxixt+bi)

(7)

ft=σ(Whfht-1+Whfxt+bf)

(8)

ct=ft·ct-1+it·g(Whcht-1+Wxcxt+bc)

(9)

ot=σ(Whoht-1+Woxxt+Wcoct+bo)

(10)

ht=o·g(ct)

(11)

式中:it、ft、ot分别为输入门、遗忘门和输出门;ct为cell单元;Wh为递归连接权重;Wx为输入层到隐含层权重;bi、bf、bc、bo分别为各函数的阈值;σ(·)、g(·)分别为sigmoid函数和tanh函数;·为向量内积。

LSTM通过线性回归层达到预测的目的,回归层数学描述为:

yt=Wyoht+by

(12)

式中:yt为预测结果输出;bo为线性回归层阈值。

1.3 预测模型的建立及实现步骤

PCA-MPA-LSTM、MPA-LSTM模型建立、预测步骤如下:

(1)通过主分量分析(PCA)法对原始径流序列进行降维和不降维处理,划分训练、预测样本,采用MPA寻优LSTM隐含层神经元数、训练次数、学习速率和梯度阈值,建立PCA-MPA-LSTM、MPA-LSTM模型,利用训练样本对PCA-MPA-LSTM、MPA-LSTM模型进行训练。

PCA降维基本思想是用一组维数较少且不相关的综合变量F1,F2,…,Fm来代替原来维数较多且有一定相关性的变量X1,X2,…,Xn(m≤n)[19,20],见式(13):

(13)

(2)选用训练样本均方误差作为优化目标函数,描述如下:

(14)

(3)设置MPA算法最大迭代次数Max_iter、种群规模n、FADs效应系数、常量P,基于式(1)初始化猎物位置,令当前迭代次数Iter=0,计算适应度并构建精英矩阵。

(4)基于式(2)~(5),分别在迭代初期、迭代中期、迭代终期更新猎物;完成记忆存储和精英更新;基于FADs效应或涡流效应,利用式(6)更新猎物。

(5)评估并更新精英矩阵。判断Iter算法是否等于Max_iter。若是,输出最佳精英矩阵Elitebest。

(6)输出Elitebest,即LSTM最佳关键参数。将参数Elitebest代入模型进行预测。

2 实例分析

(1)数据来源。落却站位于云南省马关县马白镇,系红河流域泸江水系落却河干流控制站,控制径流面积203 km2,为国家重要水文站。落却河又名南山河,发源于马关县木厂镇新发寨,于马关县马白镇桐子园汇入响水河,河长32 km,落差616 m,平均坡降6.4‰,流域面积234 km2。本文以云南省落却站实测水文资料为研究对象,采用SPSS软件计算姑落却站1962-2012年1-10月月径流与相应年份年径流的相关系数,相关系数在0.324~0.730之间,相关性并不十分显著。对于未经PCA降维处理的MPA-LSTM、LSTM、MPA-SVM、MPA-BP模型,选取1-10月月平均流量作为年径流预报因子,1962-2002年实测数据作为训练样本,2003-2012年作为预测样本。对于经PCA降维处理的PCA-MPA-LSTM、PCA-LSTM、PCA-MPA-SVM、PCA-MPA-BP模型,通过PCA对实例1-10月月径流数据进行主成分降维处理。经处理,前6个特征值累计贡献率为88.438%,大于85%,故选取前6个变量代替原10个变量进行年径流预测。原始数据和降维数据统计限于篇幅从略。

(2)参数设置。设置MPA算法Max_iter=50,n=50,FADs效应系数=0.2,P=0.5。LSTM采用Adam 算法训练内部参数,隐含层神经元数H、训练次数E、学习速率η、梯度阈值θ取值范围分别为[50,200],[50,150],[0.001,0.05]、[1,20];SVM核函数选择RBF,惩罚因子C、核函数参数g搜索空间均设置为[10-2,103],不敏感系数ε搜索空间均设置为[10-3,10-1]。MPA-BP、PCA-MPA-BP网络结构设置分别设置为10-13-1、10-19-1,隐含层、输出层传递函数和训练函数分别设置logsig、purelin和traingdx,搜索空间∈[-1,1]。LSTM模型对原始数据无需归一化处理;SVM、BP模型采用[-1,1]对原始数据进行归一化处理。

(3)预测。利用所构建模型对实例年径流进行预测,基于平均相对误差MAPE、圴方根误差RMSE、平均绝对误差MAE对各模型预测性能进行评价。预测结果见表2,效果图见图1。

表2 不同模型年径流测结果及其对比

图1 年径流拟合-预测相对误差图

依据表2及图1可以得出以下结论。

(1)PCA-MPA-LSTM、MPA-LSTM模型对实例预测的平均相对误差MAPE分别为1.94%、1.96%,圴方根误差RMSE分别为0.105、0.103 m3/s,平均绝对误差MAE分别为0.086、0.085 m3/s,预测精度均优于其他模型,具有更高的预测精度和更强的泛化能力,尤以PCA-MPA-LSTM模型的拟合效果、预测精度和泛化能力最好,表明MPA能有效寻优LSTM隐含层神经元数、训练次数、学习速率和梯度阈值,PCA-MPA-LSTM、MPA-LSTM模型用于径流预测是可行和可靠的。

(2)PCA-MPA-LSTM模型较PCA-LSTM 模型的MAPE、RMSE、MAE分别减少34.2%、35.2%、35.1%,MPA-LSTM模型较LSTM模型的MAPE、RMSE、MAE分别减少40.8%、35.2%、43.0%,证明利用MPA优化LSTM 关键参数可以有效提高LSTM模型的预测精度和泛化能力。

(3)采用MPA优化LSTM、SVM、BP模型相关参数,对于同一类模型,如PCA-MPA-LSTM与MPA-LSTM模型、PCA-MPA-SVM与MPA-SVM模型、PCA-MPA-BP与MPA-BP模型,经PCA数据降维处理后,其模型预测精度要优于未经降维处理的模型,说明数据降维处理可使数据样本简洁且更具代表性,能有效提高模型的预测精度。

3 结 论

通过介绍海洋捕食者算法(MPA),研究提出MPA与LSTM相融合的径流预测模型,基于降维和不降维处理原始数据,分别构建PCA-MPA-LSTM、MPA-LSTM模型,通过云南省落却站年径流预测实例对模型进行验证,并与PCA-LSTM等6种模型的预测结果进行比较,得到以下结论。

(1)利用6个仿真测试函数对MPA、PSO算法进行仿真测试,证明了MPA在不同维度条件下寻优精度和全局搜索能力优于PSO算法,将MPA用于LSTM神经网络关键参数寻优是可行和可靠的。

(2)利用MPA优化LSTM 隐含层神经元数量等关键参数,克服了人工试算确定LSTM 关键参数的不足,使LSTM神经网络的预测精度得到较大提高。

(3)通过云南省落却站年径流预测实例验证了PCA-MPA-LSTM、MPA-LSTM模型具有更高的预测精度和更强的泛化能力,将PCA-MPA-LSTM、MPA-LSTM模型用于径流预测是可行的。尤以PCA-MPA-LSTM模型的拟合、预测效果和泛化能力最好。

(4)采用MPA优化LSTM神经网络关键参数,以及采用数据降维处理原始数据能有效提高LSTM神经网络的泛化能力和预测精度。

猜你喜欢
降维捕食者径流
格陵兰岛积雪区地表径流增加研究
流域径流指标的构造与应用
混动成为降维打击的实力 东风风神皓极
基于SWAT模型的布尔哈通河流域径流模拟研究
基于数据降维与聚类的车联网数据分析应用
天生的杀手:鲨鱼
大气腐蚀数据降维最优维度研究
降维打击
Island Tourism
人工降雨下三种屋面径流过程环境质量比较