无法找到可以处理输入的数据适配器:<class 'numpy.ndarray'>, (<class 'list'> 包含类型 {"<class 'int'>"} 的值)

Neo*_*Neo 31 python numpy list pycharm

history = model.fit(X, y, batch_size=32, epochs=40, validation_split=0.1)
Run Code Online (Sandbox Code Playgroud)

线路问题是这样的

显示错误:

ValueError: Failed to find data adapter that can handle input: <class 'numpy.ndarray'>, (<class 'list'> containing values of types {"<class 'int'>"})
Run Code Online (Sandbox Code Playgroud)

小智 32

我面临着同样的问题。原来它是一个列表的形式。我必须将字段转换为一个 numpy 数组,如:

training_padded = np.array(training_padded)
training_labels = np.array(training_labels)
testing_padded = np.array(testing_padded)
testing_labels = np.array(testing_labels)
Run Code Online (Sandbox Code Playgroud)

就是这样!


小智 15

所以这是发生在新版本的 tensorflow 我不知道从哪里但我在 2.0.0 版本上发生了同样的事情

我假设您只是将 X 数组转换为 numpy 数组,而是尝试使用 dtype 作为 np.uint8 将 'X' 和 'y' 转换为 numpy 数组

那应该可以解决问题


小智 15

TensorFlow 中的值错误

https://pythonprogramming.net/convolutional-neural-network-deep-learning-python-tensorflow-keras/

我尝试了以下代码并为我工作:

IMG_SIZE = 50

X = np.array(X).reshape(-1, IMG_SIZE, IMG_SIZE, 1)

y = np.array(y)

history = model.fit(X, y, batch_size=32, epochs=40, validation_split=0.1)
Run Code Online (Sandbox Code Playgroud)

  • 我还必须做 y = np.array(y)。 (3认同)

小智 6

就我而言,问题仅在于 y。这是一个清单。在那种情况下,我不得不改变

y = np.array(y)