从 google Colab 使用时 Tensorboard 无法正常工作

Nik*_*kSp 5 python tensorboard google-colaboratory

我很难理解如何让 Tensorboard 在 Google Colab 上运行的笔记本上正常工作。我将在下面发布一系列用于处理张量板的代码片段。

\n

TensorFlow 版本:2.2.0
\nEager 模式:True
\nHub 版本:0.8.0
\nGPU 可用

\n
%load_ext tensorboard\nimport tensorflow as tf\nfrom tensorboard.plugins.hparams import api as hp\n
Run Code Online (Sandbox Code Playgroud)\n
callbacks = [\n        \n        EarlyStopping(monitor=monitor_metric,\n                      min_delta=minimum_delta,\n                      patience=patience_limit,\n                      verbose=verbose_value,\n                      mode=mode_value,\n                      restore_best_weights=True),\n\n        ModelCheckpoint(filepath=weights_fname,\n                        monitor=monitor_metric,\n                        verbose=verbose_value,\n                        save_best_only=True,\n                        save_weights_only=True),\n        \n        tf.keras.callbacks.TensorBoard(logdir), #used here\n\n        TensorBoardColabCallback(tbc),\n        \n        hp.KerasCallback(logdir, hparams) #used here\n    ]\n    \n    return callbacks\n
Run Code Online (Sandbox Code Playgroud)\n

初始化将由 Tensorboard 记录的超参数

\n
HP_HIDDEN_UNITS = hp.HParam(\'batch_size\', hp.Discrete([128]))\nHP_EMBEDDING_DIM = hp.HParam(\'embedding_dim\', hp.Discrete([50, 100]))\nHP_LEARNING_RATE = hp.HParam(\'learning_rate\', hp.Discrete([0.01])) # Adam default: 0.001, SGD default: 0.01, RMSprop default: 0.001\nHP_DECAY_STEPS_MULTIPLIER = hp.HParam(\'decay_steps_multiplier\', hp.Discrete([10, 100]))\n\nMETRIC_ACCURACY = "hamming_loss"\n
Run Code Online (Sandbox Code Playgroud)\n

将hp参数文件写入Tensorboard的日志目录中。

\n
hp_logging_directory=os.path.join(os.getcwd(), "model_one/logs/hparam_tuning")\n\nwith tf.summary.create_file_writer(hp_logging_directory).as_default():\n    hp.hparams_config(\n    hparams=[HP_HIDDEN_UNITS, HP_EMBEDDING_DIM, HP_LEARNING_RATE, HP_DECAY_STEPS_MULTIPLIER],\n    metrics=[hp.Metric(METRIC_ACCURACY, display_name=\'hamming_loss\')],\n  )\n    \ntry:\n    os.path.exists(hp_logging_directory)\n    print("Directory of hyper parameters logging exists!")\nexcept Exception as e:\n    print(e)\n    print("Directory not found!")\n
Run Code Online (Sandbox Code Playgroud)\n

调用 Tensorboard API

\n
%tensorboard --logdir model_one/logs/hparam_tuning\n
Run Code Online (Sandbox Code Playgroud)\n

在此输入图像描述

\n

我看过的链接:

\n\n

我还安装了 TensorboardColab 模块

\n
from tensorboardcolab import *\n\ntbc = TensorBoardColab() # To create a tensorboardcolab object it will automatically creat a link\nwriter = tbc.get_writer() # To create a FileWriter\nwriter.add_graph(tf.get_default_graph()) # add the graph \nwriter.flush()\n
Run Code Online (Sandbox Code Playgroud)\n

执行上面我得到以下错误:AttributeError: module \'tensorboard.summary._tf.summary\' has no attribute \'FileWriter\'

\n

当我尝试访问 IP localhost:6006 时,出现错误This site can\xe2\x80\x99t bereached

\n

请检查我的Colab 笔记本,如果您错过了我可能忘记包含的任何其他信息,请在评论中写下。

\n