TensorFlow打印tensor值的實(shí)現(xiàn)方法
最近一直在用TF做CNN的圖像分類,當(dāng)softmax層得到預(yù)測(cè)結(jié)果后,我希望能夠看到預(yù)測(cè)結(jié)果,以便和標(biāo)簽之間進(jìn)行比較。特此補(bǔ)上,以便自己記憶。
我現(xiàn)在通過softmax層得到變量train_logits,如果我直接執(zhí)行print(train_logits)時(shí),得到的結(jié)果如下(因?yàn)槲沂?34類分類,所以結(jié)果是(1,134)維):

這貌似什么都看不出來。
其實(shí)tensorflow提供輸出中間值方法方便debug。
這個(gè)函數(shù)就是[tf.Print]。
tf.Print( input_, data, message=None, first_n=None, summarize=None, name=None )
參數(shù):
input_: 通過此op的一個(gè)tensor.
data: 當(dāng)此op被計(jì)算之后打印輸出的tensor list。
message: 錯(cuò)誤消息的前綴,是一個(gè)string。
first_n: 只記錄first_n次. 總是記錄負(fù)數(shù);這是個(gè)缺省.
summarize: 對(duì)每個(gè)tensor只打印的條目數(shù)量。如果是None,對(duì)于每個(gè)輸入tensor只打印3個(gè)元素。
name: op的名字.
返回值:
和input_相同的tensor.
將print(train_logits)修改為sess.run(tf.Print(train_logits,[train_logits]))后,得到的結(jié)果如下圖:

發(fā)現(xiàn)值已經(jīng)能夠打印啦!但是只能輸出3個(gè)條目,這是因?yàn)閰?shù)summarize默認(rèn)只打印3個(gè)參數(shù)!
將sess.run(tf.Print(train_logits,[train_logits]))修改為sess.run(tf.Print(train_logits,[train_logits],summarize=134))后(我是134類分類),得到的結(jié)果如下圖:

這樣就能成功地打印tensor的中間結(jié)果了!以后調(diào)參、查看模型效果就直觀多了!
以上這篇TensorFlow打印tensor值的實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python調(diào)用DeepSeek?API實(shí)現(xiàn)對(duì)本地?cái)?shù)據(jù)庫的AI管理
這篇文章主要為大家詳細(xì)介紹了Python如何基于DeepSeek模型實(shí)現(xiàn)對(duì)本地?cái)?shù)據(jù)庫的AI管理,文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-02-02
Python爬蟲+Tkinter制作一個(gè)翻譯軟件的示例
這篇文章主要介紹了Python爬蟲+Tkinter制作一個(gè)翻譯軟件的示例,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-02-02
apache部署python程序出現(xiàn)503錯(cuò)誤的解決方法
這篇文章主要給大家介紹了關(guān)于在apahce部署python程序出現(xiàn)503錯(cuò)誤的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)同樣遇到這個(gè)問題的朋友們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-07-07
用python實(shí)現(xiàn)爬取奧特曼圖片實(shí)例
大家好,本篇文章主要講的是用python實(shí)現(xiàn)爬取奧特曼圖片實(shí)例,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下2022-02-02
Python的Django框架中if標(biāo)簽的相關(guān)使用
這篇文章主要介紹了Python的Django框架中if標(biāo)簽的相關(guān)使用,是Django框架使用中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-07-07

