淺談tf.train.Saver()與tf.train.import_meta_graph的要點
(一)、tf.train.Saver()
(1). tf.train.Saver() 是用來保存tensorflow訓(xùn)練模型的,默認保存全部參數(shù)
(2). 用來加載參數(shù),注:只加載存儲在data中的權(quán)重和偏置項等需要訓(xùn)練的參數(shù),其他一律不加載,包括meta文件中的圖也不加載

(二)、tf.train.import_meta_graph
(1). 用來加載meta文件中的圖,以及圖上定義的結(jié)點參數(shù)包括權(quán)重偏置項等需要訓(xùn)練的參數(shù),也包括訓(xùn)練過程生成的中間參數(shù),所有參數(shù)都是通過graph調(diào)用接口get_tensor_by_name(name="訓(xùn)練時的參數(shù)名稱")來獲取

(三)、總結(jié)
(1). 保存使用tf.train.Saver()
(2). 加載可以使用tf.train.import_meta_graph(".meta文件"),直接通過訓(xùn)練參數(shù)名稱就可以獲取需要的參數(shù),但需要提前知道訓(xùn)練時的參數(shù)名稱才能獲取,要懂得tensorflow命名規(guī)則
(3). tf.train.Saver("./checkpoints目錄/")加載的缺點是只加載了訓(xùn)練參數(shù),并且必須定義與之相同(shape,dtype要相同,tf.type要相同,如:我是placeholder,你也是tf.placeholder)方能使用,當(dāng)你要獲取訓(xùn)練中間參數(shù)時,需要和訓(xùn)練過程一樣搭建相同的網(wǎng)絡(luò).
補充:tf.train.import_meta_graph報KeyError
我在模型恢復(fù)時,在執(zhí)行tf.train.import_meta_graph的時候報錯

后來發(fā)現(xiàn),我的模型是在服務(wù)器上訓(xùn)練的,服務(wù)器上tensorflow版本是1.11.0,而我在本地電腦上執(zhí)行的 tf.train.import_meta_graph,我本地的tensorflow是1.5.0,我將tensorflow更新到1.11.0后,就解決了。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
PyCharm-錯誤-找不到指定文件python.exe的解決方法
今天小編就為大家分享一篇PyCharm-錯誤-找不到指定文件python.exe的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
python人工智能tensorflow函數(shù)tf.layers.dense使用方法
這篇文章主要介紹了python人工智能tensorflow函數(shù)tf.layers.dense的使用方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05
python人工智能tensorflow函數(shù)tf.get_variable使用方法
這篇文章主要為大家介紹了python人工智能tensorflow函數(shù)tf.get_variable使用方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05

