(MATLAB源代码)SVM多分类

本文介绍了如何利用MATLAB和libSVM库建立多分类模型,针对带有标签的高光谱数据,通过数据划分、归一化、参数选择、模型训练和测试等步骤实现SVM的多类别分类。数据包含三个类别,每个类别300个样本,特征数为237。训练集和测试集分别为800和100个样本,并采用RBF核函数,通过CV方法确定最佳参数c和gamma。
摘要由CSDN通过智能技术生成


SVM 多分类

采用libSVM包进行多分类

对带标签的高光谱数据建立分类模型

数据描述:三个类别,每个类别300个样本,特征数量为237。

代码

1.训练集、测试集

将数据分为训练集和测试集,训练集数量为800,测试集为100。

clear
clc

load data.mat

test_num = 100;
l = randperm(size(dataset,1));

%  测试集――100个样本
test_data = dataset(l(1:test_num),:);
test_label = label(l(1:test_num),:);
%  训练集――800个样本
train_data = dataset(l(test_num+1:end),:);
train_label = label(l(test_num+1:end),:);

write_traindata = [train_label train_data];
write_testdata = [test_label test_data];
csvwrite('C:\Users\Desktop\traindata.csv',write_traindata);
csvwrite('C:\Users\Desktop\testdata.csv',write_testdata);
# dlmwrite('C:\Users\Desktop\traindata.csv',write_traindata,'-append');  
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值