本文整理匯總了Java中weka.classifiers.Evaluation.pctCorrect方法的典型用法代碼示例。如果您正苦於以下問題:Java Evaluation.pctCorrect方法的具體用法?Java Evaluation.pctCorrect怎麽用?Java Evaluation.pctCorrect使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類weka.classifiers.Evaluation
的用法示例。
在下文中一共展示了Evaluation.pctCorrect方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: evaluate
import weka.classifiers.Evaluation; //導入方法依賴的package包/類
public static void evaluate(Classifier clf, Instances data, double minPerfomance)
throws Exception {
Instances[] split = TestUtil.splitTrainTest(data);
Instances train = split[0];
Instances test = split[1];
clf.buildClassifier(train);
Evaluation trainEval = new Evaluation(train);
trainEval.evaluateModel(clf, train);
Evaluation testEval = new Evaluation(train);
testEval.evaluateModel(clf, test);
final double testPctCorrect = testEval.pctCorrect();
final double trainPctCorrect = trainEval.pctCorrect();
log.info("Train: {}, Test: {}", trainPctCorrect, testPctCorrect);
boolean success =
testPctCorrect > minPerfomance && trainPctCorrect > minPerfomance;
Assert.assertTrue(success);
}
示例2: getMetricScore
import weka.classifiers.Evaluation; //導入方法依賴的package包/類
public double getMetricScore(Evaluation eval, PerformanceMetric metric) {
if (metric.getName().equals("accuracy")) {
return eval.pctCorrect();
} else if (metric.getName().equals("auc")) {
return eval.areaUnderROC(0);
} else if (metric.getName().equals("rmse")) {
return eval.rootMeanSquaredError();
} else if (metric.getName().equals("mae")) {
return eval.meanAbsoluteError();
} else if (metric.getName().equals("logLoss")) {
return eval.SFMeanSchemeEntropy();
} else if (metric.getName().equals("rmsle")) {
return eval.rootMeanSquaredLogError();
}
throw new RuntimeException(this.getClass().getName() + "impl me please: " + metric.getName());
}
示例3: getCrossValidation
import weka.classifiers.Evaluation; //導入方法依賴的package包/類
/**
* @param cls
* @param data
* @param folds
* @return [0] = pctCorrect, [1] = pctIncorrect
* @throws Exception
*/
public double[] getCrossValidation(Classifier cls, Instances data, int folds) throws Exception {
cls.buildClassifier(data);
Classifier copy = Classifier.makeCopy(cls);
double[] results = new double[2];
for (int n = 0; n < folds; n++) {
Instances train = data.trainCV(folds, n);
Instances test = data.testCV(folds, n);
// CSVSaver saver = new CSVSaver();
// saver.setInstances(train);
// saver.setFile(new File("../data.csv"));
// saver.writeBatch();
cls.buildClassifier(train);
Evaluation eval = new Evaluation(data);
eval.evaluateModel(cls, test);
results[0] = results[0] + (eval.pctCorrect() / 100);
results[1] = results[1] + (eval.pctIncorrect() / 100);
}
cls = copy;
results[0] = results[0] / folds;
results[1] = results[1] / folds;
return results;
}
示例4: getValidation
import weka.classifiers.Evaluation; //導入方法依賴的package包/類
/**
* @param cls
* @param trainingData
* @param testData
* @return [0] = pctCorrect, [1] = pctIncorrect
* @throws Exception
*/
public double[] getValidation(Classifier cls, Instances trainingData, Instances testData)
throws Exception {
cls.buildClassifier(trainingData);
Evaluation eval = new Evaluation(trainingData);
eval.evaluateModel(cls, testData);
double[] results = new double[2];
results[0] = eval.pctCorrect() / 100;
results[1] = eval.pctIncorrect() / 100;
return results;
}
示例5: crossValidate
import weka.classifiers.Evaluation; //導入方法依賴的package包/類
public double crossValidate(Classifier cls, Instances data) throws Exception {
double pctCorrect;
Evaluation eval = new Evaluation(data);
StringBuffer forPredictionsPrinting = new StringBuffer();
PlainText classifierOutput = new PlainText();
classifierOutput.setBuffer(forPredictionsPrinting);
weka.core.Range attsToOutput = null;
Boolean outputDistribution = new Boolean(true);
classifierOutput.setOutputDistribution(true);
eval.crossValidateModel(cls, data, 10, new Random(1), classifierOutput,
attsToOutput, outputDistribution);
System.out.println("Number of correct classified " + eval.correct());
System.out.println("Percentage of correct classified "
+ eval.pctCorrect());
System.out.println(eval.toClassDetailsString());
System.out.println(eval.toMatrixString());
System.out.println(eval.toSummaryString());
pctCorrect = eval.pctCorrect()/100;
return pctCorrect;
}
示例6: getScore
import weka.classifiers.Evaluation; //導入方法依賴的package包/類
public float getScore(Evaluation eval, Instances testingData){
return (float)(100 - eval.pctCorrect());
}