wake-up-neo.com

Tensorboard-Fehler: Für den aktuellen Datensatz sind keine Dashboards aktiv

Ich versuche Tensorboard zu verwenden, aber jedes Mal, wenn ich ein Programm mit Tensorflow ausführen, erhalte ich eine Fehlermeldung, wenn ich zu localhost: 6006 gehe, um die Visualisierung anzuzeigen

Hier ist mein Code

a = tf.add(1, 2,)
b = tf.multiply(a, 3)

with tf.Session() as sess:
    writer = tf.summary.FileWriter("output", sess.graph)
    print(sess.run(b))
    writer.close()

Wenn ich zum Befehl Aufforderung gehe und eingebe

tensorboard --logdir=C:\path\to\output\folder

Es kehrt mit zurück 

TensorBoard 0.1.8 at http://MYCOMP:6006 (Press CTRL+C to quit)

Wenn ich zu localhost gehe: 6006 heißt es

Für den aktuellen Datensatz sind keine Dashboards aktiv . Mögliche Ursachen: - Sie haben keine Daten in Ihre Ereignisdateien geschrieben. - TensorBoard kann Ihre Ereignisdateien nicht finden.

Ich habe mir diesen Link angesehen ( Tensorboard: Für den aktuellen Datensatz sind keine Dashboards aktiv ), aber es scheint dieses Problem nicht zu beheben

Und ich führe dies unter Windows 10 aus

Was kann ich tun, um dieses Problem zu beheben? Gebe ich in der Eingabeaufforderung den richtigen Pfad für Tensorboard? 

Danke im Voraus

9
Amaanite

Ihr Problem hängt möglicherweise mit dem Laufwerk zusammen, von dem Sie versuchen, tensorboard zu starten, und das Laufwerk, auf dem sich Ihre logdir befindet. Tensorboard verwendet einen Doppelpunkt, um den optionalen Laufnamen und den Pfad im logdir-Flag voneinander zu trennen, sodass Ihr Pfad als\Pfad\in\Ausgabe\Ordner mit dem Namen C interpretiert wird. 

Sie können dies umgehen, indem Sie entweder tensorboard vom selben Laufwerk wie Ihr Protokollverzeichnis starten oder indem Sie einen expliziten Laufnamen angeben, z. logdir=mylogs:C:\path\to\output\folder

Siehe hier als Hinweis auf das Problem.

14
hpabst

Bei Windows habe ich eine Problemumgehung erhalten.

cD/Pfad/zu/log

tensorboard --logdir =. / 

Hier können Sie path wie gewohnt verwenden . Denken Sie daran, keine Leerzeichen als logdir = ./ anzugeben. 

Dies gab mir einen Fehler:

Für den aktuellen Datensatz sind keine Dashboards aktiv. Mögliche Ursachen: - Sie haben keine Daten in Ihre Ereignisdateien geschrieben. - TensorBoard kann nicht Finden Sie Ihre Ereignisdateien.

3
shaurya airi

Nun, Sie haben mehrere Probleme mit Ihrem Code.

  1. Sie erstellen einen Summary Writer (tf.summary.FileWriter), schreiben jedoch nichts damit. print(sess.run(b)) hat nichts mit tensorboard zu tun, wenn Sie davon ausgegangen sind, dass dies Auswirkungen darauf hat. Es gibt nur den Wert von b aus.
  2. Sie erstellen kein summary-Objekt, um einen Wert mit zu verbinden.
  3. Sie geben wahrscheinlich einen falschen Ordner für das Tensorboard ein.

Mehr analytisch:

  1. Sie benötigen ein Zusammenfassungsobjekt , um eine Zusammenfassung zu schreiben. Zum Beispiel ein tf.summary.scalar, um einen Skalar in eine Zusammenfassung zu schreiben. So etwas wie tf.summary.scalar("b_value", b), um den Wert von b in eine Zusammenfassung zu schreiben.
  2. Dann müssen Sie Ihre Zusammenfassungsoperation tatsächlich in einer Sitzung ausführen, damit sie funktioniert: summary = sess.run(summary_scalar).
  3. Schreiben Sie den Wert mit dem von Ihnen zuvor definierten Writer: writer.add_summary(summary).
  4. Nun gibt es in tensorboard etwas zu sehen, in einem Terminal mit tensorboard --logdir=output
  5. Im Allgemeinen werden Sie wahrscheinlich tf.summary.merge_all() benötigen, um an run übergeben zu werden, um alle Zusammenfassungen zusammenzustellen.

Hoffe das hilft.

1
Eypros

Suchen Sie den Pfad zu main.py im Verzeichnis tensorboard und kopieren Sie es. Es sollte ungefähr so ​​sein:

C:/Users/<Your Username>/Anaconda3/envs/tensorflow/Lib/site-packages/tensorboard/main.py

oder

C:/Users/<Your Username>/anaconda/envs/tf/lib/python3.5/site-packages/tensorboard/main.py

Wenn Sie den richtigen Pfad kennen, führen Sie diesen Befehl in Anaconda Prompt aus, indem Sie den Pfad zu main.py im Verzeichnis tensorboard verwenden. Das hat für mich in Windows funktioniert.

python C:/Users/Username/Anaconda3/envs/tensorflow/Lib/site-packages/tensorboard/main.py --logdir=foo:<path to your log directory>

Credits: KyungHoon Kim

1
Javapocalypse

Als ich das TensorFlow-Tutorial ( https://www.tensorflow.org/programmers_guide/tensorboard_histograms ) durchführte, bin ich auf das gleiche Problem gestoßen. Ich ging weiter und probierte die von hpabst oben erwähnte Lösung aus. Es hat wie ein Champion funktioniert. Im Terminal (ich laufe in CentOS) - Ich lief: tensorboard --log =mydir: '~/mlDemo/'

0
lpt

Versuchen Sie es stattdessen:

tensorboard --logdir="C:\path\to\output\folder"
0
Aditya Dot

In Windows 10 funktioniert dieser Befehl

tensorboard --logdir=training/

Das Training ist hier das Verzeichnis, in das die Ausgabedateien geschrieben werden. Bitte beachten Sie, dass er keine Anführungszeichen hat und am Ende einen Schrägstrich (/) hat. Beides ist wichtig.

0
Soumya Boral

Ich arbeite auch mit Windows 10. Ich habe Ihren Code ausprobiert, indem Sie Tensorboard von demselben Laufwerk, unterschiedlichen Laufwerken und lokalen Pfaden aus ausführen. In allen drei Fällen konnte ich die Grafik sehen.

Eine Lösung ist, vielleicht müssen Sie Ihren Host ändern (ich kann mich auch nicht mit localhost: 6006 visualisieren). Probieren Sie http: // MYCOMP: 6006 aus, um zu prüfen, ob Sie einen Unterschied feststellen.

Hinweis: Meine Tensorboard-Version ist 1.8.0 (möglicherweise können Sie Ihr Tensorboard aktualisieren, um festzustellen, ob es einen Unterschied gibt.)

0
karaspd

Als ich dieses Problem hatte, funktionierte es, nachdem ich meinen Computer heruntergefahren hatte. Ich weiß jedoch nicht, warum es funktioniert hat.

0
pangdan