Кафе загружает партии LMDB очень медленно - PullRequest
0 голосов
/ 29 ноября 2018

Я сгенерировал базу данных LMDB, используя вилку SSD-Caffe здесь .Я успешно сгенерировал каталоги VCD LMDB trainval / test LMDB и могу тренировать модель.

Однако во время обучения загрузка данных из базы данных LMDB занимает слишком много времени.Например, при профилировании с использованием функции Caffe time с помощью этой команды:

ssdcaffe time --model "jobs/VGGNet/VOC0712/SSD_300x300/train.prototxt" --gpu 0 --iterations 20

Я получаю, что прямой проход занимает в среднем 8,9 с, а обратный проход - в среднем 0,5 с,При послойной проверке слой ввода данных занимает большую часть этого времени за 8,7 с.См. Ниже:

I1129 10:14:11.094445  8011 caffe.cpp:404]       data   forward: 8660.38 ms.
...
I1129 10:14:11.095383  8011 caffe.cpp:412] Average Forward pass: 8933.31 ms.
I1129 10:14:11.095389  8011 caffe.cpp:414] Average Backward pass: 519.549 ms.

Если я наполовину увеличу размер пакета с 32 до 16, то время слоя данных будет примерно вдвое меньше:

I1129 10:20:07.975527  8093 caffe.cpp:404]       data   forward: 3906.53 ms.

Это явно не предполагаемая скорость,и что-то не так.Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 29 ноября 2018

Нашел мою проблему:

Мои изображения были слишком большими.Стандартные изображения VOC, используемые репо, были ~ 350x500 пикселей, тогда как мои изображения были 1080x1920.Когда я уменьшил свои изображения в 3 раза (например, в 9 раз меньше пикселей), мой слой приема данных занял всего 181 мс (48-кратное ускорение по сравнению с предыдущим временем 8,6 с)

...