

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# TensorBoard 在亚马逊 SageMaker Studio 经典版中使用
<a name="studio-tensorboard"></a>

**重要**  
截至 2023 年 11 月 30 日，之前的亚马逊 SageMaker Studio 体验现在被命名为 Amazon St SageMaker udio Classic。以下部分专门介绍如何使用 Studio Classic 应用程序。有关使用更新的 Studio 体验的信息，请参阅 [亚马逊 SageMaker Studio](studio-updated.md)。  
Studio Classic 仍针对现有工作负载进行维护，但不再可供入门使用。您只能停止或删除现有的 Studio Classic 应用程序，不能创建新的应用程序。我们建议您将[工作负载迁移到全新 Studio 体验](studio-updated-migrate.md)。

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

**注意**  
本指南介绍如何通过单个 SageMaker AI 域用户配置文件的 SageMaker Studio Classic 笔记本电脑服务器打开 TensorBoard 应用程序。要获得与 SageMaker 培训和 SageMaker AI 域的访问控制功能集成的更全面的 TensorBoard 体验，请参阅[TensorBoard 在亚马逊 A SageMaker I 中](tensorboard-on-sagemaker.md)。

## 先决条件
<a name="studio-tensorboard-prereq"></a>

本教程需要 A SageMaker I 域。有关更多信息，请参阅 [亚马逊 SageMaker AI 域名概述](gs-studio-onboard.md)。

## 设置 `TensorBoardCallback`
<a name="studio-tensorboard-setup"></a>

1. 启动 Studio Classic，然后打开启动程序。有关更多信息，请参阅 [使用 Amazon SageMaker Studio 经典启动器](studio-launcher.md)。

1. 在 Amazon SageMaker Studio Classic Launcher 的下方`Notebooks and compute resources`，选择**更改环境**按钮。

1. 在**更改环境**对话框中，使用下拉菜单选择 `TensorFlow 2.6 Python 3.8 CPU Optimized` Studio Classic **映像**。

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

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

1. 导入所需的软件包。

   ```
   import os
   import datetime
   import tensorflow as tf
   ```

1. 创建一个 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')
     ])
   ```

1. 为您的 TensorBoard 日志创建目录

   ```
   LOG_DIR = os.path.join(os.getcwd(), "logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S"))
   ```

1. 使用跑步训练 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])
   ```

1. 为 TensorBoard 日志生成 EFS 路径。您可以使用此路径从终端设置日志。

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

   检索 `EFS_PATH_LOG_DIR`。你将在 TensorBoard安装部分中使用它。

## 安装 TensorBoard
<a name="studio-tensorboard-install"></a>

1. 单击 Studio Classic 左上角的`Amazon SageMaker Studio Classic`按钮打开 Amazon SageMaker Studio Classic Launcher。必须从您的根目录打开此启动程序。有关更多信息，请参阅 [使用 Amazon SageMaker Studio 经典启动器](studio-launcher.md)。

1. 在启动程序的`Utilities and files`下，单击`System terminal`。

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

   ```
   pip install tensorboard
   tensorboard --logdir <EFS_PATH_LOG_DIR>
   ```

## 启动 TensorBoard
<a name="studio-tensorboard-launch"></a>

1. 要启动 TensorBoard，请复制您的 Studio Classic 网址并`lab?`替换`proxy/6006/`为，如下所示。必须包含 `/` 尾随字符。

   ```
   https://<YOUR_URL>.studio.region.sagemaker.aws/jupyter/default/proxy/6006/
   ```

1. 导航到 URL 以检查结果。