error using svmtrain (not enough inputs)

i am using a code
clc
C=[1 2 3 ;4 5 6]
TrainLabel=C;TrainVec=[0;1];
bestcv = 0;
for log2c = -6:10,
for log2g = -6:3,
cmd = ['-v 5 -c ', num2str(2^log2c), ' -g ', num2str(2^log2g)];
cv = svmtrain(TrainLabel,TrainVec, cmd);
if (cv >= bestcv),
bestcv = cv; bestc = 2^log2c; bestg = 2^log2g;
end
fprintf('(best c=%g, g=%g, rate=%g)\n',bestc, bestg, bestcv);
end
end
i get error as
Error using ==> svmtrain at 225
Incorrect number of arguments to svmtrain.
Error in ==> ex2011 at 10
cv = svmtrain(TrainLabel,TrainVec, cmd);
please help were i have done mistake

Risposte (3)

Ilya
Ilya il 5 Apr 2012

0 voti

If you are using svmtrain function from the official MATLAB install (verify by typing 'which svmtrain' in your command window), it does not accept the syntax of your cmd string. Please read 'help svmtrain' or 'doc svmtrain'.
The Mathworks-provided svmtrain() does not accept an argument which is a single string with flags and values. Instead it accepts only name/value pairs, such as
svmtrain(TrainLabel,TrainVec, 'method', 'SMO')
The flags you use have no obvious correspondence in the supported name/value pairs.

3 Commenti

But walter i want to apply those values of c and gamma,i want to use rbf kernel,is what i had performed correct?
i got those codings from one of websites only

Accedi per commentare.

ansha nisar
ansha nisar il 12 Ago 2021

How can I resolve this problem Error using svmtrain

1 Commento

models{k} = fitcsvm(Trainfea, G1vAll, 'solver', 'SMO');
and later
if predict(models{k}, Testfea(j,:))

Accedi per commentare.

Categorie

Scopri di più su MATLAB in Centro assistenza e File Exchange

Tag

Richiesto:

il 5 Apr 2012

Commentato:

il 12 Ago 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by