Я использую Tensorflow Hub для извлечения объектов из изображения.А именно, я использую модуль hub.Module("https://tfhub.dev/google/imagenet/resnet_v2_50/feature_vector/3")
.
. Поскольку я хочу извлечь объекты из последнего сверточного слоя, я немного запутался, какой диктонарный вывод я должен использовать из Resnet50
.Например:
image = ...
embedding_module = hub.Module("https://tfhub.dev/google/imagenet/resnet_v2_50/feature_vector/3")
output = embedding_module(image, signature="image_feature_vector",
as_dict=True)
Теперь, если мы распечатаем ключи из этого словаря, есть 3 разных ключа, между которыми я не знаю разницы.
resnet_v2_50/block4/unit_3/bottleneck_v2
resnet_v2_50/block4/unit_3/bottleneck_v2/conv3
resnet_v2_50/block4
Что меня смущает, так это то, что все они имеют вывод одинаковой формы (7, 7, 2048)
, но значенияresnet_v2_50/block4/unit_3/bottleneck_v2
и resnet_v2_50/block4
отличаются от resnet_v2_50/block4/unit_3/bottleneck_v2/conv3
.Может кто-нибудь указать мне, какой ключ следует использовать для извлечения элементов из последнего сверточного слоя Resnet50
, а также в чем разница между каждым из перечисленных ключей?
Спасибо!