资源简介
支持向量机SVM可以使用多分类的问题,本次的代码实现的就是这个功能,里面含有训练和测试数据,分别含有12类标签,也就是都分为12类,另外代码采用了神经网络中的one-versus-one的思想,将数据分类K(K-1)/2个子类,分别调用SVM方法实现
代码片段和文件信息
%% Loading data
% by 江志坚
% last modified 2015.03.19
close all;
clear all;
clc;
[trainlabeltrainmatrix]=libsvmread(‘train.txt‘);
[testlabeltestmatrix]=libsvmread(‘test.txt‘);
fprintf(‘optimization ‘);
[train_scaletest_scaleps] = scaleForSVM(trainmatrixtestmatrix-11);
%% 选择核函数tag=0:核函数为线性函数;tag=2:核函数为RBF
tag=2;
%% 直接调用libsvm工具进行多分类
if tag==0
tic;
model = svmtrain(trainlabel trainmatrix‘-s 0 -t 0 -c 4 -g 128‘);
[predict_labe accuracy decision_values] =svmpredict(testlabel testmatrix model);
toc;
else
tic;
model = svmtrain(trainlabel trainmatrix‘-s 0 -t 2 -c 4 -g 128‘);
[predict_label accuracy decision_values] =svmpredict(testlabel testmatrix model);
toc;
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 354623 2016-03-15 15:27 test.txt
文件 1420591 2016-03-15 15:27 train.txt
文件 771 2016-03-19 22:11 one_versus_one.m
----------- --------- ---------- ----- ----
1775985 3
- 上一篇:opencv.rar
- 下一篇:net财务管理系统
评论
共有 条评论