Причина, по которой я задаю этот вопрос, заключается в том, что в VGG19 есть уровни нормализации партии (в отличие от VGG16, например).
Я пытаюсь обучить сеть Faster-RCNN вCaffe.Я делаю это:
- Загрузка предварительно обученной модели VGG19 ImageNet (весовой файл + файл prototxt)
- Удаление полностью подключенных слоев из файла prototxt
- Добавлениеслои RPN и Fast-RCNN поверх сверточных слоев основной линии VGG19
Я ничего не изменил в отношении значений lr_mult
сверточных слоев.В файле prototxt сверточные слои (такие как conv1_1
и т. Д. Имеют ненулевые значения lr_mult
, в то время как значения lr_mult
слоев пакетной нормализации установлены в 0 (слои, названные как conv1_1/bn
).
Означает ли факт, что слои пакетной нормализации заморожены, означает, что сверточные слои также заморожены? Или я должен установить lr_mult
на 0 также в слоях с именем convX_X
?
Обновление : после запуска другого процесса обучения при обнулении lr_mult
всех сверточных слоев время обучения резко сократилось, что означает, что ответом является то, что значение lr_mult
должно быть установлено на 0также в слоях convX_X
.