设置 TensorBoard 以在 Google Colab 中为 TensorFlow 对象检测模型运行 eval.py 作业

Posted

技术标签:

【中文标题】设置 TensorBoard 以在 Google Colab 中为 TensorFlow 对象检测模型运行 eval.py 作业【英文标题】:Set up TensorBoard to run eval.py job for TensorFlow object detection models in Google Colab 【发布时间】:2019-12-17 06:02:39 【问题描述】:

我是深度学习领域的新手。我想在 Google Colab 中运行对象检测模型时使用 TensorBoard。

我已经提到了几个讨论线程(How to run eval.py job for tensorflow object detection models)

但没有得到我的具体查询的答案。

我在下面给出我遵循的步骤:

流程一:

1.下载ngrok并解压

!wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
!unzip -o ngrok-stable-linux-amd64.zip

2.指定日志目录并在后台触发tensorboard:

LOG_DIR = '/content/models/research/training'
get_ipython().system_raw(
    'tensorboard --logdir  --host 0.0.0.0 --port 6006 &'
    .format(LOG_DIR)
)

3.Ran ngrok 通过端口 6006 连接到 TensorBoard:

get_ipython().system_raw('./ngrok http 6006 &')

    生成的 TensorBoard 链接:

    ! curl -s http://localhost:4040/api/tunnels |蟒蛇3 -c \ "导入系统,json;打印(json.load(sys.stdin)['tunnels'][0]['public_url'])"

问题:

我。当我打开链接时,会打开一个带有通知的空白页面:

*No dashboards are active for the current data set.
Probable causes:
You haven’t written any data to your event files.
TensorBoard can’t find your event files.*

二。在训练进行时,我返回并刷新了 tensorboard,它看起来是空白的

此外,在任何给定的情况下,我的日志目录(即培训目录)都有以下文件:日志文件在哪里?

我的问题:

如何在 TensorBoard 中查看训练进度?我遵循的方法有什么问题吗?

流程2:

正如@cookiemonster 建议的那样:

我尝试了以下设置以从 Colab 单元本身打开 TensorBoard:

!pip install tb-nightly
%load_ext tensorboard

%tensorboard --logdir '/content/models/research/training'

输出:

刚刚出现一个橙色条

如何在训练进行时查看此过程中的训练状态。

最后一个问题:

我的主要目标是通过更改配置文件中“matrics_set”的值来检查不同的评估矩阵,然后运行 ​​eval.py 我需要检查结果。

我在一个线程中读到“结果将输出到以 events.out.tfevents 为前缀的事件摘要文件,您可以使用 TensorBoard 对其进行可视化”

(参考:Run object detection evaluation protocols (tensorflow))

我的问题:

如果我只是运行以下代码,是否会在我指定的日志目录中生成日志文件?

!python eval.py --logtostderr --pipeline_config_path=<path to training directory>/faster_rcnn_inception_v2_pets.config --checkpoint_dir=<path to training directory> --eval_dir=<path to log directory>

目前我在查看 tensorboard 时遇到的基本问题,如何实现查看 eval.py 运行结果的主要目标?

【问题讨论】:

添加一个 TensorBoard 回调函数似乎是我的方法。但是到目前为止你已经尝试了什么?你的代码是什么样子的? 我已经更新了我上面的帖子来详细说明我面临的问题。 虽然我在 colab 中经常使用 tensorboard,但我从未遇到过这个橙色条问题。也许尝试使用不同的浏览器,如 chrome?或尝试停用浏览器中的插件.. 【参考方案1】:

仅供参考,新的张量板可以直接在笔记本中运行,所以你可以运行

!pip install tb-nightly
%load_ext tensorboard
%tensorboard --logdir "/content/runs"

或者您安装 google 驱动器并可以在另一个 colab 笔记本中运行它(可能只使用 CPU)以避免弄乱已安装的库

%tensorboard --logdir "/content/drive/My Drive/Colab Runs"

【讨论】:

我已经更新了我上面的帖子来详细说明我面临的问题。 @yangsiyu 我正在关注你的一篇关于类似问题的帖子。你能指导一下我的具体问题吗?

以上是关于设置 TensorBoard 以在 Google Colab 中为 TensorFlow 对象检测模型运行 eval.py 作业的主要内容,如果未能解决你的问题,请参考以下文章

使用 Firefox 的 Tensorboard 在 Google Colab 中出现错误 403

GOOGLE COLAB 之TENSORBOARD 启用

我可以将 TensorBoard 与 Google Colab 一起使用吗?

如何设置表的架构以在 Google App Scripts 中自动检测从 Google Cloud Storage 获取数据?

TensorFlow 1 中的 TensorBoard 使用 Google Colab

将 Google 的 Tensorboard 连接到 Vertex AI AutoML