关于Tensorflow-ValueError:无法将NumPy数组转换为Tensor(不支持的对象类型float)



执行以下tensorflow 2.8方法时(在拟合模型之后(:

model.predict(X_test)

我收到以下消息:

ValueError: Failed to convert a NumPy array to a Tensor (Unsupported object type numpy.ndarray)

在其他类似问题中报告的建议似乎都不起作用。这是我的数据:

type(X_test)
X_test.size
len(X_test)
X_test

输出:

numpy.ndarray
13
13
array([array([[[[1.72707179e-04],
[3.01862194e-04],
[1.30811683e-03],
...,
[3.52285788e-05],
[5.02625953e-05],
[6.48639834e-05]],
[[7.46249643e-05],
[4.26480168e-04],
[2.55916407e-03],
...,
[6.17124970e-05],
[5.78219624e-05],
[8.79297804e-05]],
[[2.28419929e-04],
[1.81215862e-03],
[3.15412483e-03],
etc

谢谢。

您正在将对象类型的输入样本传递给model.product((,因此出现错误。请尝试像下面的一样使用tf.cast()将x_test投射到float32

x_test = tf.cast(x_test, tf.float32)

predict((模型的输入样本可以是:

  • Numpy数组(或类似数组的数组(或数组列表(如果模型有多个输入(
  • TensorFlow张量或张量列表(在模型有多个输入的情况下(
  • tf.data数据集
  • 生成器或keras.utils.Sequence实例。关于迭代器类型(数据集、生成器、序列(的解包行为的更详细描述,请参见Model.fit的类似迭代器的输入的解包操作部分

相关内容

最新更新