Обнаружение объекта Tensorflow при классификации объектов - PullRequest
0 голосов
/ 25 апреля 2018

Я следовал простому руководству по обучению детектору пользовательских объектов.https://www.youtube.com/watch?v=COlbP62-B-U&list=PLQVvvaa0QuDcNK5GeCQnxYnSSaar2tpku Я получил потерю до 0,6, но моя проблема в том, что обнаруженные будут классифицировать другие объекты как то, с чем я тренировался.Например, в моем случае это классифицирует собаку как макаруни , введите описание изображения здесь и сыр.Что я делаю неправильно ?

1 Ответ

0 голосов
/ 23 августа 2018

Я столкнулся с точно такой же проблемой, когда модель «запомнила» предыдущие объекты. В файле конфигурации есть новая конфигурация, которая не была реализована при создании видео.

Внутри файла ssd_mobilenet_v1_pet.config вы должны указать путь к контрольной точке, с которой начнется тренировка, поэтому он будет иметь все веса от предыдущей тренировки, эта конфигурация равна fine_tune_checkpoint, ниже, чем from_detection_checkpoint поэтому он будет использовать указанную контрольную точку, после этого будет load_all_detection_checkpoint_vars, который по умолчанию установлен на true, но должен быть false, если вы хотите, чтобы модель «забыла» объекты, на которых она обучалась.

Проблема в том, что load_all_detection_checkpoint_vars будет загружать и фиксировать все веса, в том числе в последних слоях, а не только в нижнем слое, поэтому он будет помнить классификацию и обнаружение из прошлых объектов и неправильно классифицировать с новыми, так как ваш *.pbtxt имеет разные классификации. Если вы установите его на false, он загрузит данные и изучит новые веса для финальных слоев только на основе вашего тренировочного набора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...