class_docstr: Class with all code to run experiment.
class_docstr_tok: ["Class","with","all","code","to","run","experiment","."]
docstr: Runs evaluation and returns top-1 accuracy.
docstr_tok: ["Runs","evaluation","and","returns","top-1","accuracy","."]
code: def run_eval(self):
      """Runs evaluation and returns top-1 accuracy."""
      test_ds = imagenet_data.load(
          imagenet_data.Split.TEST,
          is_training=False,
          batch_dims=[
              jax.local_device_count() * FLAGS.eval_device_batch_size
          ],
          tfds_data_dir=FLAGS.tfds_data_dir,
      )
  
      correct_pred = 0
      total_examples = 0
      for batch_index, batch in enumerate(test_ds):
          correct_pred += self.evaluate_batch_parallel(
              batch["images"], batch["labels"]
          )
          total_examples += batch["images"].shape[0]
          if (FLAGS.max_eval_batches > 0) and (
              batch_index + 1 >= FLAGS.max_eval_batches
          ):
              break
  
      return correct_pred / total_examples
  
file_path: objax/examples/image_classification/imagenet_resnet50_train.py
imports: import os
  import time
  import jax
  import jax.numpy
  import numpy
  from absl import app, flags, logging
  import objax
  from examples.image_classification import imagenet_resnet50_data
  from objax.zoo.resnet_v2 import ResNet50
label_desc: Use image node_id 3 for calling the Experiment obj's underlying member method code with example usage: obj.run_eval() and returns: unknown