code: def evaluate(dataset):
    
    with tf.Graph().as_default():
      # Get images and labels from the dataset.
      images, labels = image_processing.inputs(dataset)
  
      # Number of classes in the Dataset label set plus 1.
      # Label 0 is reserved for an (unused) background class.
      num_classes = dataset.num_classes() + 1
  
      # Build a Graph that computes the logits predictions from the
      # inference model.
      logits, _ = inception.inference(images, num_classes)
  
      # Calculate predictions.
      top_1_op = tf.nn.in_top_k(logits, labels, 1)
      top_5_op = tf.nn.in_top_k(logits, labels, 5)
  
      # Restore the moving average version of the learned variables for eval.
      variable_averages = tf.train.ExponentialMovingAverage(
          inception.MOVING_AVERAGE_DECAY)
      variables_to_restore = variable_averages.variables_to_restore()
      saver = tf.train.Saver(variables_to_restore)
  
      # Build the summary operation based on the TF collection of Summaries.
      summary_op = tf.summary.merge_all()
  
      graph_def = tf.get_default_graph().as_graph_def()
      summary_writer = tf.summary.FileWriter(FLAGS.eval_dir,
                                              graph_def=graph_def)
  
      while True:
        _eval_once(saver, summary_writer, top_1_op, top_5_op, summary_op)
        if FLAGS.run_once:
          break
        time.sleep(FLAGS.eval_interval_secs)
docs: Evaluate model on Dataset for a number of steps.