2017-08-10 58 views
0

我正在使用tf.train.get_checkpoint_state檢查是否有有效的檢查點文件來恢復Tensorflow保存的模型。tf.train.get_checkpoint_state always None

ckpt = tf.train.get_checkpoint_state(os.path.dirname('fi/saves')) 
if ckpt and ckpt.model_checkpoint_path: 
    saver.restore(sess, ckpt.model_checkpoint_path) 

我的問題是ckpt總是無。下面是我的內容節省目錄:

  • internals.pkl
  • stats.json
  • variables.ckpt.data 00000-的-00001
  • variables.ckpt.index

請注意,直接恢復的呼叫工作良好。

編輯:

我已經使用latest_filename說法是這樣的嘗試:

tf.train.get_checkpoint_state(os.path.dirname(checkpoint_dir), latest_filename='variables.ckpt.index') 

我仍然得到無。

+0

您是否嘗試過將'latest_filename'設置爲您的文件的名稱? – Grasshopper

+0

@Grasshopper是的,我做到了。我編輯了我的答案。 – ryuzakinho

回答

1

我想通過tf.train.get_checkpoint_state查找檢查點文件。

保存時,我沒有這個文件,因爲我這樣做:

saver.save(sess, variables_file_path, write_meta_graph=False, write_state=False) 

相反的:

saver.save(sess, variables_file_path, write_meta_graph=False, write_state=True) # write state is true by default. 

這就是現在的作品!