【发布时间】:2013-06-27 21:29:45
【问题描述】:
我是 Matlab 的新手。是否有任何示例代码用于使用 SVM 对某些数据(具有 41 个特征)进行分类,然后将结果可视化?我想使用 SVM 方法对数据集(有五个类)进行分类。 我阅读了“A Practical Guide to Support Vector Classication”文章并看到了一些示例。我的数据集是 kdd99。我写了以下代码:
%% Load Data
[data,colNames] = xlsread('TarainingDataset.xls');
groups = ismember(colNames(:,42),'normal.');
TrainInputs = data;
TrainTargets = groups;
%% Design SVM
C = 100;
svmstruct = svmtrain(TrainInputs,TrainTargets,...
'boxconstraint',C,...
'kernel_function','rbf',...
'rbf_sigma',0.5,...
'showplot','false');
%% Test SVM
[dataTset,colNamesTest] = xlsread('TestDataset.xls');
TestInputs = dataTset;
groups = ismember(colNamesTest(:,42),'normal.');
TestOutputs = svmclassify(svmstruct,TestInputs,'showplot','false');
但我不知道如何获得我的分类的 accuracy 或 mse,我在我的 showplot 中使用 svmclassify 但什么时候是 @987654325 @,我收到此警告:
The display option can only plot 2D training data
谁能帮帮我?
【问题讨论】:
-
一般来说你需要了解更多关于机器学习的知识,它不是一个好的或容易盲目使用的工具。
-
我同意@Raff.Edward 的观点,但您应该看的是交叉验证来衡量您的错误/准确性。
标签: matlab machine-learning classification svm