Keras-与model.predict()不匹配的数组形状

雅库布·斯沃博达(Jakub Svoboda)

我有一个简单的密集型NN,其中有2个用Keras编写的输入值,在Tensorflow和Python上运行。我已经成功安装了该网,并且可以进行评估而不会出错。但是,当我要预测单个样本数据的结果时,由于输入数据的尺寸形状不正确,会出现错误。但是,当我打印numpy数组的形状时,它将返回正确的形状:

inputArr = np.array((x[sample][0], x[sample][1]))
print(inputArr)
print(inputArr.shape)
prediction = model.predict(inputArr)

这将产生以下输出:

Input data: [-1. -1.]
Array shape: (2,)

随后出现错误:

Traceback (most recent call last):
  File ".\train3d.py", line 60, in <module>
    prediction = model.predict(inputArr)
  File "C:\Users\svoja\AppData\Local\Programs\Python\Python35\lib\site-packages\keras\engine\training.py", line 1147, in predict
    x, _, _ = self._standardize_user_data(x)
  File "C:\Users\svoja\AppData\Local\Programs\Python\Python35\lib\site-packages\keras\engine\training.py", line 749, in _standardize_user_data
    exception_prefix='input')
  File "C:\Users\svoja\AppData\Local\Programs\Python\Python35\lib\site-packages\keras\engine\training_utils.py", line 137, in standardize_input_data
    str(data_shape))
ValueError: Error when checking input: expected dense_1_input to have shape (2,) but got array with shape (1,)

从错误消息中可以看到,网络期望一个尺寸为(2,)的数组,该数组与我的输入数组的输出完全相同。

我的问题是,数组到底有什么问题?

纽里克

您缺少批处理大小,Keras期望数据是隐式的(N, D),其中N是批处理大小,D是要素数量。就您而言,D=2但您没有矩阵。

要传递单个数据点,您需要shape (1, 2),它会读取具有2个要素的1个数据点。您可以通过以下方法实现此目的:

inputArr = np.array((x[sample][0], x[sample][1]))
print(inputArr) # [-1, -1]
print(inputArr.shape) # (2,)
inputArr = np.expand_dims(inputArr, 0)
print(inputArr.shape) # (1, 2)

或更短的语法糖版本:

inputArr = inputArr[None, :] # (1, 2)

在其中None添加新维度。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Keras model.predict从训练标签数组给出不同的形状

来自分类Dev

Tensorflow Keras形状不匹配

来自分类Dev

Keras - model.predict() 返回列表而不是 numpy 数组

来自分类Dev

分类标签的 Keras model.predict 错误

来自分类Dev

Keras model.predict 总是预测 1

来自分类Dev

如何在Keras中的5维数组上运行model.predict()?

来自分类Dev

如何在Keras中的5维数组上运行model.predict()?

来自分类Dev

使用model.predict测试Keras情感分类

来自分类Dev

在Keras模型中为model.predict()输入正确的问题

来自分类Dev

How to run model.predict() on a 5 dimensional array in Keras?

来自分类Dev

在tf.function中使用tf.keras.model.predict

来自分类Dev

在Keras模型中为model.predict()输入正确的问题

来自分类Dev

Keras model.predict()花费不合理的时间

来自分类Dev

tf.keras.Model.fit 不训练模型

来自分类Dev

Keras 数组形状错误

来自分类Dev

严重的LSTM(Keras,TensorFlow)ValueError:形状不匹配:无法将对象广播为单个形状

来自分类Dev

model.fit 的不同输出(加载模型后没有训练)和 keras 中的 model.predict

来自分类Dev

如何使用交叉验证输出中的最佳模型使用keras model.predict()?

来自分类Dev

使用TF Keras ImageDataGenerator时Model.Predict返回相同的值

来自分类Dev

如何在Keras模型中将文件或图像提供给model.predict作为参数?

来自分类Dev

如何使tensorflow.keras.model.predict()输出一个生成器?

来自分类Dev

我在keras中使用model.predict时得到列表'索引超出范围'

来自分类Dev

为什么我在keras中将列表列表作为model.predict的输出

来自分类Dev

为什么model.predict与最后一层(keras)的输出不同?

来自分类Dev

在 Keras 中调用 model.fit 以获取不同形状的输入?

来自分类Dev

Python / Keras / Theano-ValueError:尺寸不匹配;形状为(98,10),(98,1)

来自分类Dev

用于多特征CNN分类模型的Keras输入形状不匹配误差

来自分类Dev

Keras:为什么Conv2D图层的输出大小与要素图的预期形状不匹配?

来自分类Dev

与vgg16 keras的形状不匹配:预期的ndim = 4,找到的ndim = 2,接收到的形状[无,无]

Related 相关文章

  1. 1

    Keras model.predict从训练标签数组给出不同的形状

  2. 2

    Tensorflow Keras形状不匹配

  3. 3

    Keras - model.predict() 返回列表而不是 numpy 数组

  4. 4

    分类标签的 Keras model.predict 错误

  5. 5

    Keras model.predict 总是预测 1

  6. 6

    如何在Keras中的5维数组上运行model.predict()?

  7. 7

    如何在Keras中的5维数组上运行model.predict()?

  8. 8

    使用model.predict测试Keras情感分类

  9. 9

    在Keras模型中为model.predict()输入正确的问题

  10. 10

    How to run model.predict() on a 5 dimensional array in Keras?

  11. 11

    在tf.function中使用tf.keras.model.predict

  12. 12

    在Keras模型中为model.predict()输入正确的问题

  13. 13

    Keras model.predict()花费不合理的时间

  14. 14

    tf.keras.Model.fit 不训练模型

  15. 15

    Keras 数组形状错误

  16. 16

    严重的LSTM(Keras,TensorFlow)ValueError:形状不匹配:无法将对象广播为单个形状

  17. 17

    model.fit 的不同输出(加载模型后没有训练)和 keras 中的 model.predict

  18. 18

    如何使用交叉验证输出中的最佳模型使用keras model.predict()?

  19. 19

    使用TF Keras ImageDataGenerator时Model.Predict返回相同的值

  20. 20

    如何在Keras模型中将文件或图像提供给model.predict作为参数?

  21. 21

    如何使tensorflow.keras.model.predict()输出一个生成器?

  22. 22

    我在keras中使用model.predict时得到列表'索引超出范围'

  23. 23

    为什么我在keras中将列表列表作为model.predict的输出

  24. 24

    为什么model.predict与最后一层(keras)的输出不同?

  25. 25

    在 Keras 中调用 model.fit 以获取不同形状的输入?

  26. 26

    Python / Keras / Theano-ValueError:尺寸不匹配;形状为(98,10),(98,1)

  27. 27

    用于多特征CNN分类模型的Keras输入形状不匹配误差

  28. 28

    Keras:为什么Conv2D图层的输出大小与要素图的预期形状不匹配?

  29. 29

    与vgg16 keras的形状不匹配:预期的ndim = 4,找到的ndim = 2,接收到的形状[无,无]

热门标签

归档