TensorFlow 中的 ValueError

Posted

技术标签:

【中文标题】TensorFlow 中的 ValueError【英文标题】:ValueError in TensorFlow 【发布时间】:2020-02-29 03:59:44 【问题描述】:

所以我在运行这行代码时遇到了一些TensorFlow的问题:

history = model.fit(X, y, batch_size=32, epochs=40, validation_split=0.1)

Traceback如下:

Traceback (most recent call last):
  File "cnnmodel.py", line 71, in <module>
    history = model.fit(X, y, batch_size=32, epochs=40, validation_split=0.1)
  File "C:\Users\couch\PyMOL\envs\test\lib\site-packages\tensorflow_core\python\keras\engine\training.py", line 728, in fit
    use_multiprocessing=use_multiprocessing)
  File "C:\Users\couch\PyMOL\envs\test\lib\site-packages\tensorflow_core\python\keras\engine\training_v2.py", line 224, in fit
    distribution_strategy=strategy)
  File "C:\Uslow_core\python\keras\engine\training_v2.py", line 497, in _process_training_inputs
    adapter_cls = data_adapter.select_data_adapter(x, y)
  File "C:\Users\couch\PyMOL\envs\test\lib\site-packages\tensorflow_core\python\keras\engine\data_adapter.py", line 653, in select_data_adapter
    _type_name(x), _type_name(y)))
ValueError: Failed to find data adapter that can handle input: <class 'numpy.ndarray'>, (<class 'list'> containing values of types "<class 'int'>")

X 数据是像素值的 numpy 数组,Y 数据是标签列表。

X 和 Y 数据使用 pickle 和...重新格式化...

import pickle
import numpy

X = pickle.load(open("X.pickle", "rb"))
y = pickle.load(open("y.pickle", "rb"))

print(X[0][0:64])
print(y[0:10])

产量:

[[[2]
  [2]
  [2]
  ...
  [1] 
  [1]
  [1]]

 [[2]
  [2]
  [2]
  ...
  [1]
  [1]
  [1]]

 [[2]
  [2]
  [2]
  ...
  [1]
  [1]
  [1]]

 ...

 [[0]
  [0]
  [0]
  ...
  [0]
  [0]
  [0]]

 [[0]
  [0]
  [0]
  ...
  [0]
  [0]
  [0]]

 [[0]
  [0]
  [0]
  ...
  [0]
  [0]
  [0]]]
[3, 3, 0, 0, 3, 4, 3, 1, 4, 4]

关于如何解决问题的任何想法?

【问题讨论】:

请发布您的Xy 数据样本。 我解决了。原来输入数据需要是相同的类型。在酸洗之前,我只是通过 y = numpy.array(y) 传递了 y 数据。它现在可以工作了,我正在训练我的第一个模型。 干得好;所以,现在请将其发布为您自己问题的答案,以便将来对其他人有用,或者完全删除该问题 【参考方案1】:

我解决了。原来输入数据需要是相同的类型。在酸洗之前,我只是将 y 数据通过:y = numpy.array(y)。现在它可以工作了,我正在训练我的第一个模型。

【讨论】:

干得好。当强制性的 2 天期限过去后,您应该接受您自己的答案(这没有错:***.com/help/self-answer)

以上是关于TensorFlow 中的 ValueError的主要内容,如果未能解决你的问题,请参考以下文章

TensorFlow 中的 Heaviside(单元步骤)激活

Keras 中的 tensorflow 会话在哪里

tensorflow官方文档中的sub 和mul中的函数已经在API中改名了

TensorFlow 中的计划采样

使用TensorFlow识别照片中的物体

TensorFlow 和 Keras 中的符号张量是啥?