当我的批处理大小为1时,分配带有shape [24,64,1024,1024]的张量时,为什么会出现ResourceExhaustedError:OOM?

问题描述 投票:0回答:1

我的模型摘要:

Total params: 932,225
Trainable params: 928,897
Non-trainable params: 3,328

我正在使用loss =“ binary_crossentropy”,optimizer =“ sgd”和batch_size = 1进行binary类语义细分。

241024x1024 x3训练图像的总数,64是第一转换层的深度。

注意:我正在使用google colab gpu运行时。

keras out-of-memory google-colaboratory cnn
1个回答
0
投票

我正在将steps_per_epoch传递给model.fit而不是batch_size,这在这种情况下也不需要,

H = model.fit(X_train, Y_train, validation_data=(X_valid, Y_valid),
              steps_per_epoch=len(X_train)//BATCHSIZE, epochs=EPOCHS,
              validation_steps=len(X_valid)//BATCHSIZE)

batch_size替换steps_per_epoch,以某种方式解决了我的问题。

H = model.fit(X_train, Y_train, batch_size=BATCHSIZE,
              epochs=EPOCHS, validation_data=(X_valid, Y_valid))
© www.soinside.com 2019 - 2024. All rights reserved.