【MATLAB第9期】基于MATLAB的xgboost算法安装超详细教学(踩坑避雷指南)暂时仅限于Windows系统 #末尾含源码获取链接

简介: 【MATLAB第9期】基于MATLAB的xgboost算法安装超详细教学(踩坑避雷指南)暂时仅限于Windows系统 #末尾含源码获取链接

1.前言


网上基于MATLAB的xgboost源码资源太少了,而且找到的工具箱还不能立马用,对新手不太友好,接下来我将研究捣鼓半天的成果和经验分享给大家。


2.安装具备条件


1.有matlab软件,版本越高越好,我用的是2020a。

2.有matlab账号,需要去下载xgboost工具箱。

3.电脑可以连外网(这个绝大部分人比较难做到)


3.安装步骤


1.登录matlab社区网站

https://ww2.mathworks.cn/matlabcentral/fileexchange/

2.账号注册

3.下载工具箱

工具箱下载到一个自定义文件,路径越简单越好。

4.打开MATLAB软件

5.修改代码路径


6.下载wheel file文件(此处实现较麻烦,要用外网,有条件者可以尝试)

网址:https://s3-us-west-2.amazonaws.com/xgboost-nightly-builds/list.html

工具箱中是调用《xgboost-1.1.0+115e4c33608c3b0cee75402f1193e67fdb11ef9a-py3-none-win_amd64.whl》这个版本的whl文件。

针对windows64位系统,要注意下载后缀为win_amd64的文件,当然版本不需要严格用1.10的 ,用1.6版本的也可以,本文演示用1.2版本的whl文件

将whl文件下载到你的xgboost文件夹根目录里。

7.继续修改xgboost_install路径

8.下载xgboost.h代码


建议要把outfilename变量隐藏,这个代码可以生成xgboost.h文件,但是我的matlab无法访问。

这种情况下,用浏览器打开对应的url网址,正常情况下可以访问,得到一大段代码,其就是xgboost的c语言代码,可以整体复制下来。

然后新建脚本,粘贴代码

9.修改xgboost_train路径

10.继续修改xgboost_test路径

同上

11.安装matlab插件

12.右键运行xgboost_install

会多一个lib文件夹

然后把xgboost.h文件放在lib里

13.找到案例代码,试运行

打开xgboost_train

将这段代码复制下来。

新建main.m的主程序代码,将内容粘贴进去。

clear all
warning off
 load carsmall; Xtrain = [Acceleration Cylinders Displacement Horsepower MPG]; ytrain = cellstr(Origin); ytrain = double(ismember(ytrain,'USA'));
X = Xtrain(1:70,:); y = ytrain(1:70); Xtest = Xtrain(size(X,1)+1:end,:); ytest = ytrain(size(X,1)+1:end);
 model_filename = []; model = xgboost_train(X,y,[],999,'AUC',model_filename); %%% model_filename = 'xgboost_model.xgb'
 loadmodel = 0; Yhat = xgboost_test(Xtest,model,loadmodel);
 [XX,YY,~,AUC] = perfcurve(ytest,Yhat,1);
figure; plot(XX,YY,'LineWidth',2); xlabel('False positive rate'); ylabel('True positive rate'); title('ROC for Classification by Logistic Regression'); grid on
figure; scatter(Yhat,ytest + 0.1*rand(length(ytest),1)); grid on

最后右键main运行

运行成功~

4.源码获取

如果你无法连接外网下载whl文件,以及xgboost.h文件,我这里可以分享相应资源,并包含用xgboost进行回归预测的代码。点击下方获取链接,即可下载。

获取链接

运行展示如下:

最后是想说整理不易,目前网上很少有介绍如何去安装matlab的xgboost算法工具箱的文章,如果本文对你有帮助,希望能够捧个场,感谢~




相关文章
|
2月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
176 3
|
22天前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
129 0
|
26天前
|
安全 Ubuntu iOS开发
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
98 3
Nessus Professional 10.10 Auto Installer for Windows - Nessus 自动化安装程序
|
22天前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
116 8
|
22天前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
|
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代码实现)
167 2
|
22天前
|
传感器 机器学习/深度学习 算法
【无人机协同】动态环境下多无人机系统的协同路径规划与防撞研究(Matlab代码实现)
【无人机协同】动态环境下多无人机系统的协同路径规划与防撞研究(Matlab代码实现)
111 0
|
22天前
|
机器学习/深度学习 数据采集 负载均衡
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)

热门文章

最新文章