2016-04-30 16 views
1

は私のMNIST分類ネットワークを訓練した後、私は、テストデータの「予測」したいとテスト入力の形状TensorFlow:形状誤差

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

とValueErrorに関する次のエラーを得た:形状の値を供給することはできません(1 、28000、784)の形状(寸法(なし)、寸法(784))

どのようにして形状が(28000,784)しかし、訓練されたネットワークに入るとき、それは(1、28000、784)として現れますか?トレーニングデータは、ラベルを記述最初の列を持っていたのでところで

は、訓練のために私は

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

経由で学習データが含まれています。私はPandasをインポートに使用しています。

答えて

1

クイック答え:あなたの入力でfeed_dict = {'x': testimages}

feed_dict = {x: [testimages]}からの変更は、あなたが辞書であるfeed_dictを可決しました。それが大丈夫かどうかは分かりません。また、内部にはxというラベルの付いた項目の形式は[testimages]です。したがってtestimages.shape = (28000, 784)の場合は、配列でラップすると(1, 28000, 784)になります。