diff --git a/constants_crunchy.py b/constants_crunchy.py
index 89922785f44c643b78e45a83bed0f14e9c31b3fe..896561330eba6ea5128bd33e02c42897fa38307c 100644
--- a/constants_crunchy.py
+++ b/constants_crunchy.py
@@ -128,8 +128,8 @@ region_model_accuracies_txt = os.path.join(
     'model_accuracies.txt')
 
 # Object Attribute Classifier Evaluation Params
-region_eval_on = 'val' # One of {'val','test','train'}
-region_model_to_eval = region_model + '-' + '77500'
+region_eval_on = 'test' # One of {'test','train_held_out'}
+region_model_to_eval = region_model + '-' + '34000'
 
 region_attribute_scores_dirname = os.path.join(
     region_output_dir,
diff --git a/object_attribute_classifier_cached_features/eval.py b/object_attribute_classifier_cached_features/eval.py
index 48ba6b9d826a070f8d0b3353e97adafc4c9a6313..47ae4f72597da00c96e9d535dd0818e68b3fda94 100644
--- a/object_attribute_classifier_cached_features/eval.py
+++ b/object_attribute_classifier_cached_features/eval.py
@@ -41,23 +41,27 @@ def create_initializer(graph, sess, model_to_eval):
     return initializer()
 
 
-def create_batch_generator(num_samples, num_epochs, offset):
+def create_batch_generator(region_ids_json):
     data_mgr = cropped_regions.data(
         constants.genome_resnet_feat_dir,
         constants.image_dir,
         constants.object_labels_json,
         constants.attribute_labels_json,
         constants.regions_json,
+        region_ids_json,
         constants.image_size,
         channels=3,
         resnet_feat_dim = constants.resnet_feat_dim,
         mean_image_filename=None)
 
+    num_regions = len(data_mgr.region_ids)
+    print num_regions
+
     index_generator = tftools.data.random(
         constants.region_batch_size, 
-        num_samples, 
-        num_epochs, 
-        offset)
+        num_regions, 
+        1, 
+        0)
     
     batch_generator = tftools.data.async_batch_generator(
         data_mgr, 
@@ -253,24 +257,16 @@ def eval(
 if __name__=='__main__':
     num_epochs = 1
 
-    if constants.region_eval_on=='val':
-        num_samples = constants.num_val_regions
-        offset = constants.num_train_regions
+    if constants.region_eval_on=='train_held_out':
+        region_ids_json = constants.genome_train_held_out_region_ids
     elif constants.region_eval_on=='test':
-        num_samples = constants.num_test_regions
-        offset = constants.num_train_regions + \
-                 constants.num_val_regions
-    elif constants.region_eval_on=='train':
-        num_samples = constants.num_train_regions
-        offset = 0
+        region_ids_json = constants.genome_test_region_ids
     else:
-        print "eval_on can only be either 'val' or 'test' or 'train'"
+        print "eval_on can only be 'test' or 'train_held_out'"
+        raise
 
     print 'Creating batch generator...'
-    batch_generator = create_batch_generator(
-        num_samples,
-        num_epochs,
-        offset)
+    batch_generator = create_batch_generator(region_ids_json)
 
     print 'Creating computation graph...'
     graph = train.graph_creator(
@@ -293,8 +289,8 @@ if __name__=='__main__':
     initializer = create_initializer(
         graph, 
         sess, 
-        constants.answer_model_to_eval)
-        # constants.region_model_to_eval)
+        #constants.answer_model_to_eval)
+        constants.region_model_to_eval)
 
     print 'Creating feed dict creator...'
     feed_dict_creator = train.create_feed_dict_creator(graph.plh)