郑州优化网站推广,应用网站,东莞seo推广公司,适应 分辨率 网站【MATLAB第77期】基于MATLAB代理模型算法的降维/特征排序/数据处理回归/分类问题MATLAB代码实现
本文介绍基于libsvm代理模型算法的特征排序方法合集#xff0c;包括#xff1a; 1.基于每个特征预测精度进行排序#xff08;libsvm代理模型#xff09; 2.基于相关系数corr的…【MATLAB第77期】基于MATLAB代理模型算法的降维/特征排序/数据处理回归/分类问题MATLAB代码实现
本文介绍基于libsvm代理模型算法的特征排序方法合集包括 1.基于每个特征预测精度进行排序libsvm代理模型 2.基于相关系数corr的特征排序libsvm代理模型 3.svmrfe_ker二分类【后续更新】 4.基于SVM-RFE递归特征消除的特征排序svmrfe_ori二分类【后续更新】
一、多输入单输出多分类问题
数据设置 分类数据12输入1输出4分类357样本
classdataxlsread(数据集C.xlsx);
Xclassdata(:,1:end-1);% 输入变量
Yclassdata(:,end);%输出标签
[X, ps_input] mapminmax(X, 0, 1);
XX;
ptrain_per0.7;%训练比例
trainIdx randperm(size(X,1),ceil(size(X,1)*ptrain_per));%训练样本编号
testIdx setdiff(1:size(X,1),trainIdx);%测试样本编号
K10;%10折
cvObj cvpartition(Y(testIdx),k,K);
userdata.cvObj cvObj;
userdata.ft X(testIdx,:);%测试集输入
userdata.target Y(testIdx);%测试集输出nSel size(X,2);%选择的特征数量 ,可以小于等于变量特征数1、基于每个特征预测精度进行排序libsvm代理模型
即通过每个变量作为输入特征通过十折平均误差率来对特征进行排序。 累计贡献度为 0.9 2、基于相关系数corr的特征排序libsvm代理模型
适应度函数——测试集平均R2为0.88588
二、多输入单输出回归问题
数据设置 分类数据7输入1输出107样本
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行%% 导入数据
res xlsread(数据集.xlsx);%% 划分训练集和测试集ptrain_per0.7;%训练比例
trainIdx randperm(size(res,1),ceil(size(res,1)*ptrain_per));%训练样本编号
testIdx setdiff(1:size(res,1),trainIdx);%测试样本编号P_train res(trainIdx, 1: 7);
T_train res(trainIdx, 8);
M size(P_train, 2);P_test res(testIdx, 1: 7);
T_test res(testIdx, 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);
K10;%10折
cvObj cvpartition(Y(testIdx),k,K);
userdata.cvObj cvObj;
userdata.ft X(testIdx,:);%测试集输入
userdata.target Y(testIdx);%测试集输出nSel size(X,2);%选择的特征数量 ,可以小于等于变量特征数1、基于每个特征预测精度进行排序libsvm代理模型
即通过每个变量作为输入特征通过十折平均误差率来对特征进行排序。 累计贡献度为 0.9
2、基于相关系数corr的特征排序libsvm代理模型 三、代码获取
CSDN私信回复“77期”即可获取下载方式。