Tensorflow 对象检测中的训练和验证准确性 API

Training and Validation Accuracy in Tensorflow Object Detection API

我一直在自己的数据集上使用 Tensorflow 对象检测 API。训练时,训练损失会在张量板上更新。但是我分别需要训练和验证的准确性(mAP)。 需要采取哪些步骤才能获得这些值?

如果您使用的是 keras API,通过 tf.keras,您可以在 model.fit 函数中添加评估函数作为指标。查看 the official documentation 以获取所有可用指标的列表。

您可能会对 tf.metrics.average_precision_at_k 感兴趣。如果它不能完全满足您的需要,您还可以实施自定义指标。

既然你说 mAP 代表平均平均精度,你需要在管道配置文件中使用值“coco_detection_metrics”的 metrics_set。你的文件应该有这样的东西:

    eval_config: {
        metrics_set: "coco_detection_metrics"
        use_moving_averages: false
    }

之后,当您 运行 eval_continuously 时,您应该在验证集上获得 mAP。 对于训练集,您需要在 运行 运行 model_main_tf2.py 脚本时设置 eval_on_train_data 参数。