設定訓練指令碼

訓練指令碼必須設定為寫入 TensorBoard 記錄。對於現有的 TensorBoard 使用者,您不需要變更模型訓練程式碼。

如要在 TensorFlow 2.x 中設定訓練指令碼,請建立 TensorBoard 回呼,並將 log_dir 變數設為可連線至 Google Cloud的任何位置。

接著,TensorBoard 回呼會納入 TensorFlow model.fit 回呼清單。

import tensorflow as tf

def train_tensorflow_model_with_tensorboard(log_dir):
    (x_train, y_train), (x_test, y_test) = tf.keras.datasets.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"),
            ]
        )

    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],
    )

TensorBoard 記錄會在指定的目錄中建立,並可透過 上傳 TensorBoard 記錄中的說明,上傳至 Vertex AI TensorBoard 實驗。

如需更多範例,請參閱 TensorBoard 開放原始碼說明文件

後續步驟