在 Tensorflow 对象检测中绘制验证损失 API

Plot validation loss in Tensorflow Object Detection API

我正在使用 Tensorflow 对象检测 API 检测和定位图像中的一个 class 对象。出于这些目的,我使用预训练的 faster_rcnn_resnet50_coco_2018_01_28 模型。

我想在训练模型后检测 under/overfitting。我看到训练损失,但在评估 Tensorboard 后只显示 mAP 和 Precision 指标,没有损失。

是否也可以在 Tensorboard 上绘制验证损失?

存在验证损失。 假设您使用的是最新的 API,"loss" 下方的曲线是验证损失,而 "loss_1/2" 是训练损失。

要查看验证曲线,您应该更改 faster_rcnn_resnet50_coco.config:

1-评论max_evals
2- 设置 eval_interval_secs: 60 .
3- num_examples 应该等于或小于 "val.record" 中的 "files" 的数量。

eval_config: { . 
  num_examples: 600 . 
  eval_interval_secs: 60 . 
  # Note: The below line limits the evaluation process to 10 evaluations.  
  # Remove the below line to evaluate indefinitely.  
  # max_evals: 10 .
}

使用model_main.py进行训练在tensorboard中给出了两条曲线。它们应该是训练和验证损失。

您可以在CMD下使用以下命令。

python object_detection/model_main.py --num_eval_steps=10 --num_train_steps=50000 --alsologtostderr --pipeline_config_path=C:/DroneMaskRCNN/DroneMaskRCNN1/mask_rcnn_inception_v2_coco.config --model_dir=C:/DroneMaskRCNN/DroneMaskRCNN1/CP