6
나는 tensorflow CNN을 작성했으며 이미 훈련을 마쳤습니다.Tensorflow ValueError : 저장할 변수가 없습니다.
이ValueError: No variables to save
내 평가 코드를 여기에서 찾을 수 있습니다 :
import tensorflow as tf
import main
import Process
import Input
eval_dir = "/Users/Zanhuang/Desktop/NNP/model.ckpt-30"
checkpoint_dir = "/Users/Zanhuang/Desktop/NNP/checkpoint"
init_op = tf.initialize_all_variables()
saver = tf.train.Saver()
def evaluate():
with tf.Graph().as_default() as g:
sess.run(init_op)
ckpt = tf.train.get_checkpoint_state(checkpoint_dir)
saver.restore(sess, eval_dir)
images, labels = Process.eval_inputs(eval_data = eval_data)
forward_propgation_results = Process.forward_propagation(images)
top_k_op = tf.nn.in_top_k(forward_propgation_results, labels, 1)
print(top_k_op)
def main(argv=None):
evaluate()
if __name__ == '__main__':
tf.app.run()
가 대단히 감사합니다 :
결과 기능은 무엇인가있을 것입니다. 지금은 프로그램을 실행할 때, 파이썬 아무것도 출력하지 않습니다. –
'eval_data'의 출처가 확실하지 않습니다. 왜냐하면 그 이름은 당신의 예제에 묶여 있지 않기 때문입니다. 'Process.eval_inputs()'는 입력 파이프 라인을 사용합니까? 아마도'saver.restore()'를 실행 한 후에'tf.train.start_queue_runners (sess = sess)를 추가해야 할 것이다. – mrry
감사합니다. 코드가 수정되었지만 해당 행을 추가 한 후 새로운 오류가 발생했습니다. E tensorflow/core/client/tensor_c_api.cc : 485] targets [0]이 범위를 벗어났습니다. –