code: public List<Map<String, INDArray>> output(MultiDataSetIterator iterator, String... outputs){
          Preconditions.checkState(trainingConfig != null, "Training config has not been set");
  
          List<String> reqVars;
  
          if(outputs != null){
              reqVars = Arrays.asList(outputs);
          } else {
              reqVars = outputs();
          }
  
          List<Map<String, INDArray>> predictions = new ArrayList<>();
  
          if(!iterator.hasNext() && iterator.resetSupported())
              iterator.reset();
  
          while(iterator.hasNext()){
              MultiDataSet ds = iterator.next();
              Map<String,INDArray> placeholderMap = toPlaceholderMap(ds);
  
              predictions.add(exec(placeholderMap, reqVars));
          }
  
          return predictions;
      }
docs: Perform inference.<br>
  <br>
  <b>Example: classifier inference</b><br>
  Predictions variable name: "softmaxOutput"<br>
  Evaluations to perform: {@link org.nd4j.evaluation.classification.Evaluation}<br>
  Data: single output MultiDataSets<br>
  Code:<br>
  <pre>
  {@code
  MultiDataSetIterator data = ...
  sameDiff.output(iterator, "softmaxOutput);
  }
  </pre>
  
  @param iterator  The iterator - the source of the data for inference
  @param outputs   The set of outputs to report.  If null, defaults to all outputs of this SameDiff.