【MATLAB第20期】基于matlab的Catboost多输入单输出回归预测模型 catboost-1.1.1版本

简介: 【MATLAB第20期】基于matlab的Catboost多输入单输出回归预测模型 catboost-1.1.1版本

基于matlab的Catboost多输入单输出回归预测模型 catboost-1.1.1版本


运行环境


windows10 matlab2020a

catboost版本:catboost-1.1.1


一、导入数据


采用3输入,1输出,共103组数据,其中80个数据训练,23个数据测试


%%  导入数据
res = xlsread('数据集.xlsx');
%%  划分训练集和测试集
temp = randperm(103);
P_train = res(temp(1: 80), 1: 3)';
T_train = res(temp(1: 80), 8)';
M = size(P_train, 2);
P_test = res(temp(81: end), 1: 3)';
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);

三、建立catboost模型

fit1=table(Ypred1,'VariableNames',{'RawFormulaVal'});
fit2=table(Ypred2,'VariableNames',{'RawFormulaVal'});
writetable(fit1,'fit1.txt');
writetable(CD,'trainlabel.txt');
writetable(traindata,'traindata.txt');
command1 = 'catboost-1.1.1.exe fit % Catboost训练集拟合fit函数创建
status1 = system(command1)
writetable(fit2,'fit2.txt');
writetable(CD,'testlabel.txt');
writetable(testdata,'testdata.txt');
command2 = 'catboost-1.1.1.exe fit % Catboost测试集拟合fit函数创建
status2 = system(command2)

Catboost常见参数设置

%params={"iterations":43, %迭代次数
          %"learning_rate":.001,%初始学习率
          %"cat_features":cat_feature,
        %  "depth":8,
         % "verbose":50,
         % "od_type":"Iter",#overfit detector.
          %"od_wait":50,
          %"eval_metric":"AUC",
         % "random_seed":SEED}

四、预测仿真

Catboost模型将非线性回归的拟合结果进行预测拟合,得到残差值(预测结果-非线性回归拟合)

Pred1=A1.RawFormulaVal;% Catboost训练集残差拟合结果
Pred1=Ypred1+Pred1;%Catboost训练集预测结果
YPRED1 = mapminmax('reverse', Pred1, ps_output);%反归一
Y1=T_train;
Pred2=A2.RawFormulaVal;% Catboost测试集残差拟合结果
Pred2=Ypred2+Pred2;%Catboost测试集预测结果
YPRED2 = mapminmax('reverse', Pred2, ps_output);
Y2=T_test;


五、预测结果

六、代码下载链接获取

后台私聊回复“第20期”可获取下载链接。


相关文章
|
1月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于BP神经网络的苦瓜生长含水量预测模型matlab仿真
本项目展示了基于BP神经网络的苦瓜生长含水量预测模型,通过温度(T)、风速(v)、模型厚度(h)等输入特征,预测苦瓜的含水量。采用Matlab2022a开发,核心代码附带中文注释及操作视频。模型利用BP神经网络的非线性映射能力,对试验数据进行训练,实现对未知样本含水量变化规律的预测,为干燥过程的理论研究提供支持。
|
8天前
|
算法
基于HASM模型的高精度建模matlab仿真
本课题使用HASM进行高精度建模,介绍HASM模型及其简化实现方法。HASM模型基于层次化与自适应统计思想,通过多层结构捕捉不同尺度特征,自适应调整参数,适用于大规模、高维度数据的分析与预测。MATLAB2022A版本运行测试,展示运行结果。
|
1月前
|
机器学习/深度学习 算法 数据处理
基于最小二乘法的太阳黑子活动模型参数辨识和预测matlab仿真
本项目基于最小二乘法,利用Matlab对太阳黑子活动进行模型参数辨识和预测。通过分析过去288年的观测数据,研究其11年周期规律,实现对太阳黑子活动周期性的准确建模与未来趋势预测。适用于MATLAB2022a版本。
|
1月前
|
算法
基于Kronig-Penney能带模型的MATLAB求解与仿真
基于Kronig-Penney能带模型的MATLAB求解与仿真,利用MATLAB的多种数学工具简化了模型分析计算过程。该模型通过一维周期势垒描述晶体中电子运动特性,揭示了能带结构的基本特征,对于半导体物理研究具有重要价值。示例代码展示了如何使用MATLAB进行模型求解和图形绘制。
|
2月前
|
算法 5G 数据安全/隐私保护
SCM信道模型和SCME信道模型的matlab特性仿真,对比空间相关性,时间相关性,频率相关性
该简介展示了使用MATLAB 2022a进行无线通信信道仿真的结果,仿真表明信道的时间、频率和空间相关性随间隔增加而减弱,并且宏小区与微小区间的相关性相似。文中介绍了SCM和SCME模型,分别用于WCDMA和LTE/5G系统仿真,重点在于其空间、时间和频率相关性的建模。SCME模型在SCM的基础上进行了扩展,提供了更精细的参数化,增强了模型的真实性和复杂度。最后附上了MATLAB核心程序,用于计算不同天线间距下的空间互相关性。
75 0
|
2月前
|
算法 5G 数据安全/隐私保护
3D-MIMO信道模型的MATLAB模拟与仿真
该研究利用MATLAB 2022a进行了3D-MIMO技术的仿真,结果显示了不同场景下的LOS概率曲线。3D-MIMO作为5G关键技术之一,通过三维天线阵列增强了系统容量和覆盖范围。其信道模型涵盖UMa、UMi、RMa等场景,并分析了LOS/NLOS传播条件下的路径损耗、多径效应及空间相关性。仿真代码展示了三种典型场景下的LOS概率分布。
85 1
|
2月前
|
算法
基于GA遗传优化的离散交通网络双层规划模型设计matlab仿真
该程序基于GA遗传优化设计了离散交通网络的双层规划模型,以路段收费情况的优化为核心,并通过一氧化碳排放量评估环境影响。在MATLAB2022a版本中进行了验证,显示了系统总出行时间和区域排放最小化的过程。上层模型采用多目标优化策略,下层则确保总阻抗最小,实现整体最优解。
|
2月前
|
监控 算法 安全
基于颜色模型和边缘检测的火焰识别FPGA实现,包含testbench和matlab验证程序
本项目展示了基于FPGA的火焰识别算法,可在多种应用场景中实时检测火焰。通过颜色模型与边缘检测技术,结合HSV和YCbCr颜色空间,高效提取火焰特征。使用Vivado 2019.2和Matlab 2022a实现算法,并提供仿真结果与测试样本。FPGA平台充分发挥并行处理优势,实现低延迟高吞吐量的火焰检测。项目包含完整代码及操作视频说明。
|
2月前
|
算法 数据挖掘 vr&ar
基于ESTAR指数平滑转换自回归模型的CPI数据统计分析matlab仿真
该程序基于ESTAR指数平滑转换自回归模型,对CPI数据进行统计分析与MATLAB仿真,主要利用M-ESTAR模型计算WNL值、P值、Q值及12阶ARCH值。ESTAR模型结合指数平滑与状态转换自回归,适用于处理经济数据中的非线性趋势变化。在MATLAB 2022a版本中运行并通过ADF检验验证模型的平稳性,适用于复杂的高阶自回归模型。
|
2月前
|
机器学习/深度学习 算法 数据挖掘
基于GWO灰狼优化的CNN-LSTM的时间序列回归预测matlab仿真
本项目展示了一种结合灰狼优化(GWO)与深度学习模型(CNN和LSTM)的时间序列预测方法。GWO算法高效优化模型超参数,提升预测精度。CNN提取局部特征,LSTM处理长序列依赖,共同实现准确的未来数值预测。项目包括MATLAB 2022a环境下运行的完整代码及视频教程,代码内含详细中文注释,便于理解和操作。

热门文章

最新文章