2015-01-16 19 views
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步。那麼,爲什麼這個例外呢?

+0

在下面回答了我自己的問題。 –

回答

相關問題