【MATLAB第22期】基于MATLAB的xgboost算法多输入多输出回归模型 已购用户可在之前下载链接免费获取

简介: 【MATLAB第22期】基于MATLAB的xgboost算法多输入多输出回归模型 已购用户可在之前下载链接免费获取

【MATLAB第22期】基于MATLAB的xgboost算法多输入多输出回归模型 已购用户可在之前下载链接免费获取


往期文章:xgboost安装教程

最近有很多小伙伴私信我有关xgboost预测的问题,被问到最多的问题总结如下:


1.xgboost安装/运行失败。


关于问题1,还是建议多刷刷我的视频教学,有一部分用户反馈说按照我的步骤复现成功,我由衷为你们感到开心,另一部分没复现成功的也不要气馁,也许不是你们的操作原因,可能是matlab版本,操作系统,或是下载的文件版本不一致导致运行报错。由于报错的原因五花八门,有些也超过了我的认知范畴,抱歉不能为你们一一解答。图省事的用户可以直接找我有偿获取成品,我也将不断更新内容,来反馈各个支持的用户。


2.xgboost多输入多输出回归模型如何实现?


关于问题2,本身不是太困难,有基础的同学不妨自己试试。同时,为了答谢已购用户的支持,故免费更新多输入多输出回归模型,可在原链接已购商品中下载。

本代码支持多变量输出预测,只需更改行数及列数就行,比如以下示例为2输出。原谅我偷懒没考虑输出与输入之间是否有关联,而强行套数据,所以效果观感难免差一些。


P_train = res(temp(1: 80), 1: 6)';
T_train = res(temp(1: 80), 7:8)';
P_test = res(temp(81: end), 1: 6)';
T_test = res(temp(81: end), 7:8)';

不过我在原先基础上,优化了绘图和评价指标代码,不用你们再怎么修改对应代码,对小白还是相对友好

%%  相关指标计算
% 决定系数 R2
for k=1:VV
R1 (k,:)= 1 - norm(T_train(k,:) - T_sim1(k,:))^2 / norm(T_train(k,:) - mean(T_train(k,:)))^2;
R2 (k,:)= 1 - norm(T_test(k,:) -  T_sim2(k,:))^2 / norm(T_test(k,:) -  mean(T_test(k,:) ))^2;
disp(['变量' num2str(k) '训练集数据的R2为:', num2str(R1(k,:))])
disp(['变量' num2str(k) '测试集数据的R2为:', num2str(R2(k,:))])
% 平均绝对误差 MAE
mae1 (k,:)= sum(abs(T_sim1(k,:) - T_train(k,:))) ./ M ;
mae2(k,:) = sum(abs(T_sim2(k,:) - T_test(k,:) )) ./ N ;
disp(['变量' num2str(k) '训练集数据的MAE为:', num2str(mae1(k,:))])
disp(['变量' num2str(k) '测试集数据的MAE为:', num2str(mae2(k,:))])
% 平均相对误差 MBE
mbe1(k,:) = sum(T_sim1(k,:) - T_train(k,:)) ./ M ;
mbe2(k,:) = sum(T_sim2(k,:) - T_test(k,:) ) ./ N ;
disp(['变量' num2str(k) '训练集数据的MBE为:', num2str(mbe1(k,:))])
disp(['变量' num2str(k) '测试集数据的MBE为:', num2str(mbe2(k,:))])
end

运行结果:

变量1训练集数据的R2为:0.9998

变量1测试集数据的R2为:0.76982

变量1训练集数据的MAE为:0.39433

变量1测试集数据的MAE为:24.1249

变量1训练集数据的MBE为:0.0052592

变量1测试集数据的MBE为:-5.8176

变量2训练集数据的R2为:-1.9562

变量2测试集数据的R2为:-0.93417

变量2训练集数据的MAE为:10.6578

变量2测试集数据的MAE为:10.2048

变量2训练集数据的MBE为:-4.3999

变量2测试集数据的MBE为:-4.4601


以下三个问题,正在研究中,后续还会慢慢更新。


3.xgboost回归模型如何调参? ##

4.xgboost回归模型如何模拟预测新数据? ##

5.xgboost如何实现多分类预测。


相关文章
|
26天前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
152 0
|
1月前
|
数据采集 分布式计算 并行计算
mRMR算法实现特征选择-MATLAB
mRMR算法实现特征选择-MATLAB
123 2
|
2月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
181 3
|
26天前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
126 8
|
26天前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
127 8
|
1月前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。
|
1月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
2月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
173 2
|
26天前
|
机器学习/深度学习 数据采集 负载均衡
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
105 0
|
26天前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)

热门文章

最新文章