【发布时间】:2017-08-25 12:36:17
【问题描述】:
我正在使用 Keras 2.0.0,我想在 GPU 上训练一个具有大量参数的深度模型。
使用太大的图像,我的内存不足 (OOM)。
使用太低的图像,模型的准确性会比可能的差。
因此,我想找到适合我的 GPU 的图像的最大可能输入大小。
在给定模型和输入数据的情况下,是否有任何计算内存的功能(例如,与 model.summary() 相当)?
感谢您的帮助。
【问题讨论】:
-
您可以查看他们如何计算内存使用量 [这里] (cs231n.github.io/convolutional-networks/#case),您也可以尝试减少批量大小而不是分辨率。
-
感谢您的回答。实际上,在发布我的问题之前,我正在阅读给定的链接。但我想避免手动计算:D 另外我不想减少批量大小,因为我想在统计意义上很好地表示我的整个数据集。
-
try-fail 将是最快回答您问题的方法。 Keras 不是计算库,它只是您选择的后端的包装器。对于不同的后端,内存管理的处理方式不同。内存消耗不仅取决于参数的数量,即使参数数量很少,LSTM 也会使用大量内存...您应该尝试查看实际的内存消耗:)
-
我害怕那个。但我会这样做......谢谢! (纳西姆,你喜欢回答我的问题,不是吗?:D)
-
爱它 :-) 玩得开心