tensorflow - Colab kill '^C' - 小数据集和小批量大小的内存不足?
问题描述
我正在尝试按照本教程在一个小数据集上运行掩码 R-CNN 架构(现在与教程中的相同) 。
我想我的内存不足了。这是给定的输出:
[...]
Future major versions of TensorFlow will allow gradients to flow
into the labels input on backprop by default.
See `tf.nn.softmax_cross_entropy_with_logits_v2`.
tcmalloc: large alloc 644245094400 bytes == 0x1a936c000 @ 0x7efe929e7b6b 0x7efe92a07379
0x7efe76f65287 0x7efe6848dc0f 0x7efe6851644b 0x7efe68388cc6 0x7efe68389b8c 0x7efe68389e13
0x7efe7182f2b7 0x7efe71853a35 0x7efe6860b53f 0x7efe686005c5 0x7efe686be551 0x7efe686bb263
0x7efe686aa3a5 0x7efe923c96db 0x7efe92702a3f
^C
即使我有一个相对较小的数据集,我的问题是 12,5 GB RAM 对batch_size = 1
吗?这是我的Colab 笔记本。
除了 , 减少内存负载的选项有batch_size
哪些shuffle_buffer_size
?
解决方案
我认为您的错误来自您的掩码大小 = (1024, 1024)。该网络将为每张图像预测几十年的掩码,然后选择其中最好的。在这种情况下,如果您的图像已经具有 (1024, 1024) 的大小,然后有几个相同大小的掩码,那么您的 GPU 就没有足够的内存来保存它们。
在标准配置中,面罩的尺寸为:
mask_height: 33
mask_width: 33
所以我建议你改变它。
推荐阅读
- reactjs - 由于 sass-loader 导致模块无法构建错误
- javascript - 如何在 react/redux 中记住 http 请求页码
- linux - pthread_create 完成函数后退出程序
- c# - 为什么当窗口全屏或很大时 System.Windows.Forms.Timer 会自动停止?
- c++ - 在非常量成员函数中调用 const 成员函数,而它们都具有相同的函数名
- java - Selenium 无此类元素异常处理
- r - 在条形图上添加第二个 y 轴和线
- opengl - SDL 2 + OpenGL 1.3 - 无光
- excel - 尝试在 Excel 中增加 4 个字符的字母数字代码
- c# - C# 从 IPEndPoint 转换为 Socket