Tensorflow的工作原理


TensorFlow主要分為計算模型、數據模型和運行模型.

TensorFlow計算模型——計算圖

TensorFlow中的計算可以表示為一個有向圖(directed graph),或稱為計算圖(computation graph),其中每一個運算操作(operation)將作為一個節點(Node),節點與節點之間的連接稱為邊(edge)。這個計算圖描述了數據的計算流程,在計算圖的邊中流動(flow)的數據被稱為張量(tensor),故得名Tensorflow。

TensorFlow數據模型——張量

張量是TensorFlow管理數據的形式,從功能的角度看,張量就是一個多維數組。一個張量中主要保存了三個屬性:名字(name)、維度(shape)和類型(type)。

TensorFlow計算模型——會話

Session是用戶使用TensorFlow時的交互式接口。用戶可以通過Session的Extend方法添加新的節點和邊,用以創建計算圖,然后就可以通過Session的Run方法執行計算圖:用戶給出需要計算的節點,同時提供數據,TensorFlow就會自動尋找所有需要計算的節點並按依賴順序執行它們。對於絕大部分的用戶來說,他們只會創建一次計算圖,然后反復地執行整個計算圖或是其中的一部分子圖(sub-graph)。會話擁有並管理TensorFlow程序運行時的所有的資源。


tensorflow程序一般分為兩個階段,第一階段是定義計算圖的所有計算,第二階段是使用會話執行計算,會話擁有並管理tensorflow程序運行時的所有資源。所有計算完成后需要關閉會話來幫助系統回收資源,否則可能會出現資源泄露的問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM