独家首发 | Matlab实现SVM-Transformer多变量回归预测

独家首发 | Matlab实现SVM-Transformer多变量回归预测

目录

效果一览




基本介绍

1.Matlab实现SVM-Transformer多变量回归预测,SVM递归特征消除+Transformer多输入单输出回归预测;

2.运行环境为Matlab2023b及以上;

3.data为数据集,输入多个特征,输出单个变量,多变量回归预测,main.m为主程序,运行即可,所有文件放在一个文件夹;

4.命令窗口输出R2、MSE、RMSE、MAE、MAPE、MBE等多指标评价;

程序设计

  • 完整程序和数据下载私信博主回复独家首发 | Matlab实现SVM-Transformer多变量回归预测。
clike 复制代码
%%  输出选择特征的对应序号
disp('经过特征选择后,保留特征的序号为:')
disp(save_index)

%%  特征选择后的数据集
p_train = p_train(:, save_index);
p_test  = p_test (:, save_index);

%%  矩阵转置适应模型
p_train = p_train'; p_test = p_test';
t_train = t_train'; t_test = t_test';

%%  数据平铺
%   将数据平铺成1维数据只是一种处理方式
%   也可以平铺成2维数据,以及3维数据,需要修改对应模型结构
%   但是应该始终和输入层数据结构保持一致
vp_train =  double(reshape(p_train, k, 1, 1, M));
vp_test  =  double(reshape(p_test , k, 1, 1, N));

t_train = t_train';
t_test  = t_test' ;

%%  数据格式转换
for i = 1 : M
    lp_train{i, 1} = vp_train(:, :, 1, i);
end

for i = 1 : N
    lp_test{i, 1}  = vp_test( :, :, 1, i);
end

%%  创建模型
%网络搭建
numChannels = k;
maxPosition = 256;
numHeads = 4;
numKeyChannels = numHeads*32;

参考资料

1 https://blog.csdn.net/kjm13182345320/article/details/128163536?spm=1001.2014.3001.5502

2 https://blog.csdn.net/kjm13182345320/article/details/128151206?spm=1001.2014.3001.5502

相关推荐
Felaim25 分钟前
【SLAM】SLAM-Former
transformer·slam·dense slam·几何基础模型
星夜离尘5634 分钟前
MATLAB 角度解缠遇到丢样:先分段,再说明圈数为什么不可恢复
开发语言·matlab
运维行者_16 小时前
网络监控工具怎么选?从设备监控到智能运维的能力清单
运维·服务器·开发语言·网络·人工智能·支持向量机·php
chhttty21 小时前
Simulink电机控制框架
matlab·simulink
啥都鼓捣的小yao1 天前
Vision Transformer(ViT)深入浅出
人工智能·深度学习·transformer
开开心心就好1 天前
本地文件搜索工具,双击Ctrl就能呼出搜索
java·服务器·前端·支持向量机·ffmpeg·音视频·模拟退火算法
星夜离尘561 天前
MATLAB 工程实验:不等间隔流量积分,先把缺口与覆盖率说清楚
开发语言·matlab·时间戳·数据质量·数值积分
大江东去浪淘尽千古风流人物2 天前
【HIMO】跨模态图像匹配算法:IMO方向场提取与PolarP描述符源码精讲
matlab·跨模态·遥感·图像匹配·1024程序员节·特征描述符
星夜离尘562 天前
MATLAB 因果采样保持:用历史匹配和数据年龄防止未来信息泄漏
数据结构·算法·matlab
Jsundoku2 天前
第七章 深度学习 -- Transformer 架构
人工智能·深度学习·transformer·1024程序员节