docs: public <T extends Evaluation> T evaluate(DataSetIterator iterator, List<String> labelsList, int topN) {
          if (labelsList == null)
              labelsList = iterator.getLabels();
  
          Layer outputLayer = getOutputLayer(0);
          if(getConfiguration().isValidateOutputLayerConfig()){
              OutputLayerUtil.validateOutputLayerForClassifierEvaluation(outputLayer.conf().getLayer(), Evaluation.class);
          }
  
          return (T)doEvaluation(iterator, new org.deeplearning4j.eval.Evaluation(labelsList, topN))[0];
      }