API обнаружения объектов полностью настраивается с помощью файла pipeline.config
, поэтому, если вы понимаете, что означают все эти поля в файле конфигурации, вы можете понять, что можно изменить.
Давайте проясним некоторые конкретные примеры в вашем вопросе.
API использовал то, что называется feature_extractor. В основном это сверточная нейронная сеть , которая используется для извлечения функций из изображений, и они, как правило, являются классическими сетями, такими как ResNet, Inception, MobileNet и т. Д. размер заполнения или число слоев в части экстрактора объектов, вместо этого API просто переключается между всеми этими экстракторами объектов, поэтому вы увидите множество различных комбинаций, таких как faster_rcnn_resnet101
, faster_rcnn_resnet50
, faster_rcnn_mobilenet,
faster_rcnn_inception
.
Но для серии моделей rapid_rcnn существует слой пула ROI, в котором вы можете изменить размер ядра пула и размер шага.
Что касается оптимизатора, поле optimizer
в файле конфигурации в точности используется для настройки различных оптимизаторов, вы можете выбрать один из трех различных оптимизаторов. (RMSPropOptimizer, MomentumOptimizer, AdamOptimizer) также вы можете изменять скорость обучения оптимизатора, а также планировать скорость обучения.
Начальные веса также могут быть настроены, вы можете начать с нуля или восстановить веса с определенной контрольной точки. Вы даже можете заморозить некоторые слои во время тренировки.
Итак, в общем, вам нужно сосредоточиться на файле pipe.config, попытаться понять значение полей в файле. Существует множество примеров конфигурационных файлов , доступных . А официальный репозиторий предоставил неплохую документацию , вы должны прочитать их, прежде чем захотите обучать свои собственные модели.