Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow 将标签作为带有形状(m,1)或形状(m,)的numpy数组提供给模型_Tensorflow_Neural Network - Fatal编程技术网

Tensorflow 将标签作为带有形状(m,1)或形状(m,)的numpy数组提供给模型

Tensorflow 将标签作为带有形状(m,1)或形状(m,)的numpy数组提供给模型,tensorflow,neural-network,Tensorflow,Neural Network,简单地说,我试图测试一个没有隐藏层的简单密集神经网络。我的数据的前50列是特征,最后一列是标签 X = data[:, :50] y = data[:, -1] input = keras.Input(shape=(50,)) output = keras.layers.Dense(1)(input) model = keras.Model(inputs=input, outputs=output) model.compile(loss='mse') model.fit(X, y, epochs

简单地说,我试图测试一个没有隐藏层的简单密集神经网络。我的数据的前50列是特征,最后一列是标签

X = data[:, :50]
y = data[:, -1]
input = keras.Input(shape=(50,))
output = keras.layers.Dense(1)(input)
model = keras.Model(inputs=input, outputs=output)
model.compile(loss='mse')
model.fit(X, y, epochs=20)
数据[:,-1]
数据[:,50:::]
作为标签提供给模型之间有区别吗?为什么?(结果似乎是一样的)


数据[:,-1]返回每行最后一列的值

但data[:,50:]将返回从第50列开始的所有列的值。因为在您的示例中只有50列,所以它与数据[:,-1]相同,但第二维度中的1表示只拾取了1列


假设数据的大小为(1000,60),那么数据[:,-1]仍将返回形状数组(1000,),但数据[:,50:]将返回形状数组(1000,10)

能否将
X.shape
y.shape
的值添加到您的描述中。我已将它们添加到描述中。请尝试将标签转换为numpy数组,然后再输入网络
label=label.to_numpy()
Docs没有任何错误。问题是:为什么这些会产生相同的结果。现在我认为,在优化的每个步骤中,(m,1)或(m,)形状的预测值将与(m,1)或(m,)形状的实际值进行比较。因此没有任何差异。这是一个愚蠢的问题。
>>> data[:, 50:].shape
result: (1000, 1)

>>> data[:, -1].shape
result: (1000,)

>>> data[:, :50].shape
result: (1000, 50)