3 回答

TA贡献1860条经验 获得超8个赞
要分批训练,您应该使用 fit_generator 方法。为此,您需要先制作数据生成器。您需要通过 flow_from_directory 使用 ImageDataGenerator 跟随(例如)。这样 keras 将分批提供数据。您应该调整批量大小以确保 GPU 的内存足够。通常批量大小约为 32-64。一般来说,批量越大越好。
Keras 文档:https ://keras.io/preprocessing/image/
您可以在此处查看使用示例:https : //www.kaggle.com/vbookshelf/skin-lesion-analyzer-tensorflow-js-web-app

TA贡献2012条经验 获得超12个赞
对我来说同样的问题。我只是检查了一些例子,发现:
dummy_x = tf.zeros((1, 224, 224, 1))
model._set_inputs(dummy_x)
如果此代码在 fit 之前,则不会发生 oom。

TA贡献1719条经验 获得超6个赞
嗯,我想您忘记定义要在您的网络中输入的 batch_size 了!
尝试类似的东西:
autoencoder.fit(x_train, x_train,
epochs=50,
batch_size = 32,
steps_per_epoch=int(int(x_train.shape[0])/10),
shuffle=True,
verbose=1,
validation_data=(x_test, x_test)
)
添加回答
举报