2017-10-17 3 views
1

pour le moment j'essaie de me familiariser un peu avec l'API TF Estimator. Je travaille/apprend avec l'exemple de ce blog entry.Enregistrer tf.summary.image avec l'API Estimator

Maintenant, j'ai le problème que je ne suis pas en mesure d'enregistrer un simple résumé de l'image (tf.summary.image).

J'ai ajouté un SummarySaverHook dans le experiment_fn et ajoutez le crochet au paramètre eval_hooks du constructeur d'expérience:

def experiment_fn(run_config, params): 
    ... 
    summary_hook = tf.train.SummarySaverHook(
     100, 
     output_dir='/summeries', 
     summary_op=tf.summary.merge_all() 
    ) 
    ... 
    experiment = tf.contrib.learn.Experiment(
     estimator=estimator, # Estimator 
     train_input_fn=train_input_fn, # First-class function 
     eval_input_fn=eval_input_fn, # First-class function 
     train_steps=params.train_steps, # Minibatch steps 
     min_eval_frequency=params.min_eval_frequency, # Eval frequency 
     train_monitors=[train_input_hook], # Hooks for training 
     eval_hooks=[eval_input_hook, summary_hook], # Hooks for evaluation 
     eval_steps=None # Use evaluation feeder until its empty 
    ) 

Ce qui est pas clair pour moi est où je dois ajouter tf.summary.image() fonction de sorte que l'image sera affichée dans l'onglet image de tensorboard.

Merci d'avance.

Répondre

0

Vous ne devriez pas avoir à ajouter de crochet. Il suffit d'ajouter l'appel tf.summary.image n'importe où dans votre model_fn/input_fn et l'estimateur devrait ajouter automatiquement un crochet de résumé pour tous les résumés créés.

+1

Merci beaucoup. Quand j'ajoute le 'tf.summary.image' directement dans mon model_fn tout fonctionne pour le mode entrainement. Mais lorsque j'essaie de sauvegarder le résumé de l'image uniquement pour le mode d'évaluation, les résumés ne sont pas sauvegardés/affichés dans Tensorboard 'f mode == ModeKeys.EVAL' –