2015-12-31 9 views
18

Wenn Sie sich die Tensorboard dashboard für die Cifar10-Demo ansehen, zeigt es Daten für mehrere Läufe. Ich habe Probleme, ein gutes Beispiel zu finden, das zeigt, wie man das Diagramm auf diese Weise auf Ausgabedaten setzt. Ich mache zur Zeit etwas ähnliches wie this, aber es scheint, Daten von Läufen zu kombinieren und immer dann, wenn ein neuer Durchlauf beginnt sehe ich die Warnung auf der Konsole:So schreiben Sie Zusammenfassungen für mehrere Läufe in Tensorflow

ACHTUNG: root: Gefunden mehr als ein Diagramm Ereignis pro Lauf .Overwritting die Grafik mit dem neuesten Ereignis

Antwort

28

die Lösung erwies sich als einfach zu sein (und wahrscheinlich auch ein bisschen auf der Hand), aber ich werde auf jeden Fall antworten. Der Schreiber wird wie folgt instanziiert:

writer = tf.train.SummaryWriter(FLAGS.log_dir, sess.graph_def) 

Die Ereignisse für den aktuellen Lauf werden in das angegebene Verzeichnis geschrieben. Statt einen festen Wert für die logdir Parameter zu haben, setzt nur eine Variable, die für jeden Durchlauf aktualisiert werden und verwenden, die als Name für ein Unterverzeichnis innerhalb des Protokollverzeichnisses:

writer = tf.train.SummaryWriter('%s/%s' % (FLAGS.log_dir, run_var), sess.graph_def) 

Dann einfach die Wurzel angeben log_dir Position beim Starten des Tensorboards über den Parameter --logdir.

+0

Hatten Sie jemals Probleme, bei denen mehrere Durchläufe die Zusammenfassungen von ein oder zwei vergangenen Läufen unterdrücken? Manchmal führt der neue Lauf dazu, dass die Zusammenfassungen früherer Läufe vollständig leer sind. Normalerweise werden nur 1 oder 2 Zusammenfassungen die Daten für alle Läufe gleichzeitig korrekt anzeigen. – richizy

+0

Ich habe dieses bestimmte Verhalten nicht gesehen, obwohl ich gesehen habe, dass es den aktuellen Lauf nicht anzeigt. Wird die Tensorboard-Hilfe neu gestartet? – kldavis4

+1

Kann jemand das mit ['MonitoredTrainingSession'] (https://www.tensorflow.org/api_docs/python/tf/train/MonitoredTrainingSession) machen? –

1

Wie in der documentation erwähnt, können Sie mehrere Protokollverzeichnisse angeben, wenn Tensorboard ausgeführt wird. Alternativ können Sie mehrere Unterordner run im Protokollverzeichnis erstellen, um verschiedene Diagramme in demselben Diagramm zu visualisieren.

Verwandte Themen