TensorFlow入門教程
阿新 • • 發佈:2020-08-06
1. TensorFlow核心理解
TensorFlow本質上是一張計算圖,資料在圖上計算和流動。
寫TensorFlow程式,需要:
- 構建一張計算圖;
- 執行會話,執行圖中的運算。
2. TensorFlow的幾個概念
- 圖(Graph):用來表示計算任務,也就我們要做的一些操作。
- 會話(Session):建立會話,執行圖中的計算,得到結果。如果把每個圖看做一個車床,那會話就是一個車間,裡面有若干個車床,用來把資料生產成結果。
- 張量(Tensor):用來表示資料,是我們的原料。
- 變數(Variable):用來記錄一些資料和狀態,是我們的容器。
- feed和fetch:可以為任意的操作(arbitrary operation) 賦值或者從其中獲取資料。相當於一些鏟子,可以操作資料。
形象的比喻是:把會話看做車間,圖看做車床,裡面用Tensor做原料,變數做容器,feed和fetch做鏟子,把資料加工成我們的結果。
3. 建立一個常量並檢視其內容
1 import tensorflow as tf 2 a = tf.constant([1, 2, 3], dtype=tf.float32) 3 with tf.Session() as sess: # 為檢視結果必須建立一個session 4 print(sess.run(a))
執行結果:
[1. 2. 3.]
4. 矩陣乘法示例
1 import tensorflow as tf 2 m1 = tf.constant([[2, 3]]) #建立一個常量m1 3 m2 = tf.constant([[2], [4]]) # 建立一個常量m2 4 product = tf.matmul(m1, m2) # 建立一個矩陣乘法,要注意的是,建立了乘法後,不會立即執行,要在會話中才執行 5 print(product) # 這個時候列印,得到的不是乘法之後的結果,而是乘法本身 6 # 列印結果是:Tensor("MatMul_1:0", shape=(1, 1), dtype=int32) 7 8 sess = tf.Session() # 定義一個會話9 result = sess.run(product) # 運算乘法 10 print(result) # 列印結果:[[16]]
(圖片摘自五分鐘帶你入門TensorFlow)
5. 給Variable賦值
這個教程介紹了TensorFlow的一些基本概念,並有一個簡單的神經網路的程式碼示例。
有很多程式碼例項。
有關於tf.tensor的詳細介紹。