soporte - Ejemplo de 10 veces la clasificación de SVM en MATLAB
maquinas de soporte vectorial ejemplos (1)
Necesito un ejemplo descriptivo que muestre cómo hacer una clasificación SVM de 10 veces en un conjunto de datos de dos clases. solo hay un ejemplo en la documentación de MATLAB, pero no es 10 veces. ¿Alguien me puede ayudar?
Aquí hay un ejemplo completo, que utiliza las siguientes funciones de la Caja de herramientas de Bioinformática: SVMTRAIN , SVMCLASSIFY , CLASSPERF , CROSSVALIND .
load fisheriris %# load iris dataset
groups = ismember(species,''setosa''); %# create a two-class problem
%# number of cross-validation folds:
%# If you have 50 samples, divide them into 10 groups of 5 samples each,
%# then train with 9 groups (45 samples) and test with 1 group (5 samples).
%# This is repeated ten times, with each group used exactly once as a test set.
%# Finally the 10 results from the folds are averaged to produce a single
%# performance estimation.
k=10;
cvFolds = crossvalind(''Kfold'', groups, k); %# get indices of 10-fold CV
cp = classperf(groups); %# init performance tracker
for i = 1:k %# for each fold
testIdx = (cvFolds == i); %# get indices of test instances
trainIdx = ~testIdx; %# get indices training instances
%# train an SVM model over training instances
svmModel = svmtrain(meas(trainIdx,:), groups(trainIdx), ...
''Autoscale'',true, ''Showplot'',false, ''Method'',''QP'', ...
''BoxConstraint'',2e-1, ''Kernel_Function'',''rbf'', ''RBF_Sigma'',1);
%# test using test instances
pred = svmclassify(svmModel, meas(testIdx,:), ''Showplot'',false);
%# evaluate and update performance object
cp = classperf(cp, pred, testIdx);
end
%# get accuracy
cp.CorrectRate
%# get confusion matrix
%# columns:actual, rows:predicted, last-row: unclassified instances
cp.CountingMatrix
con la salida:
ans =
0.99333
ans =
100 1
0 49
0 0
obtuvimos un 99.33%
precisión con solo una instancia de ''setosa'' clasificada incorrectamente como ''no setosa''
ACTUALIZACIÓN : las funciones de SVM se han movido a la caja de herramientas Estadísticas en R2013a