如何将两个冻结模型(Tensorflow)合并,以进行物体检测?

3
我正在尝试将两个冻结的模型(protobufs)用于目标检测。问题是其中一个模型是我自己的数据集,另一个是针对coco数据集的预构建模型(只包含更多类别到数据集本身)。 这是否可行?还是有更好的方法来执行此操作?因为从头训练所有类别可能需要几周时间。 提前感谢您的帮助。
1个回答

0
问题出在其中一个模型是我的数据集,另一个是为Coco数据集预建的模型(只是将更多类别包含到数据集本身)。这样可以吗?
当然,是可以的。但是您需要重新训练模型。当您使用自己的数据来训练模型时,
python object_detection/train.py \
    --logtostderr \
    --pipeline_config_path=${PATH_TO_YOUR_PIPELINE_CONFIG} \
    --train_dir=${PATH_TO_TRAIN_DIR}

这里的${PATH_TO_YOUR_PIPELINE_CONFIG}是您的配置文件,您需要按照以下方式指定预训练模型路径

fine_tune_checkpoint: "PATH_TO_BE_CONFIGURED/model.ckpt"

这样做可以帮助您的训练更快地收敛,因为现在您的网络将从coco数据集的训练权重开始,而不是从头开始。

您需要从此处下载您想要使用的coco模型。然后在上面演示的配置文件中指定模型文件路径。


这并没有将新的类添加到旧的类中,是的,我知道快速收敛和更少的训练时间..但我需要将现有数据集中的两个类与一个新的自定义类结合起来。 - TheWiz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接