如何在Tensorflow Object Detection API中重用分类层

问题描述 投票:2回答:1

使用来自Tensorflow detection model zoo的SSD_inception_v2_coco的Tensorflow对象检测API,

我想保留预先训练模型中分类器和特征提取器权重的原始权重。

从这个discussion

在train.config中添加freeze_variables: ".*FeatureExtractor.*"将在训练期间冻结特征提取器的权重。

那么这是否意味着我在预训练模型中具有相同的特征提取器权重?

从这个discussion

如果课程数量与预训练模型不同,

分类器的权重将被初始化。

这是否意味着如果我使用SSD-Inception-v2-coco中相同的标签贴图,我可以在pre-traind模型中拥有相同的分类器权重?

我的第3个问题是配置文件中的from_detection_checkpoint。

来自configuring_jobs.md

“from_detection_checkpoint是一个布尔值。如果为false,则假定检查点来自对象分类检查点。”

我想检测检查点来自Tensorflow detection model zoo

和分类检查点来自TensorFlow-Slim image classification model library

我对么?

感谢您在我的问题上花费宝贵的时间。

tensorflow machine-learning deep-learning object-detection object-detection-api
1个回答
0
投票

1. So does it mean I have the same feature-extractors' weights in the pre-trained model?

特征提取器和分类器大致相同。它们基本上都是来自Inception V2预训练重量的重量。如果使用Inception V2权重作为SSD的特征提取器,则会忽略Inception中将CNN输出转换为类概率的最后一层。因此,您可以使用在Imagenet上训练的特征提取器/分类器,比如说,在SSD中检测来自COCO类列表的对象。

2. Does it mean I can have the same classifiers' weights in the pre- traind model if I use the same label map from SSD-Inception-v2-coco?

是的,检测和分类检查点来自您列出的页面。

© www.soinside.com 2019 - 2024. All rights reserved.