资源简介
matlab使用libsvm进行分类代码实例.rar

代码片段和文件信息
%% I. 清空环境变量
clear all
clc
%% II. 导入数据
load BreastTissue_data.mat
%%
% 1. 随机产生训练集和测试集
n = randperm(size(matrix1));
%%
% 2. 训练集——80个样本
train_matrix = matrix(n(1:80):);
train_label = label(n(1:80):);
%%
% 3. 测试集——26个样本
test_matrix = matrix(n(81:end):);
test_label = label(n(81:end):);
%% III. 数据归一化
[Train_matrixPS] = mapminmax(train_matrix‘);
Train_matrix = Train_matrix‘;
Test_matrix = mapminmax(‘apply‘test_matrix‘PS);
Test_matrix = Test_matrix‘;
%% IV. SVM创建/训练(RBF核函数)
%%
% 1. 寻找最佳c/g参数——交叉验证方法
[cg] = meshgrid(-10:0.2:10-10:0.2:10);
[mn] = size(c);
cg = zeros(mn);
eps = 10^(-4);
v = 5;
bestc = 1;
bestg = 0.1;
bestacc = 0;
for i = 1:m
for j = 1:n
cmd = [‘-v ‘num2str(v)‘ -t 2‘‘ -c ‘num2str(2^c(ij))‘ -g ‘num2str(2^g(ij))];
cg(ij) = svmtrain(train_labelTrain_matrixcmd);
if cg(ij) > bestacc
bestacc = cg(ij);
bestc = 2^c(ij);
bestg = 2^g(ij);
end
if abs( cg(ij)-bestacc )<=eps && bestc > 2^c(ij)
bestacc = cg(ij);
bestc = 2^c(ij);
bestg = 2^g(ij);
end
end
end
cmd = [‘ -t 2‘‘ -c ‘num2str(bestc)‘ -g ‘num2str(bestg)];
%%
% 2. 创建/训练SVM模型
model = svmtrain(train_labelTrain_matrixcmd);
%% V. SVM仿真测试
[predict_label_1accuracy_1prob_estimates] = svmpredict(train_labelTrain_matrixmodel);
[predict_label_2accuracy_2prob_estimates2] = svmpredict(test_labelTest_matrixmodel);
result_1 = [train_label predict_label_1];
result_2 = [test_label predict_label_2];
%% VI. 绘图
figure
plot(1:length(test_label)test_label‘r-*‘)
hold on
plot(1:length(test_label)predict_label_2‘b:o‘)
grid on
legend(‘真实类别‘‘预测类别‘)
xlabel(‘测试集样本编号‘)
ylabel(‘测试集样本类别‘)
string = {‘测试集SVM预测结果对比(RBF核函数)‘;
[‘accuracy = ‘ num2str(accuracy_2(1)) ‘%‘]};
title(string)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6802 2010-11-03 21:23 svm分类\BreastTissue_data.mat
文件 2038 2019-03-24 09:52 svm分类\main.m
目录 0 2019-03-28 23:35 svm分类
----------- --------- ---------- ----- ----
8840 3
- 上一篇:多目标粒子群算法matlab
- 下一篇:OSTU多阈值分割MATLAB程序
相关资源
- 《MATLAB仿真在现代通信中的应用》徐
- KECA1.m
- zw_支持向量机与朴素贝叶斯算法matl
- test1_mat.m
- Finnal6.m
- odefun1.m
-
飞控simuli
nk仿真.zip -
光伏发电最大功率点跟踪simuli
nk仿真 - MATLAB全球磁场绘图程序.zip
- MATLAB人脸识别考勤系统摄像头,记录
- MATLAB多方法车牌识别系统bp+模板+GUI
- 四旋翼MATLAB仿真文件实验报告.zip
-
4.1基于Simuli
nk的图像、视频处理.z -
Simuli
nk的低通数字滤波器的仿真分析 - matlabR2017b迅雷种子文件及安装教程.
- 最优化方法及其matlab程序实现.zip
- 5d5680a96365f0e9a0c7114890f97460.mobi
- 《全面详解LTE:MATLAB建模、仿真与实
- XXXXXXRobustControlDesignwithMATLAB.pdf
- matlab图像处理包括数据反演以及其他
- Matlab常用32种算法.zip
- 传感器网络节点定位算法matlab代码.
- 基于DCT变换和DFT变换的数字图像压缩
- 10900257雷达系统设计MATLAB仿真.pdf
- 神经网络、遗传算法、支持向量机、
- 《先进PID控制MATLAB仿真第3版》仿真程
- 雷达系统设计MATLAB仿真.pdf196612
- 滑模变结构控制MATLAB仿真(第1版)(
- [Matlab作品]matlab实现视频中动态目标跟
- zw_qq_15023225-7501331-S函数的BP神经网络
评论
共有 条评论