一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于种群自适应差分进化的LSTM网络流量预测方法与流程

2021-11-05 20:04:00 来源:中国专利 TAG:

一种基于种群自适应差分进化的lstm网络流量预测方法
技术领域
1.本发明涉及网络流量预测技术,具体涉及一种基于种群自适应差分进化的lstm网络流量预测方法。


背景技术:

2.随着数据时代的发展,能否从大量序列数据中挖掘出未来的数据趋势越来越受到关注,这种时序预测能力可以为相关的任务提供决策支持而显得举足轻重。在时序预测领域,循环神经网络可以有效提取时间序列的时间依赖特征,并保证学习时间序列的能力,但是梯度消失或爆炸问题制约了学习时间序列的长时依赖性特征。由于长短期记忆神经网络(longshort

term memory,lstm)可解决传统循环神经网络的梯度问题,因此lstm的序列预测技术在实现时间序列尤其是长时间的序列预测方面有广泛的应用。结合差分进化理论和lstm预测技术可以更好的实现网络流量预测的高精度效果。
3.但是神经网络本身有很多需要提前设定的超参数,这些超参数在实际情况中一般是通过网格搜索的形式来对经验中的数值进行枚举验证,但是这种方式既容易陷入经验危机又不容易找到更优的参数。但是基于差分进化算法的超参寻优不仅能够在经验的基础上进行寻优还能基于生物学理论广泛寻找更优参数。目前已有一些神经网络参数的寻优算法,比如有遗传算法(genetic algorithm,ga)、粒子群算法(particle swarm optimization,pso)、人工鱼群算法 (artificial fish,af)、教与学优化算法(teaching

learning

based optimization,tlbo)以及差分进化算法(differential evolution algorithm,de)。从整体上看,这些进化算法都或多或少存在局部收敛和收敛时间的限制。


技术实现要素:

4.发明目的:本发明的目的在于解决目前在lstm网络流量预测上由于传统进化算法的局部收敛和收敛时间上存在的不足,导致寻得的参数致使网络精度不佳问题,提供一种基于种群自适应差分进化的lstm网络流量预测方法,以自适应增减种群个体的方式既能保持种群个体全局性又能更快收敛于较优个体。
5.技术方案:本发明是一种基于种群自适应差分进化的lstm网络流量预测方法,包括以下步骤:
6.s1、构建数据集:首先对网络流量数据进行归一化并设置输入序列长度t和延迟时间τ,然后构建输入数据和输出标签,输入数据就是前t个时刻的网络流量作为输入,t 1时刻网络流量作为输出标签,最后随机打乱顺序并选择前75%作为训练集,剩下的数据作为测试集。
[0007][0008]
其中data所示为输入数据集结构,每一行即为一次输入,取对应行数的label的数
值为输出标签值。
[0009]
s2、利用lstm网络作为网络流量的预测模型,并采用adam优化算法对网络流量预测模型进行优化训练。随后导入已经构建好标签的训练数据,对网络模型的权重进行初始化,使用均方误差函数rmse作为适应度评价值。随后对lstm的第一层隐藏神经元数、学习率、 dropout率、第二层隐藏神经元数进行寻优。
[0010]
s21、初始化np行4列的种群矩阵x,np为种群个体数,种群矩阵中每一维代表lstm 的四个参数值,每个参数都有选择范围,因此对个体的每一维进行约束。初始化矩阵x如下所示,其中n设置为4,若有更多参数则可设置为对应参数个数。
[0011][0012]
s22、将个体的每一维分别赋值给对应参数:lstm第一层隐藏神经元数,adam学习率, dropout率,lstm第二层隐藏神经元数,代入后进行适应度评价。适应度评价就是lstm模型在测试集上的均方根误差rmse。
[0013][0014]
其中,y(t)表示第t个真实值,y

(t)表示t预测值。n为测试集标签长度。
[0015]
s23、对种群进行变异操作:利用变异通过当前个体来进化产生更多的个体,基本原理就是将本身和另外两个不同个体的差分变异结果相加产生变异向量,具体表达式为:
[0016]
x
r1
=x
r2
f(x
r2

x
r3
)
[0017]
其中,r1、r2、r3为互不相等的随机整数,f为变异因子。x
r1
、x
r2
、x
r3
指的是第r1、r2、r3行的矩阵个体。
[0018]
s24、对个体进行交叉选择操作:交叉即是将变异向量与某个预先决定的预向量进行个体参数的一种随机混合。交叉后的向量为:
[0019][0020]
j是通过随机函数j
rand
产生的随机整数,cr是交叉概率,是通过步骤s23变异后第下下一代的个体向量,是种群矩阵x中的当前个体x
r1
,是交叉后的向量,此举是为了随机抽取不同个体的维度以组成新的交叉个体。交叉之后将交叉后的个体与旧个体相比较取适应度更低的个体,其中适应度是通过将种群个体的值代入lstm网络中返回rmse得到。
[0021]
s3、在对一个种群矩阵所有个体进行上述操作后就产生了一个全新的种群矩阵,计算并记录每一代个体的适应度和每一代的最小适应度的值,随后对每代个体适应度值进行方差运算,方差计算公式如下:
[0022][0023][0024]
其中f为归一化因子,f
i
为第i个体适应度的值,表示种群矩阵x各个个体的平均适应度,σ2为方差值。
[0025]
s31、有害个体删减:种群个体数在自定义规定范围内的前提下,若当代种群个体适应度方差大,则说明有害个体较多,此时选择删去适应度最高即适应度最差的个体。若进行了此步骤s31,则说明种群个体多样性较好不需要混沌个体的添加,直接执行步骤s33。
[0026]
s32、混沌个体添加:种群个体数在自定义规定范围内且没有经过s31的前提下,若连续两代的种群最佳个体变化不大即种群缺乏多样性则由logistic映射相应个体到规定范围进行混沌个体添加,标准的logistic混沌映射为:
[0027]
z
n 1
=μ(1

z
n
)
[0028]
其中,μ=4时表现出极强的混沌性,定义好初值后随后产生的值都不是参数范围内的数,因此需要对混沌遍历后进行范围映射。混沌变量z
n
通过以下公式将混沌映射的区间映射到指定范围:
[0029][0030]
其中x
min
、δx指的是映射结果最小值和x的区间大小,z
max
、z
min
分别是混沌向量的最大和最小值,z
n
是第n个混沌向量。以产生的混沌变量添加到种群矩阵x中即完成混沌体的添加,随后进行参数自适应步骤s33。
[0031]
s33、若没有经过步骤s31、s32则将进化后的种群进行以下参数自适应:
[0032][0033][0034]
其中g是种群迭代次数,g
max
是最大迭代代数,cr是交叉率,f是变异因子。若经过了步骤s31或s32则进行以下参数自适应,公式为:
[0035][0036][0037]
其中,np 和np
‑‑
指的是种群个体数量的自增和自减,g
max
是最大种群迭代次数,g是当前迭代个数,f
min
是设置的最小变异因子,δf是设置的变异因子变化区间,f
i
是模型对于的i个个体返回的适应度值,f
min
和f
max
是当前种群中最小、最大个体适应度,f
last
是上次
evolution,pade) 对lstm网络寻得的优化参数表现的误差值最低即准确率最高,结合混沌个体添加和有害个体的删除可以使得寻优范围更具有全局性,寻得参数表现更优。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献