标签: memory-management tensorflow object-detection tensorflow-gpu
我开始实施fast-rcnn in TF(基于VGG16)。在我学习的过程中,如果我试图反复传播所有图层,我会遇到内存问题。但测试工作得很好。 (我有一台带有6G内存的Gforce GTX 1060)
我想知道怎么来的? TF保存需要两次保存参数才能进行培训吗?
答案 0 :(得分:5)
这是因为激活。在前向传播期间,您只需要存储最后一层激活,因此内存使用与深度无关。要计算渐变,您需要存储所有图层的激活,因此内存成本会随着网络的深度而增加。
答案 1 :(得分:2)
反向传播步骤中的内存问题可能是因为:
每个反向传播步骤大约需要两倍的内存和 计算时间比前向传播步骤。
取自video,其中还有一个很好的图解释。