python - 在tensorflow的输入中放入什么才能起作用

标签 python tensorflow machine-learning artificial-intelligence

您好,我正在尝试一个非常简单的项目来了解 TensorFlow 中的工作原理。我只给出了 3 个简单的数组,但它没有找到给我一个错误之间的关系。为什么会这样以及如何克服它?这是我的代码

import tensorflow as tf
from tensorflow import keras

x = [[1,2,5,6],[12,5,1,7],[1,5,7,9]]
y = [[1],[4],[3]]

model = keras.Sequential()
model.add(keras.layers.Dense(4, activation=tf.nn.relu))
model.add(keras.layers.Dense(1, activation=tf.nn.softmax))

model.compile(optimizer='adam', 
          loss='binary_crossentropy',
          metrics=['accuracy'])
model.fit(x,y,epochs=20,batch_size=4)

错误: ValueError:请提供单个数组或数组列表作为模型输入。您通过了: x=[[1, 2, 5, 6], [12, 5, 1, 7], [1, 5, 7, 9]]

最佳答案

在 Python 中,我们没有原生数组。您使用 xy 制作的内容是 lists 。更准确地说,是列表的列表。

正如错误消息所示,Tensorflow 期望 numpy arrays或数组列表作为输入。

在代码顶部添加 import numpy 并将 xy 转换为 numpy 数组,然后再将它们用于模型。

x = [[1,2,5,6],[12,5,1,7],[1,5,7,9]]
y = [[1],[4],[3]]

x = numpy.array(x)
y = numpy.array(y)

关于python - 在tensorflow的输入中放入什么才能起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54916951/

相关文章:

python - 当不需要分配结果时如何调用Python函数

python - pyserial 枚举端口

tensorflow - 使用具有比 Ram 更多数据的 Tensorflow 数据集和估计器

python - tensorflow 在小数据上运行需要很长时间

python - 在 TensorflowJS 中构建神经网络

python - buildout - 使用不同的 python 版本

python - Pandas fillna() 不适用于 DataFrame 切片

machine-learning - 对于神经网络来说,拥有正态分布的数据重要吗?

machine-learning - 嵌入层和密集层有什么区别?

python - Sci-Kit learn 的 .fit(X,y) 方法是否按顺序工作,如果不是,它是如何工作的?