SSD Inception v2. Заменен ли экстрактор функций VGG16 на Inception v2? - PullRequest
1 голос
/ 28 мая 2019

В оригинальной бумаге SSD они использовали сеть VGG16 для извлечения функции.Я использую модель SSD Inception v2 из модельного зоопарка TensorFlow, и я не знаю, в чем разница в архитектуре.Это сообщение о переполнении стека предполагает, что для других моделей, таких как SSD MobileNet, средство извлечения функций VGG16 заменяется средством извлечения функций MobileNet. эта статья сбила меня с толку.Отсюда кажется, что Inception добавляется к SSD-части модели, а экстрактор функций VGG16 остается в начале архитектуры.Figure from the paper - Inception Single Shot MultiBox Detector for object detection

Какова архитектура модели SSD Inception v2?

1 Ответ

2 голосов
/ 28 мая 2019

В api обнаружения объекта тензорного потока модель ssd_inception_v2 использует inception_v2 в качестве экстрактора признаков, а именно, часть vgg16 на первом рисунке (рисунок (а)) заменена на inception_v2.

В моделях ssd векторный слой, извлеченный с помощью feature extractor (т. Е. Vgg16, inception_v2, mobilenet), будет дополнительно обрабатываться для создания дополнительных слоев объектов с различным разрешением. На приведенном выше рисунке (а) имеется 6 выходных векторных слоев, первые два (19x19) взяты непосредственно из feature extractor. Как генерируются остальные 4 слоя (10x10, 5x5, 3x3, 1x1)?

Они генерируются дополнительными сверточными операциями (эти операции извлечения похожи на использование очень мелких экстракторов функций, не так ли?). Детали реализации здесь предоставлены с хорошими документами. В документации написано

Note that the current implementation only supports generating new layers 
using convolutions of stride 2 (resulting in a spatial resolution reduction 
by a factor of 2)

это то, как карта дополнительных объектов уменьшается в 2 раза, и если вы прочитаете функцию multi_resolution_feature_maps, вы найдете slim.conv2d используемых операций, которые указывают, что эти дополнительные слои получены с дополнительным слоем свертки (просто один слой каждый!).

Теперь мы можем объяснить, что улучшено в статье, которую вы связали. Они предложили заменить дополнительные слои объектов начальным блоком . Не существует inception_v2 модели, а просто начальный блок. В документе сообщается об улучшении точности классификации с использованием начального блока .

Теперь должен быть ясен вопрос, модель ssd с vgg16, inceptioin_v2 или mobilenet в порядке, но начальная в статье относится только к начальному блоку, а не к начальной сеть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...