Тренируйте SSD-MOBILENET V1 и потери не уменьшаются

Я новичок в CNN и тензорном потоке. Я тренирую предварительно обученный ssd-mobilenev1-pets.config для обнаружения столбцов зданий примерно в один день, но потери составляют от 2 до 1 и не уменьшаются с 10 часов назад. Я понял, что мои входные изображения имеют размер 128x128 и SSD изменяют размер изображения до 300 * 300. Влияет ли размер входных изображений на обучение? Если это так, следует ли мне переобучать сеть с большими входными изображениями? или какой еще вариант уменьшить убыток? в моем наборе данных поезда есть 660 изображений и тест 166 Я не знаю, достаточно ли изображений, я действительно приветствую вашу помощь ....


person Mishel Mejia    schedule 30.11.2019    source источник
comment
Привет, пожалуйста, поделитесь своим конфигурационным файлом, вашим графиком потерь и сколько шагов было сделано во время обучения?   -  person Shayan Tabatabaee    schedule 02.12.2019
comment
Размеры изображений не имеют значения, скрипты смогут изменять размеры изображений до требуемого размера модели. Можете ли вы подтвердить, что выполнили все указанные здесь шаги - github.com/tensorflow/models/blob/master/research/   -  person Suman    schedule 03.12.2019


Ответы (2)


Значения потерь ssd_mobilenet могут отличаться от faster_rcnn. Из учебного пособия по обнаружению объектов TensorFlow от EdjeElectronics:

Для моего обучения на модели Faster-RCNN-Inception-V2 он начинался примерно с 3,0 и быстро опускался ниже 0,8. Я рекомендую позволить вашей модели тренироваться до тех пор, пока потери не упадут ниже 0,05, что займет около 40000 шагов или около 2 часов (в зависимости от мощности вашего процессора и графического процессора). Примечание: цифры потерь будут другими, если используется другая модель. MobileNet-SSD начинается с потери около 20, и ее следует обучать, пока потери не станут стабильно ниже 2.

Для получения дополнительной информации: https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10#6-run-the-training

Архитектура SSD Mobilnet требует дополнительного обучения, чтобы соответствовать значениям точности потерь модели R-CNN, однако предлагает практичность, масштабируемость и легкую доступность на небольших устройствах, что делает модель SSD перспективным кандидатом для дальнейшей оценки (Fleury and Fleury, 2018).

Для получения дополнительной информации: Fleury, D. & Fleury, A. (2018). Внедрение архитектур обнаружения объектов машинного обучения Regional-CNN и SSD для анализа в реальном времени патогенов, передающихся через кровь, с помощью микроскопии темного поля. MDPI AG.

person Mehmet Bütün    schedule 05.02.2020

  • Я бы порекомендовал вам использовать для тестирования 15–20% изображений, которые охватывают все разнообразие данных для обучения. Как вы сказали, у вас есть 650+ изображений для обучения и 150+ для тестирования. Это примерно 25% тестовых изображений. Похоже, у вас достаточно изображений для начала. Я знаю, чем больше, тем веселее, но make sure your model also has sufficient data to learn from!

  • Изменение размера изображений не приводит к потере. Это обеспечивает единообразие всех изображений, чтобы модель могла распознать их без предвзятости. Потеря не имеет ничего общего с изменением размера изображения, поскольку все изображения изменяются одинаково.

  • Вы должны делать остановки и восстанавливать контрольные точки снова и снова, если вы хотите, чтобы ваша модель идеально подходила. Обычно вы можете уйти с хорошей точностью re-training the ssd mobilenet until the loss consistently becomes under 1.

    В идеале мы хотим потерять чтобы быть как можно ниже, но мы хотим, чтобы make sure the model is not over-fitting. Все дело в методе проб и ошибок. (Кажется, что потеря от 0,5 до 1 хорошо справляется со своей задачей, но опять же, все зависит от вас.)

  • Я считаю, что ваша модель неэффективна, потому что у вас есть множество данных тестирования и недостаточно данных для обучения.

    The model has not been given enough knowledge in training data to make the model learn for new variety of testing data. (Например: ваши тестовые данные содержат некоторые изображения новых углов зданий, которых недостаточно в обучающих данных). В этом случае я рекомендую вам поместить все разнообразные изображения в тренировочные данные, а затем выбрать изображения для тестирования, убедившись, что у вас по-прежнему достаточно тренировочных данных для новых поз. Вот почему я рекомендую брать 15% -20% тестовых данных.
person Raghav Gupta    schedule 16.11.2020