当我在运行Tensorflow
代码时,出现了这个错误。
ResourceExhaustedError (see above for traceback): OOM when allocating tensor with shape[518400,11] [[Node: gradients/loss/Sum_grad/Tile = Tile[T=DT_FLOAT, Tmultiples=DT_INT32, _device="/job:localhost/replica:0/task:0/gpu:0"] (gradients/loss/Sum_grad/Reshape, gradients/loss/Sum_grad/floordiv)]] [[Node: gradients/conv_decode1/BiasAdd_grad/tuple/control_dependency_1/_495 = _Recv[client_terminated=false, recv_device="/job:localhost/replica:0/task:0/cpu:0", send_device="/job:localhost/replica:0/task:0/gpu:0", send_device_incarnation=1, tensor_name="edge_2455_gradients/conv_decode1/BiasAdd_grad/tuple /control_dependency_1", tensor_type=DT_FLOAT, )] _device="/job:localhost/replica:0/task:0/cpu:0"](
我使用的数据集是CamVid,包含367张360*480的图像,我的批次大小是5。我尝试减小批次大小,尽管它不像我看过的其他数据集那样大,但这并没有帮助。
我有一台配备了GeForce NVIDIA 940 MX的华硕笔记本电脑,显存为2GB。我该怎么办?有什么建议吗?
回答:
你使用的是卷积神经网络吗?它的结构是怎样的?(层数、滤波器等)我认为你在这里使用的数据量太大了。或许你应该减少这些数值。另一个问题可能是图像太大,试着将它们从(360,480)调整到(240,320)的大小。另一方面,这个数据集太小了。你需要至少100倍大的数据集才能得到一个好的解决方案。如果你不想从头开始训练模型,你应该使用预训练模型并对其进行微调。