我试图在 caffe 中对我的数据运行 fcn。我能够lmdb
通过convert_imageset
内置函数 caffe 将我的图像集转换为。但是,一旦我想训练net
,它给了我以下错误:
Check failed: error == cudaSuccess (2 vs. 0) out of memory
*** Check failure stack trace: ***
.....
Aborted (core dumped)
我浏览了许多在线资源来解决内存故障,但大多数都建议减少批量大小。甚至,我将图像的大小减小到 256x256。我还不能解决这个问题。我通过这个命令检查了GPU的内存,nvidia-smi
模型是Nvidia GT 730
,内存是1998 MiB
。由于批量大小train_val.prototxt
为 1,我无法在train_val.prototxt
. 所以我的问题是:
- 通过查看终端中的日志文件,我意识到每当
convert_imageset
将数据转换为 LMDB 时,它都是在一组中拍摄 1000 张图像。是否可以将这个数字改为143
更小(例如 2;一次拍摄两个图像),重新编译 caffe,然后使用 convert_imageset 将图像转换为 lmdb?是否有意义?151
convert_imageset.cpp
- 如果问题 1 的答案是肯定的,我该如何再次编译 caffe,我应该删除
build
文件夹并从头开始重新安装 caffe? - caffe 是如何处理 LMDB 数据的?这就像在运行 convert_imagenet 时拍摄一批显示的 1000 张图像吗?
非常感谢您的帮助。谢谢...