diff --git a/answer_classifier_cached_features/eval.py b/answer_classifier_cached_features/eval.py index 51d0080ed9c18921e0560fbc5198838321c71d48..046161ce4c9a4438a2eff0937081c8585a51cff7 100644 --- a/answer_classifier_cached_features/eval.py +++ b/answer_classifier_cached_features/eval.py @@ -51,6 +51,8 @@ def create_batch_generator(mode): qids_json, constants.vocab_json, constants.vqa_answer_vocab_json, + constants.object_labels_json, + constants.attribute_labels_json, constants.image_size, constants.num_region_proposals, constants.num_negative_answers, @@ -267,13 +269,15 @@ if __name__=='__main__': 0, 0, constants.answer_obj_atr_loss_wt, + constants.answer_ans_loss_wt, + constants.answer_mil_loss_wt, resnet_feat_dim=constants.resnet_feat_dim, training=False) print 'Starting a session...' config = tf.ConfigProto() config.gpu_options.allow_growth = True - config.gpu_options.per_process_gpu_memory_fraction = 0.5 + config.gpu_options.per_process_gpu_memory_fraction = 0.9 sess = tf.Session(config=config, graph=graph.tf_graph) print 'Creating initializer...' diff --git a/answer_classifier_cached_features/train.py b/answer_classifier_cached_features/train.py index 48335335eaa1e6197287ad4395623519d9708cee..7bd5ebee4b3abda1781d68488afb934c8db40340 100644 --- a/answer_classifier_cached_features/train.py +++ b/answer_classifier_cached_features/train.py @@ -484,23 +484,24 @@ class graph_creator(): ["accuracy_answer"], self.moving_average_accuracy) - # object - self.object_accuracy = self.add_object_accuracy_computation( - self.object_scores_with_labels, - self.plh['object_labels']) - - object_accuracy_summary = tf.scalar_summary( - "accuracy_object", - self.object_accuracy) - - # attributes - self.attribute_accuracy = self.add_attribute_accuracy_computation( - self.attribute_scores_with_labels, - self.plh['attribute_labels']) - - attribute_accuracy_summary = tf.scalar_summary( - "accuracy_attribute", - self.attribute_accuracy) + if self.training: + # object + self.object_accuracy = self.add_object_accuracy_computation( + self.object_scores_with_labels, + self.plh['object_labels']) + + object_accuracy_summary = tf.scalar_summary( + "accuracy_object", + self.object_accuracy) + + # attributes + self.attribute_accuracy = self.add_attribute_accuracy_computation( + self.attribute_scores_with_labels, + self.plh['attribute_labels']) + + attribute_accuracy_summary = tf.scalar_summary( + "accuracy_attribute", + self.attribute_accuracy) def add_answer_accuracy_computation(self, scores): with tf.variable_scope('answer_accuracy'): @@ -896,7 +897,7 @@ def train( logger.log(iter, False, eval_vars_dict) iter+=1 - if iter%8000==0: + if iter%8000==0 and iter!=0: gc.collect() logger.log(iter-1, True, eval_vars_dict)