时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
目录
- 时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
- 预测效果
- 基本介绍
- 程序设计
- 参考资料
预测效果




基本介绍
Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)(完整程序和数据)
Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测对比(完整程序和数据)
单变量时间序列预测,运行环境Matlab2020及以上。
SSA-GRU优化得到的最优参数为:
SSA-GRU优化得到的隐藏单元数目为:31
SSA-GRU优化得到的最大训练周期为:62
SSA-GRU优化得到的InitialLearnRate为:0.027781SSA-GRU优化得到的L2Regularization为:0.021961
SSA-GRU结果:
SSA-GRU训练集MSE:0.0036759
SSA-GRU测试集MSE:0.064393
GRU结果:
GRU训练集MSE:0.00027715
GRU测试集MSE:0.45317
程序设计
- 完整程序和数据下载方式1(资源处直接下载):Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
- 完整程序和数据下载方式2(订阅《GRU门控循环单元》专栏,同时可阅读《GRU门控循环单元》专栏收录的所有内容,数据订阅后私信我获取):Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
- 完整程序和数据下载方式3(订阅《智能学习》专栏,同时获取《智能学习》专栏收录程序3份,数据订阅后私信我获取):Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
%%
%创建GRU回归网络,指定GRU层的隐含单元个数96*3
%序列预测,因此,输入一维,输出一维
numFeatures = 1;
numResponses = 1;
%--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc
————————————————
版权声明:本文为CSDN博主「机器学习之心」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kjm13182345320/article/details/130439025
%% 定义麻雀优化参数
pop=5; %种群数量
Max_iteration=10; % 设定最大迭代次数
dim = 4;%维度,即GRU网路包含的隐藏单元数目,最大训练周期,初始学习率,L2参数
lb = [2,2,10E-3,10E-3];%下边界
ub = [50,100,1,1];%上边界
fobj = @(x) fun(x,numFeatures,numResponses,XTrain,YTrain,XTest,YTest);
[Best_pos,Best_score,SSA_curve,netSSA]=SSA(pop,Max_iteration,lb,ub,dim,fobj); %开始优化
figure
plot(SSA_curve,'linewidth',1.5);
grid on
xlabel('迭代次数')
ylabel('适应度函数')
title('SSA-GRU收敛曲线')
%训练集测试
PredictTrainSSA = predict(netSSA,XTrain, 'ExecutionEnvironment','cpu');
%测试集测试
PredictTestSSA = predict(netSSA,XTest, 'ExecutionEnvironment','cpu');
%训练集mse
mseTrainSSA= mse(YTrain-PredictTrainSSA);
%测试集mse
mseTestSSA = mse(YTest-PredictTestSSA);
%--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc
————————————————
版权声明:本文为CSDN博主「机器学习之心」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kjm13182345320/article/details/130439025%% 基础GRU测试
numHiddenUnits = 100;
layers = [ ...sequenceInputLayer(numFeatures)gruLayer(numHiddenUnits)fullyConnectedLayer(numResponses)regressionLayer];%指定训练选项
options = trainingOptions('adam', ...'MaxEpochs',500, ...'ExecutionEnvironment' ,'cpu',...'GradientThreshold',1, ...'InitialLearnRate',0.001, ...'L2Regularization',0.0001,...'Verbose',0);
参考资料
[1] https://blog.csdn.net/article/details/126072792?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/article/details/126044265?spm=1001.2014.3001.5502
相关文章:
时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)
时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比) 目录 时序预测 | Matlab实现SSA-GRU、GRU麻雀算法优化门控循环单元时间序列预测(含优化前后对比)预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab实现SSA-GRU、GRU麻雀算法…...
Java+springboot开发的医院HIS信息管理系统实现,系统部署于云端,支持多租户SaaS模式
一、项目技术框架 前端:AngularNginx 后台:JavaSpring,SpringBoot,SpringMVC,SpringSecurity,MyBatisPlus,等 数据库:MySQL MyCat 缓存:RedisJ2Cache 消息队列&…...
【前端面经】Vue-Vue中的 $nextTick 有什么作用?
Vue.js 是一个流行的 JavaScript 框架,它提供了许多实用的功能,其中之一就是 $nextTick 方法。 在 Vue.js 中, $nextTick 方法可以确保我们在更新 DOM 之后再去执行某些操作,从而避免由于 DOM 更新而导致的问题。这个方法非常实用…...
基于STATCOM的风力发电机稳定性问题仿真分析(Simulink)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
如何写出高质量的代码
背景说明: 你是否曾经为自己写的代码而感到懊恼?你是否想过如何才能写出高质量代码?那就不要错过这个话题!在这里,我们可以讨论什么是高质量代码,如何写出高质量代码等问题。无论你是初学者还是资深开发人…...
15.基于主从博弈的智能小区代理商定价策略及电动汽车充电管理
说明书 MATLAB代码:基于主从博弈的智能小区代理商定价策略及电动汽车充电管理 关键词:电动汽车 主从博弈 动态定价 智能小区 充放电优化 参考文档:《基于主从博弈的智能小区代理商定价策略及电动汽车充电管理》基本复现 仿真平台&#…...
ChatGPT实现多语种翻译
语言翻译 多语种翻译是 NLP 领域的经典话题,也是过去很多 AI 研究的热门领域。一般来说,我们认为主流语种的互译一定程度上属于传统 AI 已经能较好完成的任务。比如谷歌翻译所采用的的神经机器翻译(NMT, Neural Machine Translation)技术就一度让世人惊…...
volatile关键字原理的使用介绍和底层原理解析和使用实例
文章目录 volatile关键字原理的使用介绍和底层原理解析和使用实例1. volatile 关键字的作用2. volatile 的底层原理3. volatile 的使用案例4. volatile 的原子性问题5. 如何解决 volatile 的原子性问题6. volatile 的实现原理7. 小结8. volatile的最佳实践9. 案例:使用volatile…...
【软件下载】换新电脑记录下下载的软件时所需地址
1.idea https://www.jetbrains.com/zh-cn/idea/download/other.html 2.oracle官方(下载jdk时找的) https://www.oracle.com/ 3.jdk8 https://www.oracle.com/java/technologies/downloads/ 下拉找到jdk8 切换windows (需要注册个oracle账…...
【10.HTML入门知识-CSS元素定位】
1 标准流(Normal Flow) 默认情况下,元素都是按照normal flow(标准流、常规流、正常流、文档流【document flow】)进行排布 从左到右、从上到下按顺序摆放好 默认情况下,互相之间不存在层叠现象 1.1…...
LeetCode_贪心算法_简单_455.分发饼干
目录 1.题目2.思路3.代码实现(Java) 1.题目 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的…...
HashMap
目录 HashMap是什么? 为什么要使用HashMap? HashMap存储元素原理(put⽅法) 扰动函数 前置知识 异或运算 &运算 为什么使用扰动函数 实验验证扰动函数 常见问题 HashMap的默认长度是多少? HashMap是先扩…...
数据结构初阶 —— 树(堆)
目录 一,堆 堆的概念 向下调整法(数组) 向上调整法(数组) 堆的创建(建堆) 堆的实现 一,堆 堆的概念 如有个关键码的集合K{,,,...…...
一文看懂低代码,5分钟从入门到原理全搞定
全球低代码市场已经走过了近20年,中国低代码市场近5年经历了百花齐放的广泛探索阶段,更旺盛的市场需求逐步在被激发。现在,让我们按下暂停键,看看这些产品给我们呈现了低代码市场一幅怎样的百景图。 低代码平台简介 广义上的低代…...
MetaERP系统主要干什么的,华为自研ERP的路子是否可以效仿?
近日,华为成功研发出自主可控的MetaERP系统,并完成了对旧有ERP系统的替换。该系统采用全栈自主可控技术,基于华为欧拉操作系统、GaussDB等根技术,采用云原生架构、元数据多租架构、实时智能技术等,提高业务效率&#x…...
自动驾驶——离散LQR的黎卡提方程Riccati公式推导与LQR工程化
1.LQR Question Background 之前写过连续系统的黎卡提方程Riccati推导,但是考虑到实际工程落地使用的是离散系统,于是又进行了离散黎卡提方程Riccati的公式推导。 2.Proof of Riccati Equation Formula for Discrete Systems 工程化落地,就…...
28.Mybatis的入门
目录 一、Mybatis的入门。 (1)Mybatis的简介。 (2)Mybatis的快速入门。 (2.1)快速入门。 (2.2)UserMapper.xml文件。 (2.3)sqlMapConfig.xml文件。 …...
Android Jetpack 从使用到源码深耕【ViewModel从实践到原理 】(三)
上文,我们通过简单的ViewModel使用源码入手,对其源码进行阅读,原理进行了简单总结,简单来说,ViewModel是通过Activity的onRetainNonConfigurationInstance 与 getLastNonConfigurationInstance的自动调用,实现了 ViewModel数据的存储和恢复,数据存储在ViewModelStore的m…...
什么性格的人适合报考环境科学类专业?高考选专业
环境科学类专业包括有:环境科学与工程,环境工程,环境科学,环境生态工程,环保设备工程,资源环境科学,水质科学与技术。 环境对于未来是一个极其重要的方向,需要学生具备一定的科学素…...
Python中的异常处理机制可以帮助程序员在程序运行过程中遇到错误时进行处理
Python中的异常处理机制可以帮助程序员在程序运行过程中遇到错误时进行处理,防止程序崩溃或出现不可预测的错误。 Python中的异常处理使用try-except语句。try语句块包含可能会出现异常的代码,而except语句块则定义了出现异常时应该执行的操作。下面是一…...
技术人终身学习:2026年软件测试从业者必跟的5个播客
在技术迭代日新月异的今天,终身学习已不再是可选项,而是软件测试从业者保持竞争力的生存法则。碎片化的时间如何转化为系统性的认知升级?深度思考如何突破日常工作环境的局限?播客,以其伴随性强、信息密度高、视角多元…...
input-overlay多语言支持:如何为全球观众轻松定制直播输入显示
input-overlay多语言支持:如何为全球观众轻松定制直播输入显示 【免费下载链接】input-overlay Show keyboard, gamepad and mouse input on stream 项目地址: https://gitcode.com/gh_mirrors/in/input-overlay 想要让全球观众都能轻松理解你的游戏操作吗&a…...
资源获取的技术突围:res-downloader的跨平台解决方案
资源获取的技术突围:res-downloader的跨平台解决方案 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 在数字内容爆…...
如何突破B站视频获取限制?这款开源工具让你轻松搞定
如何突破B站视频获取限制?这款开源工具让你轻松搞定 【免费下载链接】bilibili-parse bilibili Video API 项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-parse 你是否遇到过想要保存B站精彩视频却无从下手的困境?是否因复杂的技术门槛而…...
5分钟掌握Vue工作流设计器:workflow-bpmn-modeler终极指南
5分钟掌握Vue工作流设计器:workflow-bpmn-modeler终极指南 【免费下载链接】workflow-bpmn-modeler 🔥 flowable workflow designer based on vue and bpmn.io7.0 项目地址: https://gitcode.com/gh_mirrors/wo/workflow-bpmn-modeler 还在为复杂…...
如何掌握Marzipano全景技术的5个核心技术?
如何掌握Marzipano全景技术的5个核心技术? 【免费下载链接】marzipano A 360 media viewer for the modern web. 项目地址: https://gitcode.com/gh_mirrors/ma/marzipano 探索现代Web全景图开发的奥秘,发现Marzipano如何通过等距柱状投影、立方体…...
Vue2集成海康摄像头RTSP流:基于FFmpeg转码与WebSocket实时传输方案
1. 海康摄像头RTSP流播放的技术挑战 海康威视作为国内主流监控设备厂商,其摄像头输出的RTSP流在Web端直接播放存在天然技术屏障。浏览器原生不支持RTSP协议,传统方案需要依赖浏览器插件或转码服务。我在实际项目中发现,直接使用VLC测试RTSP流…...
深度学习驱动的光谱超分辨率:技术演进与应用前景
1. 光谱超分辨率技术的前世今生 我第一次接触光谱超分辨率技术是在2015年,当时还在用传统的线性插值方法处理遥感图像。记得有次为了获取一片农田的高光谱数据,团队不得不动用昂贵的机载传感器,结果因为天气原因导致数据质量极差。正是这次经…...
Fish-Speech-1.5在短视频生产的应用:批量生成多语种配音方案
Fish-Speech-1.5在短视频生产的应用:批量生成多语种配音方案 1. 引言 短视频内容创作正面临着一个普遍痛点:多语言配音成本高、周期长。传统方式下,一个MCN机构要为一条短视频制作中文、英文、日文三种语言的配音,需要分别联系不…...
FPGA网络加速入门:拆解Xilinx 7系列GTP与1G/2.5G Ethernet PCS/PMA IP核,搞懂SGMII接口那些事
FPGA网络加速实战:从Xilinx GTP架构到SGMII接口的深度解析 在FPGA高速通信领域,以太网接口设计一直是工程师面临的核心挑战之一。当我们需要在Xilinx 7系列FPGA上实现1G/2.5G以太网功能时,GTP收发器与PCS/PMA IP核的配置往往成为项目成败的关…...
