Keras模型的输入数组的形状有什么问题?
我有一个经过训练的图像分类模型。该模型基于Keras附带的异常模型,它期望输入图像的大小为Keras模型的输入数组的形状有什么问题?,keras,python,tensorflow,Keras,Python,Tensorflow,我有一个经过训练的图像分类模型。该模型基于Keras附带的异常模型,它期望输入图像的大小为299x299像素。因此,在将图像输入模型之前,我会将图像调整为该格式 但是,当调用model.predict(img)时,我确实会得到以下错误: ValueError: Input 0 is incompatible with layer model:expected shape=(None, 299, 299, 3), found shape=(None, 299, 3) 但是,当我在调试器中调用pr
299x299
像素。因此,在将图像输入模型之前,我会将图像调整为该格式
但是,当调用model.predict(img)
时,我确实会得到以下错误:
ValueError: Input 0 is incompatible with layer model:expected shape=(None, 299, 299, 3), found shape=(None, 299, 3)
但是,当我在调试器中调用predict()
时检查img
时,我可以看到以下内容:
shape:(299, 299, 3)
有人能解释一下我在这里遗漏了什么吗?这是因为您的Keras模型需要这种格式的数据
(n_示例,299299,3)
预测单个图像时,只需进行简单的重塑即可
model.predict(X.reshape(1, 299, 299, 3))
作为注释,您可能不应该在一张图像上使用
model.predict
。此函数用于预测大量数据,单个样本的性能通常很差。相反,只要给你的模特打电话:model(img)
@Lescurel哇,谢谢,我不知道!