当前位置: 首页 > news >正文

CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比

CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比

目录

    • CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比
      • 预测效果
      • 基本介绍
      • 程序设计
      • 参考资料

预测效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

基本介绍

基于CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测一键对比(仅运行一个main即可)

Matlab代码,每个模型的预测结果和组合对比结果都有!
1.无需繁琐步骤,只需要运行一个main即可一键出所有图像。
2.程序已经调试好,无需更改代码替换数据集即可运行!!!数据格式为excel!
3.CPO优化参数为:隐藏层节点数,学习率,正则化系数
4.CPO作为24年新算法,冠豪猪优化器(Crested Porcupine Optimizer,CPO)。该成果于2024年1月发表在中科院1区SCI期刊Knowledge-Based Systems上。
运行环境要求MATLAB版本为2023b及其以上
评价指标包括:R2、MAE、MSE、RPD、RMSE等,图很多
代码中文注释清晰,质量极高,赠送测试数据集,可以直接运行源程序。替换你的数据即可用 适合新手小白

程序设计

  • 完整代码私信回复CPO-CNN-BiLSTM-Attention、CNN-BiLSTM-Attention、CPO-CNN-BiLSTM、CNN-BiLSTM四模型对比多变量时序预测
%%  CSDN:机器学习之心
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行%%  导入数据
result = xlsread('数据集.xlsx');%%  数据分析
num_samples = length(result);  % 样本个数
kim = 2;                       % 延时步长(前面多行历史数据作为自变量)
zim =  1;                      % 跨zim个时间点进行预测
nim = size(result, 2) - 1;     % 原始数据的特征是数目%%  划分数据集
for i = 1: num_samples - kim - zim + 1res(i, :) = [reshape(result(i: i + kim - 1 + zim, 1: end - 1)', 1, ...(kim + zim) * nim), result(i + kim + zim - 1, end)];
end%%  数据集分析
outdim = 1;                                  % 最后一列为输出
num_size = 0.7;                              % 训练集占数据集比例
num_train_s = round(num_size * num_samples); % 训练集样本个数
f_ = size(res, 2) - outdim;                  % 输入特征长度%%  划分训练集和测试集
P_train = res(1: num_train_s, 1: f_)';
T_train = res(1: num_train_s, f_ + 1: end)';
M = size(P_train, 2);P_test = res(num_train_s + 1: end, 1: f_)';
T_test = res(num_train_s + 1: end, f_ + 1: end)';
N = size(P_test, 2);%%  数据归一化
[p_train, ps_input] = mapminmax(P_train, -1, 1);%将训练集和测试集的数据调整到01之间
p_test = mapminmax('apply', P_test, ps_input);[t_train, ps_output] = mapminmax(T_train, -1, 1);% 对测试集数据做归一化
t_test = mapminmax('apply', T_test, ps_output);%%  数据平铺
%   将数据平铺成1维数据只是一种处理方式
%   也可以平铺成2维数据,以及3维数据,需要修改对应模型结构
%   但是应该始终和输入层数据结构保持一致
p_train =  double(reshape(p_train, f_, 1, 1, M));
p_test  =  double(reshape(p_test , f_, 1, 1, N));
t_train =  double(t_train)';
t_test  =  double(t_test )';%%  数据格式转换
for i = 1 : MLp_train{i, 1} = p_train(:, :, 1, i);
endfor i = 1 : NLp_test{i, 1}  = p_test( :, :, 1, i);
end%% 建立模型
lgraph = layerGraph();                                                   % 建立空白网络结构
tempLayers = [sequenceInputLayer([f_, 1, 1], "Name", "sequence")              % 建立输入层,输入数据结构为[f_, 1, 1]sequenceFoldingLayer("Name", "seqfold")];                            % 建立序列折叠层
lgraph = addLayers(lgraph, tempLayers);                                  % 将上述网络结构加入空白结构中
tempLayers = [convolution2dLayer([3, 1], 16, "Name", "conv_1", "Padding", "same")  % 建立卷积层,卷积核大小[3, 1]16个特征图reluLayer("Name", "relu_1")                                          % Relu 激活层convolution2dLayer([3, 1], 32, "Name", "conv_2", "Padding", "same")  % 建立卷积层,卷积核大小[3, 1]32个特征图reluLayer("Name", "relu_2")];                                        % Relu 激活层
lgraph = addLayers(lgraph, tempLayers);                                  % 将上述网络结构加入空白结构中tempLayers = [sequenceUnfoldingLayer("Name", "sequnfold")                      % 建立序列反折叠层flattenLayer("Name", "flatten")                                  % 网络铺平层fullyConnectedLayer(1, "Name", "fc")                             % 全连接层regressionLayer("Name", "regressionoutput")];                    % 回归层

参考资料

[1] https://blog.csdn.net/kjm13182345320/article/details/128577926?spm=1001.2014.3001.5501
[2] https://blog.csdn.net/kjm13182345320/article/details/128573597?spm=1001.2014.3001.5501

相关文章:

CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比

CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比 目录 CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比预测效果基本介绍程序设计参考资料 预测效果 基本介绍 基于CPO-CNN-GRU-Attention、…...

深入了解PINN:物理信息神经网络(Physics-Informed Neural Networks)

1. 什么是PINN(物理信息神经网络)? 物理信息神经网络(PINN,Physics-Informed Neural Networks)是一类通过结合神经网络和物理方程的深度学习方法。其主要特点是将物理系统的约束条件(如偏微分方…...

人形机器人全身运动规划相关资料与文章

1.HumanPlus: Humanoid Shadowing and Imitation from Humans 文章地址:[2406.10454] HumanPlus: Humanoid Shadowing and Imitation from Humans 代码地址:MarkFzp/humanplus: [CoRL 2024] HumanPlus: Humanoid Shadowing and Imitation from Humans …...

使用uWSGI将Flask应用部署到生产环境

使用uWSGI将Flask应用部署到生产环境: 1、安装uWSGI conda install -c conda-forge uwsgi(pip install uwsgi会报错) 2、配置uWSGI 在python程序的同一文件夹下创建 uwsgi.ini文件,文件内容如下表。 需要按照实际情况修改文件名称…...

微服务监控工具Grafana

目录 前言 服务介绍 Grafana:数据可视化和展示 Prometheus:时序数据监控 Loki:日志管理 工具使用 安装 配置 Grafana 数据源​编辑 Go Web 项目上报数据 Prometheus 指标上报 Loki 日志上报 数据查看 前言 随着微服务的盛行&…...

用户界面的UML建模06

4.1 抽象表示层的结构(Abstract Presentation Structure) 如图6 所示,抽象表示层模型具有一个顶层的容器(container),《apm》AbstractForm,其包含了许多组件,《apm》AbstractCompon…...

【力扣刷题第一天】63.不同路径Ⅱ

63.不同路径Ⅱ 🚀 题目 题目来源:leetcode 63. 不同路径Ⅱ:63. 不同路径 II - 力扣(LeetCode); 给定一个 m x n 的整数数组 grid。一个机器人初始位于 左上角(即 obstacleGrid[0][0]&#xf…...

如何优化Python网络爬虫的数据清洗流程,以提升数据质量并有效应对网站反爬虫机制?

优化爬虫数据清洗流程,应对反爬虫机制 一、数据清洗的重要性 在网络爬虫中,数据清洗是关键环节。打个比方,我们从网页抓取到的原始数据就像一堆杂乱的杂物,里面有各种格式、错误和重复信息。比如抓取到的文本可能包含HTML标签、…...

svn 相关应用与管理

文章目录 SVN 概要svn 权限控制svn 实操实例svn 备份 SVN 概要 一、SVN简介 Subversion(SVN)是一个开放源代码的版本控制系统,用于管理文件和目录的版本。它采用集中式的版本控制方式,即有一个中央仓库存储所有文件的版本信息&a…...

THM:Mouse Trap[WriteUP]

目录 连接至THM服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 提取扫描结果中的端口号 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机UDP常用端口进行开放扫描 使用smbmap尝试枚举靶机…...

Nginx详细安装配置过程

目录 1.nginx环境准备 1.1 在配置好yum源之后,安装如下的编译工具 1.2 安装nginx所需的依赖库 1.3 关闭防火墙,selinux,并确保网络正常 2.nginx的编译安装 2.1从nginx官网复制下载链接,wget 下载 2.2? 解压nginx源代码 2…...

目标检测入门指南:从原理到实践

目录 1. 数据准备与预处理 2. 模型架构设计 2.1 特征提取网络原理 2.2 区域提议网络(RPN)原理 2.3 特征金字塔网络(FPN)原理 2.4 边界框回归原理 2.5 非极大值抑制(NMS)原理 2.6 多尺度训练与测试原理 2.7 损失函数设计原理 3. 损失函数设计 4. 训练策略优化 5. 后…...

2024 高通边缘智能创新应用大赛智能边缘计算赛道冠军方案解读

2024 高通边缘智能创新应用大赛聚焦不同细分领域的边缘智能创新应用落地,共设立三大热门领域赛道——工业智能质检赛道、智能边缘计算赛道和智能机器人赛道。本文为智能边缘计算赛道冠军项目《端侧大模型智能翻译机》的开发思路与成果分享。 赛题要求 聚焦边缘智能…...

tcpdump 网络数据包分析工具

简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的…...

鱼眼相机模型与去畸变实现

1.坐标系说明 鱼眼相机模型涉及到世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换关系。对于分析鱼眼相机模型,假定世界坐标系下的坐标点,经过外参矩阵的变换转到相机坐标系,相机坐标再经过内参转换到像素坐标,具体如下 进一步进…...

【Unity功能集】TextureShop纹理工坊(七)魔棒工具

项目源码:在终章发布 索引 魔棒工具PS魔棒工具魔棒工具功能点提炼TextureShop魔棒工具根据色差选取非连续区域中间镂空边框的流动虚线取消选区魔棒工具 魔棒工具,也既是通过颜色色差,在图像上选出自定义选区的工具(了解PS魔棒工具)。 PS魔棒工具 我们先来看看PS中的魔棒…...

ASP.NET Core Web API Hangfire

ASP.NET Core Web API Hangfire 前言一、安装二、相关代码1.代码片段2.代码片段3.运行效果 三、测试代码1.即发即弃作业2.延迟作业3.重复作业4.延续作业5.页面调度作业 前言 👨‍💻👨‍🌾📝记录学习成果,以…...

E-commerce .net+React(一)——项目初始化

文章目录 项目地址一、创建.Net环境1.1环境配置1.1.1 使用vscode创建webapi1.1.2 Clean architecture结构创建1.1.3 将创建好结构的项目添加到git里1.1.4 EF Core配置1. 在infrastructure里安装EF所需环境2. 创建Product数据模型3. 创建EF Core的DbContext 数据库上下文4. 创建…...

算法每日双题精讲 —— 滑动窗口(水果成篮,找到字符串中所有字母异位词)

🌟快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。 🌟 别再犹豫了!快来订阅我们的算法每日双题精讲专栏,一起踏上算法学习的精彩之旅吧!💪…...

C++ 设计模式:享元模式(Flyweight Pattern)

链接:C 设计模式 链接:C 设计模式 - 单例模式 享元模式(Flyweight Pattern)是一种结构型设计模式,它通过共享尽可能多的相同对象来减少内存使用和提高性能。享元模式适用于大量细粒度对象的场景,这些对象之…...

龙虎榜——20250610

上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...

内存分配函数malloc kmalloc vmalloc

内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包(Closure)?闭包有什么应用场景和潜在问题?2.解释 JavaScript 的作用域链(Scope Chain) 二、原型与继承3.原型链是什么?如何实现继承&a…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线, n r n_r nr​ 根接收天线的 MIMO 系…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”

2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请,不同级别的经理有不同的审批权限: // 抽象处理者:审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...