%% SVM神经网络的数据分类预测----意大利葡萄酒种类识别
%% 清空环境变量
close all;
clear;
clc;
% format compact;
%% 数据提取
sh = csvread('pattern17Train.csv',1,1);
n = randperm(1000);
% 训练集
train_input = sh(n(1:900),1:48);
% 相应的训练集的标签也要分离出来
train_labels = sh(n(1:900),49);
% 将第一类的31-59,第二类的96-130,第三类的154-178做为测试集
test_input = sh(n(901:1000),1:48);
% 相应的测试集的标签也要分离出来
test_labels = sh(n(901:1000),49);
%% 数据预处理
% 数据预处理,将训练集和测试集归一化到[0,1]区间
[mtrain,ntrain] = size(train_input);
[mtest,ntest] = size(test_input);
dataset = [train_input;test_input];
% mapminmax为MATLAB自带的归一化函数
[dataset_scale,ps] = mapminmax(dataset',0,1);
dataset_scale = dataset_scale';
train_input = dataset_scale(1:mtrain,:);
test_input = dataset_scale( (mtrain+1):(mtrain+mtest),: );
%% SVM网络训练
model = svmtrain(train_labels, train_input, '-c 2 -g 1');
%% SVM网络预测
[predict_label, accuracy] = svmpredict(test_labels, test_input, model);
%% 结果分析
% 测试集的实际分类和预测分类图
% 通过图可以看出只有一个测试样本是被错分的
figure (3)
hold on;
plot(test_labels,'o');
plot(predict_label,'r*');
xlabel('测试集样本','FontSize',12);
ylabel('类别标签','FontSize',12);
legend('实际测试集分类','预测测试集分类');
title('测试集的实际分类和预测分类图','FontSize',12);
grid on;
%%
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
svm分类.rar (2个子文件)
pattern17Train.csv 550KB
svmfenleiqi.m 1KB
共 2 条
- 1
资源评论
- 七寸青衫2023-04-17实在是宝藏资源、宝藏分享者!感谢大佬~
- 所谓自由2023-07-17资源内容详实,描述详尽,解决了我的问题,受益匪浅,学到了。
- 我们是谁。2024-04-20终于找到了超赞的宝藏资源,果断冲冲冲,支持!
- 2301_776771202023-05-31发现一个超赞的资源,赶紧学习起来,大家一起进步,支持!
- 2301_774735202023-08-11资源中能够借鉴的内容很多,值得学习的地方也很多,大家一起进步!
神经网络机器学习智能算法画图绘图
- 粉丝: 2375
- 资源: 569
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功