2016-08-14 228 views
2

Tensorflow允許我們使用tf.train.write_graph方法保存/加載模型的結構,以便我們可以在將來恢復它以繼續我們的培訓課程。但是,我想知道如果這是必要的,因爲我可以創建一個模塊,例如GraphDefinition.py,並使用此模塊重新創建模型。 那麼,哪種方法可以更好地保存模型結構,或者有什麼經驗法則可以說明保存模型時應該使用哪種方式?在tensorflow中保存模型

+0

你能提供一些代碼示例嗎?或進一步的信息?我不明白爲什麼創建模塊很重要,爲了節省TensorFlow模型的權重。我總是可以保存整個圖表(看大小有一些開銷,我猜)或者指定應該保存哪些權重。但是,儘管使用過的內存沒有太大的區別。 – daniel451

回答

3

首先,你必須明白,張量流圖沒有當前的權重(直到你手動保存它們),並且如果你從graph.pb載入模型結構,你將開始從一開始訓練。但是,如果你想繼續訓練或使用你的訓練模型,你必須保存檢查點(使用tf Saver)和變量的值,而不僅僅是結構。 看看這個胎面:Tensorflow: How to restore a previously saved model (python)

+0

是的。我知道我必須使用tf.Saver來保存重量。我無法得到的是,是否需要將模型結構保存到graph.pb並從該文件重新加載圖形,還是應該自己重新創建圖形? – user3425082

+0

對於圖和檢查點中的重要操作和變量,您應該具有相同的名稱(不是python \ C++名稱,但是tf,即:a = tf.Variable(value,name ='define-tf-name-here')) 文件正確加載值,但如何得到這個 - 完全取決於你。保存和恢復圖形定義文件或使用代碼重新創建它們都可以。 –

相關問題