POD-Transformer多变量回归预测(Matlab)

news/2024/11/20 2:06:41/

目录

      • 效果一览
      • 基本介绍
      • 程序设计
      • 参考资料

效果一览

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

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

基本介绍

1.Matlab实现POD-Transformer多变量回归预测,本征正交分解数据降维融合Transformer多变量回归预测,使用SVD进行POD分解(本征正交分解);
2.运行环境Matlab2023b;
3.输入多个特征,输出单个变量,多变量回归预测;
4.data为数据集,excel数据,前多列输入,最后1列输出,主程序运行即可,所有文件放在一个文件夹;
5.命令窗口输出R2、MSE、MAE、MAPE和MBE多指标评价;
本征正交分解,Proper orthogonal decomposition 缩写为POD,是一种用于提取离散数据特征信息的数学方法。POD 方法的目的是把多维随机过程进行低维近似描述并提取复杂随机过程的本质特征。其基本思想是将随机量分解为由其自身特征所确定的一组基函数来表示,基函数的确定原则为在每一次分解的过程中使得最低阶的模式上含能最多。

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

程序设计

  • 完整程序和数据获取方式:私信博主回复POD-Transformer多变量回归预测(Matlab)

%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行%%  导入数据
result = xlsread('data.xlsx');%%  数据集分析
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, 0, 1);
P_test = mapminmax('apply', P_test, ps_input);[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);%%  数据平铺
P_train =  double(reshape(P_train, f_, 1, 1, M));
P_test  =  double(reshape(P_test , f_, 1, 1, N));t_train = t_train';
t_test  = t_test' ;%%  数据格式转换
for i = 1 : Mp_train{i, 1} = P_train(:, :, 1, i);
endfor i = 1 : Np_test{i, 1}  = P_test( :, :, 1, i);
end

参考资料

[1] http://t.csdn.cn/pCWSp
[2] https://download.csdn.net/download/kjm13182345320/87568090?spm=1001.2014.3001.5501
[3] https://blog.csdn.net/kjm13182345320/article/details/129433463?spm=1001.2014.3001.5501


http://www.ppmy.cn/news/1548376.html

相关文章

【电子设计】按键LED控制与FreeRTOS

1. 安装Keilv5 打开野火资料,寻找软件包 解压后得到的信息 百度网盘 请输入提取码 提取码:gfpp 安装526或者533版本都可以 下载需要的 F1、F4、F7、H7 名字的 DFP pack 芯片包 安装完 keil 后直接双击安装 注册操作,解压注册文件夹后根据里面的图示步骤操作 打开说明 STM…

联通大数据面试题及参考答案

Flink 是怎么使用的? Flink 是一个分布式流批一体的开源平台,以下是其一般使用步骤及相关要点: 环境搭建 首先要根据需求选择合适的部署模式,比如本地模式用于开发测试,集群模式(如 Standalone、YARN、Kubernetes 等)用于生产环境。安装相应的 JDK 版本(Flink 基于 Ja…

《大数据中的高级 SQL 技巧技》

一、引言 在大数据时代,数据的规模和复杂性不断增加,对数据处理和分析的要求也越来越高。SQL(Structured Query Language)作为一种广泛使用的数据库查询语言,在大数据处理中仍然扮演着重要的角色。然而,传统…

Redis的Zset在排行榜中应用

1.在pom文件导入&#xff1a; <!-- redis --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><dependency><groupId>org.springframew…

Kotlin的data class

在 Kotlin 中&#xff0c;data class 是一种专门用来存储数据的类。与普通类相比&#xff0c;data class 提供了简化数据存储的语法&#xff0c;并且自动生成了一些常用的方法&#xff0c;例如 toString()、equals()、hashCode() 和 copy()。 1. 定义 data class data class …

git使用及上线流程(仅为我工作中常用)

推荐软件或者直接终端 ⚠️注意&#xff1a;在确保远程和本地分支都可使用的情况下 git常见使用命令 ls---查看所有目录 pwd---本机密码 cd 目录名---进入目录 Touch ---创建文本文件 git status---查看状态 git branch---查看分支 git pull---拉取远程最新代码 git checkou…

Stable Diffusion的解读(二)

Stable Diffusion的解读&#xff08;二&#xff09; 文章目录 Stable Diffusion的解读&#xff08;二&#xff09;摘要Abstract一、机器学习部分1. 算法梳理1.1 LDM采样算法1.2 U-Net结构组成 2. Stable Diffusion 官方 GitHub 仓库2.1 安装2.2 主函数2.3 DDIM采样器2.4 Unet 3…

YOLOv7-0.1部分代码阅读笔记-torch_utils.py

torch_utils.py utils\torch_utils.py 目录 torch_utils.py 1.所需的库和模块 2.def torch_distributed_zero_first(local_rank: int): 3.def init_torch_seeds(seed0): 4.def date_modified(path__file__): 5.def git_describe(pathPath(__file__).parent): 6.de…