【WOA-LSTM】基于WOA优化 LSTM神经网络预测研究(Python代码实现)

简介: 【WOA-LSTM】基于WOA优化 LSTM神经网络预测研究(Python代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥


🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。


⛳️座右铭:行百里者,半于九十。


📋📋📋本文目录如下:🎁🎁🎁


目录


💥1 概述


1.1 鲸鱼优化算法


1.2 LSTM预测模型


📚2 运行结果


🎉3 参考文献


🌈4 Python代码实现


💥1 概述

1.1 鲸鱼优化算法

鲸鱼优化算法(Whale Optimization Algorithim,WOA)是近些年提出来的一种新型的群智能算法。原理简单,设置的参数相对较少,拥有很强的全局搜索能力。鲸鱼优化算法优化特定的问题时,类似鲸鱼捕食的行为。当猎物出现时,鲸鱼首先会选择潜入到猎物的下方,然后通过旋转的方式向上,对猎物进行攻击时则在其周围形成气泡呈螺旋状。鲸鱼捕食的过程主要分为3个过程,分别为环绕猎物、形成螺旋气泡攻击猎物和搜索过程。对此拟做研究阐释如下。

在捕食的过程中,猎物的位置即为最佳位置,鲸鱼则通过收缩环绕和螺旋来改变自身的位置。鲸鱼收缩环绕的过程如下:


b510c304c2954389b31f3294f647eef8.png


f6d3b40faf794fa3a8e176658e1f8d63.png

5808ce8fd4e1404a9414fa68d10da0fa.png


1.2 LSTM预测模型

LSTM 神经网络首次提出于1997年,传统的RNN会出现梯度消失和梯度爆炸等问题,在 RNN的基础上改进的LSTM能够有效地避免这一类问题。LSTM的改进之处在于该网络在原先的基础上额外增加了记忆单元,此记忆单元能够记住过往信息并存储。另外,L.STM拥有不错的学习能力,能够很好地学习样本的潜在规律,所以能够出色地处理配电网可靠性评估这一类非线性的问题。LSTM单元结构如图2所示。


c8c04576e2314f319dc5e0fac475a2c5.png

666810573bb94a0dbaa5e16a10dee701.png


LSTM 关键参数的选取会影响影响配电网可靠性评估的精度,则需要对模型的参数进行正确选取。鲸鱼优化算法相比其他优化算法具有更加简单的原理,更少的参数,以及更强的全局搜索能力等优点,所以对于处理非线性的问题具有一定的优势,可用于对LSTM模型参数的选取。


📚2 运行结果


3a85d072c0f942ed82abfe41dcf9e4e8.png


plt.figure(figsize=(5,5))
plt.plot(fitnessCurve)
plt.title('fitnessCurve')
plt.ylabel('values')
plt.xlabel('Number of iterations')
plt.show()


38c02e802f6d4f2a87339e2fcf93725d.png


plt.plot(history.history['loss'])
plt.title('model loss')
plt.ylabel('loss')
plt.xlabel('epoch')
plt.show()


3449f105661448109df5f3ff40413366.png


fig2 = plt.figure(figsize=(10, 4),dpi=200)
ax = plt.subplot(222)
plt.plot(M, 'b-', label='AQI')
plt.plot(trainPredictPlot, 'r', label='traindata')
plt.plot(testPredictPlot, 'k', label='prediction')
plt.ylabel('AQI', fontsize=10)
plt.xlabel('time', fontsize=10)
plt.legend()
plt.show()

52b51bce0cc2410da96be0dde0ab6fc5.png


plt.figure(figsize=(10, 4),dpi=200)
plt.plot(range(len(train),len(dataset)),N, label="Actual", color='r',linewidth=1)
plt.plot(testPredictPlot, color='b',label='Prediction',linewidth=1,linestyle="--")
plt.title('WOA-LSTM Prediction', size=10)
plt.ylabel('AQI',size=10)
plt.xlabel('time/day',size=10)
plt.legend()
plt.show()


9c87b4a7795641288f80208f863e50f4.png



🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。


[1]苏鹏飞,徐松毅,于晓磊.基于WOA-LSTM的窄带通信网网络时延预测算法[J].河北工业科技,2022,39(01):9-15.


[2]刘立邦,杨颂,王志坚,贺欣欣,赵文磊,刘守军,杜文广,米杰.基于改进WOA-LSTM的焦炭质量预测[J].化工学报,2022,73(03):1291-1299.


[3]万俊杰,单鸿涛.基于WOA优化LSTM神经网络的配电网可靠性评估[J].智能计算机与应用,2021,11(10):107-112+117.


🌈4 Python代码实现


相关文章
|
7月前
|
机器学习/深度学习 算法 调度
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
368 1
|
6月前
|
数据可视化 大数据 关系型数据库
基于python大数据技术的医疗数据分析与研究
在数字化时代,医疗数据呈爆炸式增长,涵盖患者信息、检查指标、生活方式等。大数据技术助力疾病预测、资源优化与智慧医疗发展,结合Python、MySQL与B/S架构,推动医疗系统高效实现。
|
7月前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
799 2
|
7月前
|
机器学习/深度学习 数据采集 算法
独家原创 | CEEMDAN-CNN-GRU-GlobalAttention + XGBoost组合预测研究(Python代码实现)
独家原创 | CEEMDAN-CNN-GRU-GlobalAttention + XGBoost组合预测研究(Python代码实现)
278 2
|
7月前
|
机器学习/深度学习 算法 安全
【强化学习应用(八)】基于Q-learning的无人机物流路径规划研究(Python代码实现)
【强化学习应用(八)】基于Q-learning的无人机物流路径规划研究(Python代码实现)
568 6
|
7月前
|
机器学习/深度学习 算法 机器人
【机器人路径规划】基于A*算法的机器人路径规划研究(Python代码实现)
【机器人路径规划】基于A*算法的机器人路径规划研究(Python代码实现)
912 4
|
7月前
|
机器学习/深度学习 数据采集 资源调度
基于长短期记忆网络定向改进预测的动态多目标进化算法(LSTM-DIP-DMOEA)求解CEC2018(DF1-DF14)研究(Matlab代码实现)
基于长短期记忆网络定向改进预测的动态多目标进化算法(LSTM-DIP-DMOEA)求解CEC2018(DF1-DF14)研究(Matlab代码实现)
268 0
|
7月前
|
JavaScript 关系型数据库 MySQL
基于python的医院智慧门诊系统研究
本系统基于Python和Django框架,结合MySQL、Vue等技术,构建功能全面、易用性强的医院智慧门诊平台。系统涵盖患者与医务人员信息管理、在线挂号、智能导诊、电子病历、远程医疗等功能,优化就医流程,提升医疗效率与服务质量,助力医疗服务数字化转型。
基于python的医院智慧门诊系统研究
|
7月前
|
机器学习/深度学习 数据采集 算法
基于VMD-LSTM的电力负荷预测研究(Matlab代码实现)
基于VMD-LSTM的电力负荷预测研究(Matlab代码实现)
484 0
|
7月前
|
机器学习/深度学习 安全 Serverless
【创新未发表】【故障诊断】基于连续小波变换-CNN, ResNet, CNN-SVM, CNN-BiGRU, CNN-LSTM的故障诊断研究【凯斯西储大学数据】(Matlab代码实现)
【创新未发表】【故障诊断】基于连续小波变换-CNN, ResNet, CNN-SVM, CNN-BiGRU, CNN-LSTM的故障诊断研究【凯斯西储大学数据】(Matlab代码实现)
531 0

推荐镜像

更多
下一篇
开通oss服务