Tensorflow会话
Tensorflow中的會話是來執行定義好的運算的。會話擁有并管理Tensorflow程序運行時的所有資源。當計算完成之后需要關閉會話來幫助系統回收資源,否則可能出現資源泄露的問題。
Tensorflow中使用會話的模式一般有兩種,第一種模式需要明確調用會話生成函數和關閉會話函數,流程如下:
使用這種模式時,所有計算完成后,需要明確調用Session.close()函數關閉會話并釋放資源。然而當程序因為異常而退出時,關閉會話的函數可能就不會被執行而導致資源泄露。為了解決異常退出導致資源泄露的問題,Tensorflow可以通過Python的上下文管理器來使用會話。
通過Python的上下文管理器的機制,只要所有的計算放在with的內部就可以。當上下文管理器退出時會自動釋放所有資源。
Tensorflow會自動生成一個默認的圖,如果沒有特殊指定,運算會自動加入這個計算圖。Tensorflow的會話也有這個機制,但Tensoflow不會自動生成默認的會話,而是需要手動指定。當默認的會話被指定之后可以通過tf.Tensor.eval函數來計算一個張量的取值。
在交互式環境下,通過設置默認會話的方式來獲取張量的取值更加方便。所以Tensoflow提供了一種在交互式環境下直接構建默認會話的函數。那就是tf.InteractiveSession()函數,使用這個函數會自動將生成的會話注冊成為默認會話
總結
以上是生活随笔為你收集整理的Tensorflow会话的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TFRecord tf.train.F
- 下一篇: 智能文档理解:通用文档预训练模型