tensorflow对象检测API训练和导出图

时间:2019-02-05 06:46:11

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

我有以下问题:当我用自己的数据集重新训练TF对象检测API时,训练常常被取消,我不知道原因。没有错误日志,只是被杀死。 此外,为什么在我的MODEL_DIR中只保存了很少的model.ckpt-XXXX

第二,当我尝试使用提供的脚本将上述模型导出到冻结图时,我在分析中发现形状不完整:

================== Model Analysis Report ======================
Incomplete shape.

训练过程被杀死后,我使用了model.cpkt-XXXX,这是形状不完整的原因吗?

导出的模型可以用于推理,但我想这不是最佳选择...

仅供参考,我对mobileSSDv2进行了1类培训,并且针对以下更改对管道配置文件进行了修改:

  • 我将班级数量更改为1
  • 在火车config {}部分中,我将批量大小更改为12,并将步数更改为200
  • train_input_readereval_input_reader {}部分,我已将路径添加到TF记录和labelmap.pbtxt
  • eval_config {}部分,我将示例数更改为85(我的评估图像存储库中的图片数),并将最大评估数更改为5。

我在带有python 2.7的virtualenv中将ubuntu 16.04与tensoflow-GPU 1.12.0一起使用。

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您使用的是tensorflow-gpu,并且拥有GPU,则 200确实是一个非常低的数字,您可以在短短的几分钟之内达到目标(并且您的conv-net不会学到任何东西)。至少增加到100.000。

此外,由于训练步骤数量少,您可能希望训练在开始(步骤0)和结束训练(步骤200)时保存您的模型,所以您只能得到2个模型。

如果不更改 trainer.py

中的 save_interval_secs ,Tensorflow每600秒保存一次模型