【问题标题】:Understanding Tensorflow Object Detection API Evaluation metrics了解 TensorFlow 对象检测 API 评估指标
【发布时间】:2020-08-23 16:31:43
【问题描述】:

我使用 tensorflow 提供的对象检测 API 训练了一个模型,但找不到很多关于所创建模型的评估过程的资源。

使用 eval.py 脚本时,我在屏幕上看到了一些结果,但我对此有些怀疑:

  1. checkpoint_dir 中存储的检查点中,结果对应于哪个检查点?

  2. 在某些情况下,我得到的值为 -1.00。我该如何解释?

  3. 提供的 eval.py 和 model_main.py 脚本有什么区别?

  4. 任何与对象检测 api 的评估和推理相关的资源,您可以参考我吗?

【问题讨论】:

    标签: python tensorflow object-detection object-detection-api


    【解决方案1】:
    1. checkpoint_dir 中存储的检查点中的哪个检查点执行 结果对应?

    在您的train_dir 中,您会找到一个checkpoint 文件,如果您打开它,代码的第一行是您的最后一个检查点,它将用于评估,您可以将第一行更改为您想要的评估检查点

    1. 在某些情况下,我得到的值为 -1.00。我该如何解释?

    当您在指标中获得 -1 时,这意味着它不存在任何符合条件的结果,在您的情况下,这意味着您的数据集没有任何小面积对象,因此如果您将其丢弃,则有这些对象,而您没有检测到它们,它会显示为 0 而不是 -1。

    • 小物体:面积
    • 中等对象:32^2
    • 大型物体:面积 > 96^2
    1. 提供的 eval.py 和 model_main.py 脚本有什么区别?

    eval.py 脚本仅评估模型并返回指标。 model_main.py 将 train 脚本与 eval 相结合,使您可以选择执行以下操作:

    1. 训练模型
    2. 评估模型
    3. 同时训练和评估模型

    在后者中,您应该提供验证数据而不是您的测试数据。

    1. 任何与对象检测 api 的评估和推理相关的资源,您可以参考我吗?

    我想你正在寻找这个Jupyter notebook for off-the-shelf inference

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-07
      • 2020-04-05
      • 2020-03-04
      • 1970-01-01
      • 2020-06-03
      • 2018-05-21
      • 1970-01-01
      • 2018-07-22
      相关资源
      最近更新 更多