【MATLAB第90期】基于MATLAB的高斯过程、核函数、树模型、近邻模型等多输入单输出回归预测模型合集(RLR、ARES、WKNNR、KSNR、RKS、VHGPR、WGPR、SSGPR、TGP等)
本文展示多种非常用多输入单输出回归预测模型效果,精力不够,原理还需自行研究,下期展示多输入多输出回归模型。
注:每次运行数据训练集测试集为随机,故对比不严谨,不能完全反映模型效果。
通用代码展示
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行
addpath(genpath('funcs')); % 添加函数路径
%% 选择模型
METHODS = {'XXX'}
%% 导入数据
res = xlsread('数据集.xlsx');
%% 划分训练集和测试集
temp = randperm(103);
P_train = res(temp(1: 80), 1: 7)';
T_train = res(temp(1: 80), 8)';
M = size(P_train, 2);
P_test = res(temp(81: end), 1: 7)';
T_test = res(temp(81: end), 8)';
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 = p_train'; p_test = p_test';
t_train = t_train'; t_test = t_test';
一、高斯过程模型
1、变分异方差高斯过程回归(VHGPR)
Training VHGPR…
训练集数据的RMSE为:0.016666
测试集数据的RMSE为:0.18835
训练集数据的R2为:1
测试集数据的R2为:0.99948
训练集数据的MAE为:0.011272
测试集数据的MAE为:0.14145
训练集数据的MBE为:-2.2914e-06
测试集数据的MBE为:0.034171
2、扭曲高斯过程(WGPR)
Training WGPR…
训练集数据的RMSE为:1.7261
测试集数据的RMSE为:0.25173
训练集数据的R2为:0.94903
测试集数据的R2为:0.99908
训练集数据的MAE为:0.2062
测试集数据的MAE为:0.19946
训练集数据的MBE为:-0.19288
测试集数据的MBE为:0.075477
3、稀疏谱高斯过程回归(SSGPR)
Training SSGPR…
训练集数据的RMSE为:0.10094
测试集数据的RMSE为:0.31474
训练集数据的R2为:0.99982
测试集数据的R2为:0.9986
训练集数据的MAE为:0.077379
测试集数据的MAE为:0.2635
训练集数据的MBE为:5.0428e-06
测试集数据的MBE为:-0.13301
4、双高斯过程(TGP)
Training TGP…
训练集数据的RMSE为:2.7287
测试集数据的RMSE为:3.3977
训练集数据的R2为:0.87263
测试集数据的R2为:0.83159
训练集数据的MAE为:2.1133
测试集数据的MAE为:2.8297
训练集数据的MBE为:0.4433
测试集数据的MBE为:1.9482
二、核函数方法
1、核岭回归(KRR)
Training KRR…
训练集数据的RMSE为:0.33879
测试集数据的RMSE为:0.56033
训练集数据的R2为:0.99804
测试集数据的R2为:0.99542
训练集数据的MAE为:0.25441
测试集数据的MAE为:0.47222
训练集数据的MBE为:-0.00016191
测试集数据的MBE为:0.2451
2、相关向量机(RVM)
Training RVM…
训练集数据的RMSE为:0.62349
测试集数据的RMSE为:0.81944
训练集数据的R2为:0.99335
测试集数据的R2为:0.9902
训练集数据的MAE为:0.48202
测试集数据的MAE为:0.68016
训练集数据的MBE为:0.070944
测试集数据的MBE为:0.042825
3、内核信噪比回归(KSNR)
Training KSNR…
训练集数据的RMSE为:2.1384
测试集数据的RMSE为:2.276
训练集数据的R2为:0.92178
测试集数据的R2为:0.92443
训练集数据的MAE为:1.6902
测试集数据的MAE为:1.7698
训练集数据的MBE为:-0.08401
测试集数据的MBE为:0.32953
4.1、结构化核岭回归(SKRRlin线性核函数)
Training SKRRlin…
训练集数据的RMSE为:0.15893
测试集数据的RMSE为:0.59542
训练集数据的R2为:0.99957
测试集数据的R2为:0.99483
训练集数据的MAE为:0.1034
测试集数据的MAE为:0.46915
训练集数据的MBE为:-0.00014766
测试集数据的MBE为:0.2408
4.2、结构化核岭回归(SKRRrbf径向基核函数)
Training SKRRrbf…
训练集数据的RMSE为:0.39874
测试集数据的RMSE为:0.57187
训练集数据的R2为:0.99728
测试集数据的R2为:0.99523
训练集数据的MAE为:0.31558
测试集数据的MAE为:0.48255
训练集数据的MBE为:-0.0075955
测试集数据的MBE为:0.21179
5、随机Kitchen Sinks回归(RKS)
Training RKS…
训练集数据的RMSE为:0.73691
测试集数据的RMSE为:1.0498
训练集数据的R2为:0.99084
测试集数据的R2为:0.98336
训练集数据的MAE为:0.36676
测试集数据的MAE为:0.7065
训练集数据的MBE为:-0.13532
测试集数据的MBE为:-0.30309
6、多元向量机回归(MSVR)
Training MSVR…
训练集数据的RMSE为:0.34248
测试集数据的RMSE为:0.56133
训练集数据的R2为:0.99796
测试集数据的R2为:0.99518
训练集数据的MAE为:0.27171
测试集数据的MAE为:0.4867
训练集数据的MBE为:0.0050311
测试集数据的MBE为:0.12303
三、树模型方法
1、决策树(TREE)
Training TREE…
训练集数据的RMSE为:1.9551
测试集数据的RMSE为:5.4426
训练集数据的R2为:0.93647
测试集数据的R2为:0.4358
训练集数据的MAE为:1.4319
测试集数据的MAE为:4.0959
训练集数据的MBE为:3.9968e-16
测试集数据的MBE为:1.6995
2、套袋树(BAGTREE)
Training BAGTREE…
训练集数据的RMSE为:3.1184
测试集数据的RMSE为:3.387
训练集数据的R2为:0.84948
测试集数据的R2为:0.74459
训练集数据的MAE为:2.3538
测试集数据的MAE为:2.5884
训练集数据的MBE为:0.019152
测试集数据的MBE为:0.87346
3、BOOST增强树(BOOST)
Training BOOST…
训练集数据的RMSE为:0.45363
测试集数据的RMSE为:3.2551
训练集数据的R2为:0.99706
测试集数据的R2为:0.49039
训练集数据的MAE为:0.34702
测试集数据的MAE为:2.5469
训练集数据的MBE为:-1.9096e-15
测试集数据的MBE为:1.2468
4、增强随机森林(LSBoost)
Training LSBoost…
训练集数据的RMSE为:8.6842e-15
测试集数据的RMSE为:4.7295
训练集数据的R2为:1
测试集数据的R2为:0.20343
训练集数据的MAE为:5.6843e-15
测试集数据的MAE为:3.2471
训练集数据的MBE为:-7.1054e-16
测试集数据的MBE为:1.3153
5、XGBOOST
Training XGB…
训练集数据的RMSE为:2.0128
测试集数据的RMSE为:2.9735
训练集数据的R2为:0.93462
测试集数据的R2为:0.84466
训练集数据的MAE为:1.5351
测试集数据的MAE为:2.4029
训练集数据的MBE为:-0.47213
测试集数据的MBE为:-0.36939
6、典型相关森林(CCF)
Training CCF…
训练集数据的RMSE为:0.91915
测试集数据的RMSE为:3.5783
训练集数据的R2为:0.98423
测试集数据的R2为:0.84609
训练集数据的MAE为:0.57309
测试集数据的MAE为:2.5601
训练集数据的MBE为:2.2204e-16
测试集数据的MBE为:0.025749
四、近邻模型
1、加权k近邻回归(WKNNR)
Training WKNNR…
训练集数据的RMSE为:2.1587
测试集数据的RMSE为:3.9624
训练集数据的R2为:0.92544
测试集数据的R2为:0.64301
训练集数据的MAE为:0.89757
测试集数据的MAE为:3.4489
训练集数据的MBE为:-0.37871
测试集数据的MBE为:0.47239
五、样条和多项式模型
1、自适应回归样条(ARES)
Training ARES…
训练集数据的RMSE为:0.95868
测试集数据的RMSE为:1.3617
训练集数据的R2为:0.98322
测试集数据的R2为:0.97587
训练集数据的MAE为:0.77316
测试集数据的MAE为:1.0322
训练集数据的MBE为:-4.5741e-15
测试集数据的MBE为:-0.19157
六、线性模型
1、正则化最小二乘线性回归(RLR)
Training RLR…
训练集数据的RMSE为:2.6462
测试集数据的RMSE为:2.628
训练集数据的R2为:0.87657
测试集数据的R2为:0.90482
训练集数据的MAE为:2.0441
测试集数据的MAE为:2.0641
训练集数据的MBE为:-0.22047
测试集数据的MBE为:0.46421
2、最小绝对收缩和选择算子(LASSO)
Training LASSO…
训练集数据的RMSE为:3.1169
测试集数据的RMSE为:2.8036
训练集数据的R2为:0.8477
测试集数据的R2为:0.84448
训练集数据的MAE为:2.4504
测试集数据的MAE为:2.2981
训练集数据的MBE为:2.5313e-15
测试集数据的MBE为:0.39718
3、弹性网络(ENET)
Training ENET…
训练集数据的RMSE为:8.4106
测试集数据的RMSE为:8.9988
训练集数据的R2为:-0.18305
测试集数据的R2为:-0.32423
训练集数据的MAE为:7.882
测试集数据的MAE为:8.5637
训练集数据的MBE为:-7.882
测试集数据的MBE为:-8.5637
七、代码获取
1.阅读首页置顶文章
2.关注CSDN
3.根据自动回复消息,回复“90期”以及相应指令,即可获取对应下载方式。