【发布时间】:2019-05-01 21:29:07
【问题描述】:
我使用 SSD-Caffe fork here 生成了一个 LMDB 数据库。我已经成功生成了 VOC 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.
如果我将 batchsize 从 32 减半到 16,那么数据注入层时间大致减少一半:
I1129 10:20:07.975527 8093 caffe.cpp:404] data forward: 3906.53 ms.
这显然不是预期的速度,而且有问题。任何帮助将不胜感激!
【问题讨论】:
标签: linux database deep-learning caffe lmdb