【发布时间】:2018-05-15 11:05:33
【问题描述】:
我已阅读有关如何使用 TensorFlow 对象检测 API 训练新类的教程。但我想做的是在预训练模型的已经训练好的类中添加一个新类。
例如:MS-COCO 预训练模型有 90 个类。我想再添加一个类并检测 91 个类的对象。
【问题讨论】:
标签: tensorflow object-detection
我已阅读有关如何使用 TensorFlow 对象检测 API 训练新类的教程。但我想做的是在预训练模型的已经训练好的类中添加一个新类。
例如:MS-COCO 预训练模型有 90 个类。我想再添加一个类并检测 91 个类的对象。
【问题讨论】:
标签: tensorflow object-detection
Tensorflow 对象检测 API 支持从预训练的 MS COCO 检查点开始。只需设置
fine_tune_checkpoint: "/usr/home/username/tmp/model.ckpt-#####"
from_detection_checkpoint: true
在您的检测管道中。 (官方参考:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/configuring_jobs.md)
您应该将带有额外类的图像添加到 coco 数据集中,并对所有 91 个类进行微调,否则您的网络可能会忘记之前学到的内容,而只会检测到新对象。
【讨论】:
model.ckpt-#####. data-00000-of-00001、model.ckpt-#####.index 和 model.ckpt-#####.meta 复制到新目录。然后,我将fine_tune_checkpoint 指向我的新检查点。但它发现错误,它找不到我的新检查点。之后,我将旧文件夹中的文件checkpoint 复制到新文件夹中,但发现另一个错误:Unsuccessful TensorSliceReader constructor。我错过了什么吗?