Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

TensorBoard einrichten

In diesem Dokument wird beschrieben, wie Sie TensorBoard zur Visualisierung und Analyse der Programmleistung in Cloud TPU einrichten und ausführen.

Übersicht

TensorBoard stellt eine Gruppe von Tools für die visuelle Darstellung von TensorFlow-Daten bereit. Wenn es zur Überwachung verwendet wird, kann TensorBoard Sie dabei unterstützen, Verarbeitungsengpässe zu identifizieren, und Vorschläge zur Verbesserung der Leistung liefern.

Voraussetzungen

In der folgenden Anleitung wird davon ausgegangen, dass Sie die Cloud TPU bereits in Cloud Shell eingerichtet haben und bereit sind, Ihre Trainingsanwendung auszuführen.

Wenn Sie kein Modell zum Trainieren haben, sollten Sie mit der MNIST-Anleitung beginnen.

Cloud TPU-Profiler installieren

Installieren Sie die aktuelle Version von cloud-tpu-profiler 2.3.0 auf der VM, auf der Sie Ihr Modell ausführen, um das capture-tpu-profile-Skript zu erstellen.

TensorBoard ausführen

Als Sie ctpu up ausgeführt haben, um die Compute Engine-VM und die Cloud TPU zu erstellen, hat das Tool automatisch die Portweiterleitung für die Cloud Shell-Umgebung eingerichtet, um TensorBoard verfügbar zu machen. Sie müssen TensorBoard in einer neuen Cloud Shell ausführen, nicht in der Shell, auf der Ihre Trainingsanwendung ausgeführt wird.

So führen Sie TensorBoard in einer separaten Cloud Shell aus:

  1. Öffnen Sie eine zweite Cloud Shell, um Profildaten zu erfassen und TensorBoard zu starten.

  2. Führen Sie in der zweiten Cloud Shell ctpu up zum Einrichten einiger erforderlicher Umgebungsvariablen in dieser neuen Shell aus:

    $ ctpu up --name=tpu-name --zone=your-zone
    

    Das Argument --zone ist notwendig, damit ctpu up Ihre Compute Engine-VM finden kann.

    Die Ausgabe sollte in etwa so aussehen:

    2018/08/02 12:53:12 VM already running.
    2018/08/02 12:53:12 TPU already running.
    About to ssh (with port forwarding enabled -- see docs for details)...
    

  3. Erstellen Sie in der zweiten Cloud Shell Umgebungsvariablen für Ihren Cloud Storage-Bucket und das Modellverzeichnis. Die Modellverzeichnisvariable MODEL_DIR enthält den Namen des GCP-Verzeichnisses, in dem während des Modelltrainings Prüfpunkte, Zusammenfassungen und die TensorBoard-Ausgabe gespeichert werden. Beispiel: MODEL_DIR=${STORAGE_BUCKET}/model

    (vm)$ export STORAGE_BUCKET=gs://your-bucket-name
    (vm)$ export MODEL_DIR=${STORAGE_BUCKET}/model-directory
    

Modell ausführen, Monitoringausgabe erfassen und in TensorBoard anzeigen lassen

Sie können TensorBoard-Traceinformationen mit dem Static Trace Viewer oder mit dem Streaming Trace Viewer aufrufen. Der Static Trace Viewer ist auf eine Million Ereignisse pro Cloud TPU beschränkt. Wenn Sie auf weitere Ereignisse zugreifen müssen, verwenden Sie den Streaming Trace Viewer. Die Einrichtung der beiden Funktionen wird unten beschrieben.

  1. Führen Sie in der ersten Cloud Shell Ihre Anwendung für das TensorFlow-Modelltraining aus. Wenn Sie beispielsweise das MNIST-Modell verwenden, führen Sie mnist_tpu.py aus, wie in der MNIST-Anleitung beschrieben.
  2. Wählen Sie den zu verwendenden Trace Viewer-Typ aus: Static Trace Viewer oder Streaming Trace Viewer..
  3. Verwenden Sie eine der folgenden Methoden:
  4. Static Trace Viewer

    1. Führen Sie in der zweiten Cloud Shell den folgenden TensorBoard-Befehl aus:
    2. (vm)$ tensorboard --logdir=${MODEL_DIR} &
      
    3. Klicken Sie in der Leiste oben rechts in der Cloud Shell auf die Schaltfläche Webvorschau und öffnen Sie Port 8080, um die TensorBoard-Ausgabe anzusehen. Die TensorBoard-UI wird als Tab in Ihrem Browser angezeigt.
    4. Führen Sie einen der folgenden Schritte aus, um das Profil zu erfassen.
    • Wenn Sie TensorBoard 1.15 oder höher ausführen, klicken Sie auf PROFILE oben auf der TensorBoard-Benutzeroberfläche. Klicken Sie als Nächstes oben im TensorBoard-Fenster auf die Schaltfläche CAPTUR-Profile.
    • Ein Detailmenü wird geöffnet, in dem Sie festlegen können, wie die TPU-Ausgabe zu erfassen ist: nach IP-Adresse oder nach TPU-Name.

      Geben Sie die IP-Adresse oder den TPU-Namen ein, um mit dem Erfassen der Tracedaten zu beginnen. Diese werden dann in TensorBoard angezeigt. Weitere Informationen zum Ändern der Standardwerte für "Profiling Duration" (Profilerstellungsdauer) und "Trace dataset ops" (Dataset-Vorgänge verfolgen) finden Sie in der Anleitung "Cloud TPU-Tools".

    • Führen Sie den folgenden Befehl in der zweiten Cloud Shell aus, um ein Profil über die Befehlszeile zu erfassen, anstatt die Schaltfläche CAPTURE PROFILE zu verwenden:
      (vm)$ capture_tpu_profile --tpu=tpu-name --logdir=${MODEL_DIR}
      

    Streaming Trace Viewer

    Kopieren Sie für Streaming Trace Viewer die IP-Adresse Ihres TPU-Hosts aus der Google Cloud Console, bevor Sie den TensorBoard-Befehl ausführen.

    1. Wählen Sie in der Navigationsleiste der Cloud Console die Option Compute Engine > TPUs aus und kopieren Sie die interne IP-Adresse für Ihre Cloud TPU. Dies ist der Wert, den Sie im TensorBoard-Befehl für ---master_tpu_unsecure_channel angeben.
    2. Führen Sie den folgenden TensorBoard-Befehl aus:
    3. (vm)$ tensorboard --logdir=${MODEL_DIR} --master_tpu_unsecure_channel=tpu-ip-address &
      
    4. Klicken Sie in der Leiste oben rechts in der Cloud Shell auf die Schaltfläche Webvorschau und öffnen Sie Port 8080, um die TensorBoard-Ausgabe anzusehen. Die TensorBoard-UI wird als Tab in Ihrem Browser angezeigt.
    5. Führen Sie zum Erfassen der Streaming Trace Viewer-Ausgabe in der zweiten Cloud Shell den folgenden capture_tpu_profile-Befehl aus:
    6. (vm)$ capture_tpu_profile --tpu=tpu-name --logdir=${MODEL_DIR}
      

      Dadurch werden Profildaten erfasst und in TensorBoard angezeigt.

Weitere Informationen