我目前正在尝试使用keras库中的vgg16模型,但是每当我通过这样做创建VGG16模型的对象时
from keras.applications.vgg16 import VGG16
model = VGG16()
我收到3次以下消息
tensorflow/core/framework/allocator.cc.124 allocation of 449576960 exceeds 10% of system memory
此后,我的计算机死机了。我在Linux Mint 18上使用64位4GB RAM,但无法访问GPU。
此问题是否与我的RAM有关?
作为一个临时解决方案,我从命令行运行python脚本,因为与任何IDE相比,我的计算机在此冻结的次数更少。另外,当我使用任何其他模型(例如InceptionV3)时,也不会发生这种情况。
我已经尝试了here提供的解决方案
但是没有用
感谢您的帮助。
答案 0 :(得分:1)
您很可能用完了内存(RAM)。 尝试并行运行top(或htop)并查看您的内存利用率。
通常,VGG模型很大,并且需要相当数量的RAM。也就是说,实际需求取决于批量大小。较小的批次意味着较小的激活层。
例如,一个6幅图像的批处理将消耗大约一公羊(reference)。作为测试,您可以将批量大小减小到1,然后查看适合您内存的大小。