我在张量流对象检测中使用了来自检测模型Zoo的ssd_mobilenet_v1_coco。我目前正在通过跑步训练模型
python legacy/train.py --logtostderr --train_dir=trainingmobile/ --pipeline_config_path=trainingmobile/pipeline.config
我想通过运行eval.py来获得评估工作,以获取其他指标(如IOU和PR曲线),但我不知道该怎么做。我能够运行命令
python legacy/eval.py \ --logtostderr \ --checkpoint_dir= path/to/checkpoint \ --eval_dir= path/to/eval \ --pipeline_config_path= path/to/config
然后我运行了命令
tensorboard --logdir=path/to/eval
张量板仅显示测试图像输出。我如何获得其他指标,如IOU和PR Curve?
首先,我强烈建议您结合使用较新的model_main.py
脚本进行培训和评估。您可以如下所示使用它:
python object_detection/model_main.py \ --pipeline_config_path=path/to/config \ --model_dir=path/to/train_dir \ --num_train_steps=NUM_TRAIN_STEPS \ --num_eval_steps=NUM_EVAL_STEPS \ --alsologtostderr
它结合了培训和评估,您可以使用
tensorboard -logdir=path/to/train_dir
Tensorboard不仅会显示培训过程,还将显示您在验证集上的进度。他们使用COCO指标作为默认指标!
原来的问题:也许您应该将配置文件中的评估设置更改为更大的数字:
eval_config: { num_examples: 8000 # Note: The below line limits the evaluation process to 10 evaluations. # Remove the below line to evaluate indefinitely. max_evals: 10}
如果您将使用model_main.py
脚本,则评估数量将由标志设置。
提提您:tnesorflow的信息输出在较新的model_main.py
脚本中已禁用。您可以通过添加启用它
tf.logging.set_verbosity(tf.logging.INFO)
在导入部分之后。