我對tensorflow完全陌生,我正在使用他們的seq2seq翻譯示例。我查看了translate.py中的代碼,並且在一個無限循環中完成了訓練,它可以不時檢查文件translate.ckpt中的檢查點。如何從上次保存的狀態開始重新訓練Tensorflow seq2seq模型?
因此,如果我停止訓練並希望在最後保存的狀態後重新啓動它,我該怎麼做?
感謝
我對tensorflow完全陌生,我正在使用他們的seq2seq翻譯示例。我查看了translate.py中的代碼,並且在一個無限循環中完成了訓練,它可以不時檢查文件translate.ckpt中的檢查點。如何從上次保存的狀態開始重新訓練Tensorflow seq2seq模型?
因此,如果我停止訓練並希望在最後保存的狀態後重新啓動它,我該怎麼做?
感謝
而是在一個會話發起的變量,你需要從文件恢復變量:
saver = tf.train.Saver()
with tf.Session() as sess:
# Restore variables from disk.
saver.restore(sess, "/tmp/model.ckpt")
print("Model restored.")
# Do some work with the model
注意到你的模型只是一個變量的值。爲了恢復它們,你需要一個具有相同變量名稱的圖表。可能需要執行的操作才能計算結果。
瞭解更多關於在這裏:
https://www.tensorflow.org/versions/r0.11/how_tos/variables/index.html#restoring-variables
我想通了所以認爲我應該回答。 seq2seq示例默認執行此操作。如果您停止訓練循環並重新啓動它,它會查找保存的檢查點,並從上次停止的地方重新開始訓練。