如何在张量流object_detection中检查训练/评估性能

时间:2018-12-07 04:42:00

标签: object tensorflow detection

当我检查张量板以观察训练效果时,仅显示eval_0(蓝色)结果。

enter image description here

如张量板网站(https://www.tensorflow.org/guide/summaries_and_tensorboard上所示),它应该是单独的火车(橙色)和评估(蓝色)结果。

  

但是,我想比较训练数据集上的模型性能   和评估数据集。

所以我检查了models / research / object_detection / model_main.py并想知道

  

如果我可以通过以下方式基于训练和评估数据集获得精度   将 model_dir 的标志设置为 model / eval 文件夹,然后将    eval_training_data model / train 文件夹的标记?

flags.DEFINE_string('model_dir', None, 'Path to output model directory '
                     'where event and checkpoint files will be written.')

flags.DEFINE_boolean('eval_training_data', False,
                     'If training data should be evaluated for this job. Note '
                     'that one call only use this in eval-only mode, and '
                     '`checkpoint_dir` must be supplied.')

我对这句话感到困惑。

请注意,一个呼叫仅在仅评估模式下使用此呼叫,并且必须提供checkpoint_dir。

  

这是否意味着如果我只想以仅评估模式运行它,那么我必须设置   checkpoint_dir?如果我想在火车上进行评估和评估   同时,我不需要设置checkpoint_dir吗?

1 个答案:

答案 0 :(得分:1)

如果要根据验证数据评估模型,则应使用:

python models/research/object_detection/model_main.py --pipeline_config_path=/path/to/pipeline_file --model_dir=/path/to/output_results --checkpoint_dir=/path/to/directory_holding_checkpoint --run_once=True

如果要根据训练数据评估模型,则应将“ eval_training_data”设置为True,即:

python models/research/object_detection/model_main.py --pipeline_config_path=/path/to/pipeline_file --model_dir=/path/to/output_results --eval_training_data=True --checkpoint_dir=/path/to/directory_holding_checkpoint --run_once=True

我还添加了注释以阐明一些先前的选项:

-pipeline_config_path:用于训练检测模型的“ pipeline.config”文件的路径。此文件应包含您要评估的TFRecords文件(训练和测试文件)的路径,即:

    ...
    train_input_reader: {
        tf_record_input_reader {
                #path to the training TFRecord
                input_path: "/path/to/train.record"
        }
        #path to the label map 
        label_map_path: "/path/to/label_map.pbtxt"
    }
    ...
    eval_input_reader: {
        tf_record_input_reader {
            #path to the testing TFRecord
            input_path: "/path/to/test.record"
        }
        #path to the label map 
        label_map_path: "/path/to/label_map.pbtxt"
    }
    ...

-model_dir :将在其中写入生成的度量标准的输出目录,尤其是可由tensorboard读取的“ events。*”文件。

-checkpoint_dir :具有检查点的目录。在训练过程中或通过使用“ export_inference_graph.py”导出检查点文件(“ model.ckpt。*”)后,即在该目录中写入了模型目录。

-run_once :真,仅运行一次评估。