1

在训练了我的 MNIST 分类网络之后,我想对测试数据进行“预测”,并得到以下关于测试输入形状的错误

testimages = np.array(test)
print(testimages.shape)
> (28000, 784)
feed_dict = {x: [testimages]}
classification = sess.run(y, feed_dict)

ValueError:无法为具有形状(维度(无),维度(784))的张量u'Placeholder_2:0'提供形状(1、28000、784)的值

那么形状怎么可能是 (28000, 784)(它应该是),但是当输入到训练好的网络时,它会显示为 (1, 28000, 784)?

顺便说一句,为了训练,我通过以下方式包含了训练数据

trainlabels = np.array(train["label"])
trainimages = np.array(train.iloc[:, 1:])

因为训练数据的第一列说明了标签。我正在使用 Pandas 进行导入。

4

1 回答 1

1

快速回答:从更改feed_dict = {x: [testimages]}feed_dict = {'x': testimages}

在您的输入中,您传递feed_dict的是字典。不确定是否可以。此外,您标记的内部条目x的格式为[testimages]. 因此testimages.shape = (28000, 784),如果用数组包裹它就可以了(1, 28000, 784)

于 2016-04-30T18:08:13.350 回答