问题描述
我有18000个示例的测试集。
Χ_test.shape: (18000, 128, 128, 1)
我已经训练了模型,并想在X_test上使用预测。
如果我尝试仅使用:
pred = model.predict_on_batch(X_test)
它给出了内存错误。
我尝试了类似的东西:
X_test_split = X_test.flatten()
X_test_split = np.array_split(X_test_split, 562) # batch size is 32
pred = np.empty(len(X_test_split), dtype=np.float32)
for idx, _ in enumerate(X_test_split):
pred[idx] = model.predict_on_batch(X_test_split[idx].reshape(32, 128, 128, 1))
但是它要么再次给我带来内存错误,要么给我关于重整的错误(取决于我在上面的代码中尝试的变化)
我也有使用predict_generator
的相同问题。
1楼
根据OP的要求,我将发表我的评论作为答案,并尝试详细说明:
看来您的模型尺寸很大,因此您需要使用较小的批处理尺寸(<32,因为您提到它不适用于32)或修改模型并减少参数数量(例如,删除一些图层,减少过滤器或单元的数量等)。