
資料內(nèi)容:
基本使用
使用 TensorFlow, 你必須明白 TensorFlow
•使用圖 (graph) 來表示計算任務(wù).
•在被稱之為會話 (Session)的上下文 (context) 中執(zhí)行圖.
•使用 tensor 表示數(shù)據(jù).
•通過變量 (Variable)維護(hù)狀態(tài).
•使用 feed 和 fetch 可以為任意的操作(arbitrary operation) 賦值或者從其中獲取數(shù)據(jù).
綜述
TensorFlow 是一個編程系統(tǒng), 使用圖來表示計算任務(wù). 圖中的節(jié)點被稱之為 op (operation 的縮寫). 一個 op獲得 0 個或多個 Tensor, 執(zhí)行計算, 產(chǎn)生 0 個或多個 Tensor. 每個 Tensor 是一個類型化的多維數(shù)組. 例如, 你可以將一小組圖像集表示為一個四維浮點數(shù)數(shù)組, 這四個維度分別是 [batch, height, width, channels].
一個 TensorFlow 圖描述了計算的過程. 為了進(jìn)行計算, 圖必須在會話里被啟動.會話將圖的 op 分發(fā)到諸如 CPU 或 GPU 之類的設(shè)備上, 同時提供執(zhí)行 op 的方法. 這些方法執(zhí)行后, 將產(chǎn)生的 tensor 返回. 在 Python 語言中, 返回的 tensor 是numpy ndarray對象; 在 C 和 C++ 語言中, 返回的 tensor 是 tensorflow::Tensor實例.
計算圖
TensorFlow 程序通常被組織成一個構(gòu)建階段和一個執(zhí)行階段. 在構(gòu)建階段, op 的執(zhí)行步驟 被描述成一個圖. 在執(zhí)行階段, 使用會話執(zhí)行執(zhí)行圖中的 op.
例如, 通常在構(gòu)建階段創(chuàng)建一個圖來表示和訓(xùn)練神經(jīng)網(wǎng)絡(luò), 然后在執(zhí)行階段反復(fù)執(zhí)行圖中的訓(xùn)練 op.
TensorFlow 支持 C, C++, Python 編程語言. 目前, TensorFlow 的 Python 庫更加易用, 它提供了大量的輔助函數(shù)來簡化構(gòu)建圖的工作, 這些函數(shù)尚未被 C 和 C++ 庫支持.
三種語言的會話庫 (session libraries) 是一致的