private static void evaluatePerformance(MultiLayerNetwork net, int testStartIdx, int nExamples, String outputDirectory) throws Exception { //Assuming here that the full test data set doesn't fit in memory -> load 10 examples at a time Map<Integer, String> labelMap = new HashMap<>(); labelMap.put(0, "circle"); labelMap.put(1, "square"); labelMap.put(2, "arc"); labelMap.put(3, "line"); Evaluation evaluation = new Evaluation(labelMap); DataSetIterator testData = getDataSetIterator(outputDirectory, testStartIdx, nExamples, 1000); while(testData.hasNext()) { DataSet dsTest = testData.next(); INDArray predicted = net.output(dsTest.getFeatures(), false); INDArray actual = dsTest.getLabels(); evaluation.evalTimeSeries(actual, predicted); } System.out.println(evaluation.stats()); }
log.info(eval.stats(true));
log.info(eval.stats());
Evaluation evaluation = new Evaluation(TinyImageNetDataSetIterator.getLabels(false), 5); //Set up for top 5 accuracy evaluation = (Evaluation) sparkNet.doEvaluation(pathsTest, loader, evaluation)[0]; log.info("Evaluation statistics: {}", evaluation.stats()); SparkUtils.writeStringToFile(evalPath, evaluation.stats(), sc);
log.info(eval.stats()+"\n"); testIter.reset();
log.info(evaluation.stats());
log.info(evaluation.stats());
log.info(evaluation.stats());
System.out.println(evaluation.stats());
eval.eval(ds.getLabels(), output); log.info(eval.stats()); mnistTest.reset();
eval.eval(ds.getLabels(), output); log.info(eval.stats()); mnistTest.reset();
eval.eval(ds.getLabels(), output); log.info(eval.stats()); mnistTest.reset();
public String stats() { return stats(false); }
@Override public String evaluate(FederatedDataSet federatedDataSet) { DataSet testData = (DataSet) federatedDataSet.getNativeDataSet(); List<DataSet> listDs = testData.asList(); DataSetIterator iterator = new ListDataSetIterator(listDs, BATCH_SIZE); return mNetwork.evaluate(iterator).stats(); }
/** * Perform simple holdout with a given percentage * * @param clf Classifier * @param data Full dataset * @param p Split percentage * @throws Exception */ public static void holdout( Dl4jMlpClassifier clf, Instances data, double p, AbstractInstanceIterator aii) throws Exception { holdout(clf, data, p); Instances[] split = splitTrainTest(data, p); Instances test = split[1]; final DataSetIterator testIter = aii.getDataSetIterator(test, 42); final ComputationGraph model = clf.getModel(); logger.info("DL4J Evaluation: "); org.deeplearning4j.eval.Evaluation evaluation = model.evaluate(testIter); logger.info(evaluation.stats()); }
LOG.info(evaluation.stats());
@Override public String evaluate(FederatedDataSet federatedDataSet) { DataSet testData = (DataSet) federatedDataSet.getNativeDataSet(); List<DataSet> listDs = testData.asList(); DataSetIterator iterator = new ListDataSetIterator(listDs, BATCH_SIZE); Evaluation eval = new Evaluation(OUTPUT_NUM); //create an evaluation object with 10 possible classes while (iterator.hasNext()) { DataSet next = iterator.next(); INDArray output = model.output(next.getFeatureMatrix()); //get the networks prediction eval.eval(next.getLabels(), output); //check the prediction against the true class } return eval.stats(); }
System.out.println(eval.stats());
System.out.println("args = " + evaluation.stats() + "");