%支持向量机
%清空环境变量
close all;
clc;
clear ;
%%读取数据
data1=xlsread('train_data.xlsx');%%读取训练数据
data2=xlsread('test_data.xlsx');%%读取测试数据
%%分类数据集
features1=data1(:,1:4);%%训练数据输入
class1=data1(:,5);%%训练数据输出
features2=data2(:,1:4);%%测试数据输入
class2=data2(:,5);%%测试数据输出
%%归一化
temp1=mapminmax(features1',0,1);%%对训练数据输入进行归一化
featuresn1=temp1';%%转置
temp2=mapminmax(features2',0,1);%%对测试数据输入进行归一化
featuresn2=temp2';%%转置
% 构建支持向量机
SVMModel = fitcsvm(featuresn1, class1, 'KernelFunction', 'rbf', 'BoxConstraint', 100, 'KernelScale', 0.1);
% 对测试数据预测
[predict_class]= predict(SVMModel, featuresn2);
%%绘图
figure
plot(class2,'bo')
hold on
plot(predict_class,'r*')
grid on
xlabel('样本序号')
ylabel('类型')
legend('实际类型','预测类型')
set(gca,'fontsize',12)
%%输出预测准确率
accuracy = sum(predict_class == class2) / numel(class2);
disp(['预测准确度:', num2str(accuracy * 100), '%']);
09-25
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交