2017-12-22 2 views
0

나는 tensorflow를 배우고있다. tensorflow 튜토리얼 MNist for expert (https://www.tensorflow.org/get_started/mnist/pros)를 완료 한 후, 나는 유추 된 모델을 사용하여 유추를 실행하려고합니다. 두 개의 [28x28] 이미지를 복사하여 [28x28x2] 배열에 저장하고 MATLAB 파일을 저장했습니다.어떻게 사용자 tensorflow 추론을위한 MNIST 모드

인상 형식 오류 ('피드의 값이 tf.Tensor 수 없습니다 :

data = sio.loadmat("data/test/testdig.mat") 
data = tf.reshape(data["testdig"], [-1, 28, 28, 1]) 

x = tf.placeholder(tf.float32, shape=[None, 28, 28, 1]); 

W_conv1 = weight_variable([5, 5, 1, 32]) 
b_conv1 = bias_variable([32]) 
h_conv1 = tf.nn.relu(conv2d(x, W_conv1) + b_conv1) 
h_pool1 = max_pool_2x2(h_conv1) 

....CNN network stuff 

y_conv = tf.matmul(h_fc1_drop, W_fc2) + b_fc2 

prediction = tf.argmax(y_conv, 1) 

saver = tf.train.Saver() 
with tf.Session() as sess: 
    saver.restore(sess, "model/mnist.ckpt") //restored the saved model 
    print(prediction.eval(feed_dict={x: data, keep_prob: 1.0})) 

그러나, 위의 코드 마지막 줄에 나에게 오류를 준 : 그럼 추론을 실행하려면 다음 코드를 사용 객체 형식 오류 :. 피드의 값은 tf.Tensor 객체가 될 수 없다 허용 사료 값이 파이썬 스칼라, 문자열,리스트, NumPy와 ndarrays, 또는 TensorHandles을 포함

왜 코드에서

답변

1

..?

data = tf.reshape(data["testdig"], [-1, 28, 28, 1]) 

이것은 데이터가 나중에 계산되는 텐서임을 의미합니다. 값을 모르기 때문에 이것을 입력으로 사용할 수 없습니다.

당신이 중 하나는 모델에서 발생 있도록 x (당신의 장소 홀더)에

을 모양 변경을 적용하거나 tensorflow이 expectes 일치하는 데이터를 재편하는 작업을 NumPy와 사용해야합니다.

관련 문제