在 Amazon SageMaker Studio 中使用 TensorBoard - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 Amazon SageMaker Studio 中使用 TensorBoard

以下文档概述了如何在 Amazon SageMaker Studio 中安装和运行 TensorBoard。

注意

本指南介绍如何通过单个 SageMaker 域用户配置文件的 SageMaker Studio 笔记本服务器打开 TensorBoard 应用程序。要获得与 SageMaker Training 和 SageMaker 域访问控制功能集成的更全面的 TensorBoard 体验,请参阅 在 Amazon SageMaker 中使用 TensorBoard 调试和分析训练作业

先决条件

本教程需要一个 Amazon SageMaker Studio 域。有关更多信息,请参阅 加入 Amazon SageMaker 域

设置 TensorBoardCallback

  1. 启动 Studio,然后打开启动程序。有关更多信息,请参阅 使用 Amazon SageMaker Studio 启动程序

  2. 在 Amazon SageMaker Studio 启动程序的Notebooks and compute resources下,选择更改环境按钮。

  3. 更改环境对话框中,使用下拉菜单选择 TensorFlow 2.3 Python 3.7(optimized for CPU) Studio 映像

  4. 返回启动程序,单击创建笔记本图块。您的笔记本将在新的 Studio 选项卡中启动并打开。

  5. 在笔记本单元格中运行此代码。

  6. 导入所需的软件包。

    import os import datetime import tensorflow as tf
  7. 创建一个 Keras 模型。

    mnist = tf.keras.datasets.mnist (x_train, y_train),(x_test, y_test) = mnist.load_data() x_train, x_test = x_train / 255.0, x_test / 255.0 def create_model(): return tf.keras.models.Sequential([ tf.keras.layers.Flatten(input_shape=(28, 28)), tf.keras.layers.Dense(512, activation='relu'), tf.keras.layers.Dropout(0.2), tf.keras.layers.Dense(10, activation='softmax') ])
  8. 为 TensorBoard 日志创建目录

    LOG_DIR = os.path.join(os.getcwd(), "logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S"))
  9. 使用 TensorBoard 运行训练。

    model = create_model() model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy']) tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=LOG_DIR, histogram_freq=1) model.fit(x=x_train, y=y_train, epochs=5, validation_data=(x_test, y_test), callbacks=[tensorboard_callback])
  10. 为 TensorBoard 日志生成 EFS 路径。您可以使用此路径从终端设置日志。

    EFS_PATH_LOG_DIR = "/".join(LOG_DIR.strip("/").split('/')[1:-1]) print (EFS_PATH_LOG_DIR)

    检索 EFS_PATH_LOG_DIR。您将在 TensorBoard 安装部分需要它。

安装 TensorBoard

  1. 单击 Studio 左上角的 Amazon SageMaker Studio 按钮以打开 Amazon SageMaker Studio 启动程序。必须从您的根目录打开此启动程序。有关更多信息,请参阅 使用 Amazon SageMaker Studio 启动程序

  2. 在启动程序的Utilities and files下,单击System terminal

  3. 从终端运行以下命令。从 Jupyter 笔记本复制 EFS_PATH_LOG_DIR。必须在 /home/sagemaker-user 根目录下运行。

    pip install tensorboard tensorboard --logdir <EFS_PATH_LOG_DIR>

启动 TensorBoard

  1. 要启动 TensorBoard,请复制 Studio URL 并将 lab? 替换为 proxy/6006/,如下所示。必须包含 / 尾随字符。

    https://<YOUR_URL>.studio.region.sagemaker.aws/jupyter/default/proxy/6006/
  2. 导航到 URL 以检查结果。