Я использую API обнаружения объектов Tensorflow для обнаружения автомобилей.Он должен определять автомобили как один класс "автомобиль".
Я следовал за следующими сериями sentdex:
https://pythonprogramming.net/introduction-use-tensorflow-object-detection-api-tutorial/
Системная информация:
OS -Ubuntu 18.04 LTS
GPU - Nvidia 940M (VRAM: 2 ГБ)
Тензор потока: 1,10
Python - 3,6
ЦП - Intel i5
Проблема: тренировочный процесс проходит довольно хорошо.Чтобы узнать, когда модель сходится и когда я должен прекратить тренировку, я наблюдаю потерю во время тренировки за шаг в терминале, где идет тренировка, и также наблюдаю график полной потери в Tensorboard., выполнив следующую команду в другом терминале,
$tensorboard --logdit="training"
Но даже после тренировки с шагом 60 кбит потери колеблются от 2,1 до 1,2.Если я прекращаю обучение и экспортирую граф вывода из последней контрольной точки (сохраненной в обучении / папке), в некоторых случаях он обнаруживает автомобили, а в некоторых дает ложные срабатывания.
Я также пытался запустить eval.py , как показано ниже,
python3 eval.py --logtostderr --pipeline_config_path=training/ssd_mobilenet_v1_pets.config --checkpoint_dir=training/ --eval_dir=eval/
, но выдает ошибку, которая указывает, что память графического процессора не может выполнить этот сценарий вместе с train.py.
Итак, я прекращаю обучение, чтобы убедиться, что графический процессор свободен, и затем запускаю eval.py , но он создает только одну точку eval в папке eval /.Почему?
Кроме того, как я могу понять из графиков точности в Tensorboard, что тренировку нужно остановить?
Я мог бы также публиковать скриншоты, если кто-то захочет.Должен ли я продолжать тренировку до тех пор, пока потери не останутся в среднем около 1?
Спасибо.
PS: добавлен график общей потери ниже до 66k шагов.
![enter image description here](https://i.stack.imgur.com/vhVBF.png)
PS2: после 2-х дней тренировок (и до сих пор включен) ниже приведен график общих потерь.
![enter image description here](https://i.stack.imgur.com/enXvM.png)