В чем разница между базовой сетью и сетью обнаружения в процессе глубокого обучения? - PullRequest
0 голосов
/ 30 апреля 2019

Я недавно начал работать над алгоритмами обнаружения объектов. И я обычно сталкиваюсь с моделями с базовой сетью, такой как LeNet или PVA-Net, а затем с другой архитектурой или моделью для обнаружения. Но я никогда не понимал, как эти базовые сети и сети обнаружения помогают и как выбрать конкретную модель в качестве базовой или сети обнаружения?

1 Ответ

1 голос
/ 30 апреля 2019

Предположим, что вы строите модель для обнаружения объектов.

Модель обнаружения объектов CNN (для простоты, давайте выберем SSD) может состоять из базовой сети, которая служит для извлечения функций, в то время как модули обнаруженияполучить входные объекты (извлеченные из базовой сети) для генерации выходных данных, которые содержат классы объектов и координаты обнаруженных объектов (включая центр (x, y), высоту (h) и ширину (w) прогнозируемого блока)).

Для базовой сети мы обычно берем предварительно обученную сеть, такую ​​как ResNet, VGG и т. Д., Которая уже обучалась на больших наборах данных, таких как ImageNet, в надежде, что базовая сетьсоздать хороший набор функций для слоя обнаружения (или, по крайней мере, нам не нужно настраивать параметры базовой сети во время обучения, что помогает модели быстро сходиться).

Для модулей обнаружения это зависит от того, какие методы вы хотите использовать, например, одноэтапные (SSD, RetinaNet, YOLO и т. Д.) Или двухэтапные (более быстрый R-CNN)., В маске R-CNN и т. Д.).Между этими методами существует компромисс между точностью и скоростью, который является важным показателем того, какой модуль обнаружения вы должны выбрать.

...