深度學習之TensorFlow

一、定義

TensorFlow :是一個採用數據流圖(data flow graphs),用於數值計算的開源軟件庫。

節點:一般用來表示施加的數學操作,但也可以表示數據輸入(feed in)的起點/輸出(push out)的終點,或者是讀

取/寫入持久變量(persistent variable)的終點。

:表示"節點"之間的輸入/輸出關係。這些數據“線”可以輸運“size可動態調整”的多維數據數組,即“張量”(tensor)。

二、工作過程

TensorFlow整個算法包含三個部分,分別是計算圖張量模型會話

2.1、計算圖

計算圖是TensorFlow整個框架,按照計算圖啓動一個會話,通過會話中完成變量賦值、計算等操作,得到結果。整個計

算圖分爲兩個部分。

(1)構造部分:主要工作是創建源節點和源節點輸出傳遞給其他節點做運算

(2)執行部分:通過session執行圖中的計算

2.2、張量

在TensorFlow中,張量是對運算結果的引用,運算結果多以數組的形式存儲,與numpy中數組不同的是張量還包含三個

重要屬性名字、維度、類型。張量的名字,是張量的唯一標識符,通過名字可以發現張量是如何計算出來的。比如"add:0"代表

的是計算節點"add"的第一個輸出結果。維度和類型與數組類似。

2.3、模型會話

用來執行構造好的計算圖,同時會話擁有和管理程序運行時的所有資源。當計算完成之後,需要通過關閉會話來幫助系統回

收資源。

在TensorFlow中使用會話有兩種方式,第一種需要明確調用會話生成函數和關閉會話函數:

# 創建session session = tensorflow.Session() #獲取運算結果 session.run() #關閉會話,釋放資源 session.close()

第二種可以使用with的方式:

with tf.Session() as session: session.run()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章