微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

tensorflow 2中的对象检测期间未显示训练和验证数据的性能指标

如何解决tensorflow 2中的对象检测期间未显示训练和验证数据的性能指标

我正在使用efficiencydet-d1在自定义数据集中训练对象检测模型。 我正在使用colab中的 tensorflow 2

我已经参考了以下教程

https://gilberttanner.com/blog/tensorflow-object-detection-with-tensorflow-2-creating-a-custom-model

https://towardsdatascience.com/how-to-train-a-tensorflow-2-object-detection-model-25d4da64b817

https://tensorflow-object-detection-api-tutorial.readthedocs.io/en/latest/training.html

我正在使用以下代码进行模型训练:

!python model_main_tf2.py \
    --pipeline_config_path=models/efficientdet_d1-round3/pipeline.config \
    --model_dir=models/efficientdet_d1-round3 \
    --logtostderr

colab终端中的输出

INFO:tensorflow:Step 100 per-step time 1.300s loss=1.238
I1008 07:51:04.238269 140334195148672 model_lib_v2.py:652] Step 100 per-step time 1.300s loss=1.238
INFO:tensorflow:Step 200 per-step time 1.142s loss=1.260
.....

我尝试使用以下命令启用tensorboard,但即使我打开新网页并键入http:// localhost:6006 /

,它也无法通过colab打开
#method 1
%load_ext tensorboard
%tensorboard --logdir './models/efficientdet_d1-round3/train'
# method 2
!wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
!unzip -o ngrok-stable-linux-amd64.zip
LOG_DIR = "models/efficientdet_d1-round3/train" #"training/"
get_ipython().system_raw(
    'tensorboard --logdir {} --host 0.0.0.0 --port 6006 &'
    .format(LOG_DIR)
)
get_ipython().system_raw('./ngrok http 6006 &')
#The link to tensorboard.
#works after the training starts.
!curl -s http://localhost:4040/api/tunnels | python3 -c \
    "import sys,json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"

问题:

  1. 有什么想法可以通过colab上的张量板检查模型训练的进度吗?
  2. 或者,有什么方法可以将不同的度量标准(训练损失,验证损失,mAP)打印到文本文件中,然后用于绘图?

我找到了一些用于启用模型回调的链接,但这些链接用于分类模型。

Plot multiple graphs in one plot using Tensorboard

此外,与对象检测有关的大多数链接都用于张量流1(请参见下文)。

Train Tensorflow Object Detection on own dataset

我对使用图像进行深度学习相对较新,并且已经为此奋斗了一个多月。任何建议/提示/链接都将受到感激。

谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?