我正在按照Tensorflow Object Detection API tutorial在我自己的谷歌云数据集上训练一个更快的R-CNN模型。但是下面的“内存不足”错误一直在发生。
The replica master 0 ran out-of-memory and exited with a non-zero status of 247.根据日志,返回了一个非零的退出状态-9。如the official documentation中所述,-9代码可能意味着训练使用的内存多于分配的内存。
但是,内存利用率低于0.2。那么为什么我会有记忆问题呢?如果有帮助,the memory utilization graph is here.
发布于 2017-07-29 06:25:57
内存利用率图是所有工作进程的平均值。在内存不足错误的情况下,也不能保证最终的数据点被成功导出(例如,内存中的一个巨大的突然峰值)。我们正在采取措施使内存利用率图更有用。
如果您使用Master进行评估(如大多数样本中所示),则Master使用的RAM是普通worker的~2倍。您可以考虑使用large_model machine type。
发布于 2017-12-14 11:20:39
看看你的错误,你的ML代码似乎消耗了比它最初分配的更多的内存。
尝试使用允许更多内存的机器类型,如"large_model“或"complex_model_l”。使用config.yaml定义它,如下所示:
trainingInput:
scaleTier: CUSTOM
# 'large_model' for bigger model with lots of data
masterType: large_model
runtimeVersion: "1.4"Google Cloud machine learning out of memory也有类似的问题。有关实际解决方案,请参阅该链接。
发布于 2018-01-23 17:52:05
running_pets教程使用的是GPU层,所以可能是内存不足。ML引擎上的图形目前仅显示CPU内存利用率。
如果是这种情况,将您的层更改为更大的GPU将解决问题。Here是关于不同层的一些信息。在同一页面上,您将找到一个关于如何配置它的yaml文件示例。
https://stackoverflow.com/questions/45383076
复制相似问题