网站建设合同包含什么,crm软件是干嘛的,wordpress文章页添加字段,电商网站开发app意义【MATLAB第104期】基于MATLAB的xgboost的敏感性分析/特征值排序计算#xff08;针对多输入单输出回归预测模型#xff09;
因matlab的xgboost训练模型不含敏感性分析算法#xff0c;本文通过使用single算法#xff0c;即单特征因素对输出影响进行分析#xff0c;得出不同…【MATLAB第104期】基于MATLAB的xgboost的敏感性分析/特征值排序计算针对多输入单输出回归预测模型
因matlab的xgboost训练模型不含敏感性分析算法本文通过使用single算法即单特征因素对输出影响进行分析得出不同特征变量对应的权重。
一、数据部分代码
%% 导入数据
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);二、敏感性分析部分代码
%% 敏感性分析
serdata.ft p_test;%测试集输入
userdata.target t_test;%测试集输出
nSel size(p_test,1);%选择的特征数量 ,可以小于等于变量特征数
mtds {regression_ftSel_single};% single方法
nMtd length(mtds);%方法数量
for iMtd 1:nMtd[ftRank,ftScore,errs] mtds{iMtd}(p_train,t_train,p_test,t_test); %仅在训练集上选择特征end
A[[1:nSel],errs];
B2A;[W] B2(:,2);
for i1:size(W,2)WW(1,i)(1./W(1,i))./sum(1./W);
endfigure()
bar(WW)
xlabel(特征变量)
%set(gca,XTickLabel,{x1,x2,x3})
xlabel(影响因素);ylabel(敏感度);
title(敏感性分析)三、运行效果 训练集数据的R2为0.99952 测试集数据的R2为0.90306 训练集数据的MAE为0.061008 测试集数据的MAE为1.9449 训练集数据的MBE为0.001729 测试集数据的MBE为-0.54221
四、代码获取
1.阅读首页置顶文章 2.关注CSDN 3.根据自动回复消息回复“104期”以及相应指令即可获取对应下载方式。