1. 程式人生 > >資料流圖筆記

資料流圖筆記

1.資料流圖

資料流圖由兩個基本構件(節點和邊)組成。

(1)節點(node)

在資料流圖的語境中,節點通常以圓圈、橢圓和方框表示,代表了對資料所做的運算或某種操作。

(2)邊(edge) 對應於向Operation傳入和從Operation傳出的實際數值,通常以箭頭表示。

注:在資料流圖中的每一個節點都被稱為一個Operation(簡記為Op)。
    各Op接收0個或多個Tensor物件作為輸入,並輸出0個或多個Tensor物件。

2.節點的依賴關係

對於任意節點A,如果其輸出對於某個後繼節點B的計算是必需的,則稱節點A是節點B的依賴節點。 如果兩個節點A和B彼此不需要對方的任何資訊,則稱兩者是獨立的。

依賴關係分為直接依賴、間接依賴。

3.在tensorflow中定義資料流圖

示例:

import tensorflow as tf

a = tf.constant(5, name="input_a")
b = tf.constant(3, name="input_b")

c = tf.multiply(a,b, name="mul_c") #乘法
d = tf.add(a,b, name="add_d")      #加法

e = tf.add(c,d, name="add_e")      #加法

sess = tf.Session()
sess.run(e)

writer =
tf.summary.FileWriter('./my_graph',sess.graph) #繪製資料流圖 #第一個引數是一個字串輸出目錄,即資料流圖的描述在磁碟中的存放路徑。注:"./"表示當前路徑 #第二個引數是Session物件的graph屬性 writer.close() sess.close()