TensorFlow打印tensor值的實現方法
最近一直在用TF做CNN的圖像分類,當softmax層得到預測結果后,我希望能夠看到預測結果,以便和標簽之間進行比較。特此補上,以便自己記憶。
我現在通過softmax層得到變量train_logits,如果我直接執(zhí)行print(train_logits)時,得到的結果如下(因為我是134類分類,所以結果是(1,134)維):

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

發(fā)現值已經能夠打印啦!但是只能輸出3個條目,這是因為參數summarize默認只打印3個參數!
將sess.run(tf.Print(train_logits,[train_logits]))修改為sess.run(tf.Print(train_logits,[train_logits],summarize=134))后(我是134類分類),得到的結果如下圖:

這樣就能成功地打印tensor的中間結果了!以后調參、查看模型效果就直觀多了!
以上這篇TensorFlow打印tensor值的實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python的Django框架中URLconf相關的一些技巧整理
這篇文章主要介紹了Python的Django框架中URLconf相關的一些技巧整理,包括視圖配置和debug的示例等,需要的朋友可以參考下2015-07-07
Python使用eel模塊創(chuàng)建GUI應用程序
在Python中,有許多庫和模塊可以用來創(chuàng)建圖形用戶界面(GUI)應用程序,其中一個流行的選擇是使用eel模塊,下面小編就來為大家詳細介紹一下如何使用eel模塊創(chuàng)建GUI應用程序吧2023-12-12
深入理解Python內置函數map filter reduce及與列表推導式對比
這篇文章主要為大家介紹了Python內置函數map filter reduce及與列表推導式對比方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06

