Что означает настройка «second_stage_batch_size *» при обучении с моделью fast_rcnn_nas_coco? - PullRequest
2 голосов
/ 08 апреля 2019

Я использовал API обнаружения объектов для обучения модели quick_rcnn_nas.

Но я получил ошибку "недостаточно памяти", но при добавлении

second_stage_batch_size: 4

Приведенная выше строка кода решает мою проблему, и я сейчас тренируюсь.Но мне интересно, что означает эта строка?

Здесь - это определение этой строки.

Но я не совсем понимаю.Кто-нибудь может объяснить для меня?

Ответы [ 2 ]

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

Двухэтапная архитектура - это выбор дизайна, сделанный для детекторов объектов предложения региона.

Это приводит к двухэтапному обучению , что также является чем-тоархитектура R-FCN, которая первоначально была принята из реализации R-CNN.Двухэтапное обнаружение объекта состоит из:

  1. Обнаружение предложения области (1 этап)
  2. Классификация региона.(2 этап)

second_stage_batch_size определяется как размер пакета, используемый для вычисления классификации и уточненной потери местоположения классификатора блока,Этот «размер партии» относится к числу предложений, выбранных как вносящие вклад в функцию потерь для любого данного изображения в пакете изображений, и называется только «batch_size» из-за терминологии из бумаги Faster R-CNN.

Примечание: Ошибка нехватки памяти, вероятно, связана с аппаратными ограничениями или количеством предложений на первом этапе (попробуйте меньший размер пакета для первого этапа и / или длявторой этап).

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

Как объяснено в здесь , «batch_size» - это в основном терминология, значение - это количество предложений, которые вносят вклад в процесс обучения, то есть те, которые используются для вычисления классификации и регрессии ограничивающего прямоугольника и являются способствующий потере. Поэтому имеет смысл, что если их будет слишком много, у вашего GPU будет недостаточно памяти.

...