1
我正在編寫此代碼,使用Weka使用LibSVM進行5倍交叉驗證。當使用Weka運行LibSVM時,這個異常意味着什麼?
LibSVM svm = new LibSVM();
svm.setKernelType(new SelectedTag(2, LibSVM.TAGS_KERNELTYPE));
svm.setDegree(2);
//Run a cross validation to select the right parameters
CVParameterSelection ps = new CVParameterSelection();
ps.setClassifier(svm);
ps.setNumFolds(5); // using 5-fold CV
ps.addCVParameter("G 1 10 .1");
// build and output best options
//I get exception below ->>>>>>>>>>>>>>
ps.buildClassifier(isTrainingSet);
System.out.println(Utils.joinOptions(ps.getBestClassifierOptions()));
但它拋出一個異常說
Exception in thread "main" java.lang.Exception: Error: gamma < 0
at weka.classifiers.functions.LibSVM.buildClassifier(LibSVM.java:1690)
at weka.classifiers.meta.CVParameterSelection.findParamsByCrossValidation(CVParameterSelection.java:377)
at weka.classifiers.meta.CVParameterSelection.findParamsByCrossValidation(CVParameterSelection.java:354)
at weka.classifiers.meta.CVParameterSelection.buildClassifier(CVParameterSelection.java:628)
at ExtractTopics.main(ExtractTopics.java:164)
我覺得參數GAMME從不小於零,對吧?初始值爲1,最終值爲10,10步。那麼,爲什麼這個例外呢?
在下面回答了我自己的問題。 –