1. 程式人生 > >tensorflow儲存和載入訓練好的模型

tensorflow儲存和載入訓練好的模型

儲存模型

saver = tf.train.Saver()建立一個saver物件

saver.save(sess,'path')將模型儲存在指定的path路徑中

該路徑中生成的檔案有四個,
    checkpoint檔案儲存了一個錄下多有的模型檔案列表,
    model.ckpt.meta儲存了TensorFlow計算圖的結構資訊,
    model.ckpt.data儲存每個變數的取值,此處檔名的寫入方式會因不同引數的設定而不同,但載入restore時的檔案路徑名是以checkpoint檔案中的“model_checkpoint_path”值決定的。

tf.train.Saver類也支援在儲存和載入時給變數重新命名,宣告Saver類物件的時候使用一個字典dict重新命名變數即可,{"已儲存的變數的名稱name": 重新命名變數名},saver = tf.train.Saver({"v1":u1, "v2": u2})即原來名稱name為v1的變數現在載入到變數u1)中。

 

載入模型

saver.restore(sess,‘path’)

若不希望重複定義計算圖上的運算,可直接載入已經持久化的圖,saver =tf.train.import_meta_graph("Model/model.ckpt.meta")