Tensorflow術語表

廣播操作(Broadcasting operation)

一種用numpy-style broadcasting來保證tensor參數的形態兼容的操作。

Devices

一塊可以用來運算並且擁有自己的地址空間的硬件,比如GPU和CPU。

eval

Tensor 的一個方法,返回 Tensor 的值。觸發任意一個圖計算都需要計算出這個值。只能在一個已經啓動的會話
的圖中才能調用該 Tensor 值。

Feed

TensorFlow 的一個概念:把一個 Tensor 直接連接到一個會話圖表中的任意節點。feed 不是在構建圖(graph)的
時候創建,而是在觸發圖的執行操作時去申請。一個 feed 臨時替代一個帶有 Tensor 值的節點。把feed數據作
爲run( )方法和eval( )方法的參數來初始化運算。方法運行結束後,替換的 feed 就會消失,而最初的節點定義
仍然還在。可以通過tf.placeholder( )把特定的節點指定爲 feed 節點來創建它們。詳見[Basic Usagehref).

Fetch

TensorFlow中的一個概念:爲了取回運算操作的輸出結果。取回的申請發生在觸發執行圖操作的時候,而不是發
生在建立圖的時候。如果要取回一個或多個節點(node)的 Tensor 值,可以通過在 Session 對象上調用run(
)方法並將待取回節點(node)的列表作爲參數來執行圖表(graph)。詳見[Basic Usagehref)。

Graph(圖)

把運算任務描述成一個直接的無環圖形(DAG),圖表中的節點(node)代表必須要實現的一些操作。圖中的邊代
表數據或者可控的依賴。GratheDef 是系統中描述一個圖表的協議(api),它由一個 NodeDefs 集合組成。一個Gr
aphDef可以轉化成一個更容易操作的圖表對象。

IndexedSlices(索引化切片)

在 Python API 中,TensorFlow 僅僅在第一維上對 Tensor 有所體現。如果一個 Tensor 有k維,那麼一個 Inde
xedSlices 實例在邏輯上代表一個沿着這個 Tensor 第一維的(k-1)維切片的集合。切片的索引被連續儲存在一個
單獨的一維向量中,而對應的切片則被拼接成一個單獨的k維 Tensor。如果 sparsity 不是受限於第一維空
間,請用 SparseTensor。

Node(節點)

圖中的一個元素。 把啓動一個特定操作的方式稱爲特定運算圖表的一個節點,包括任何用來配置這個操作的屬性
的值。對於那些多形態的操作,這些屬性包括能完全決定這個節點(Node)簽名的充分信息。詳見graph.proto。

操作(Op/operation)

在 TensorFlow 的運行時中,它是一種類似 add 或 matmul 或 concat的運算。可以用[how to add an ophre
f
)中的方法來向運行時添加新的操作。

在 Python 的API中,它是圖中的一個節點。在[tf.Operationhref)類中列舉出了這些操作。一個操作(Operatio
n)的 type 屬性決定這個節點(node)的操作類型,比如add和matmul。
Run
在一個運行的圖中執行某種操作的行爲。要求圖必須運行在會話中。
在 Python 的 API 中,它是 Session 類的一個方法[tf.Session.runhref)。可以通過 Tensors 來訂閱或獲取run(
)操作。

在C++的API中,它是[tensorflow::Sessionhre)類 的一個方法。

Session(會話)

啓動圖的第一步是創建一個 Session 對象。Session 提供在圖中執行操作的一些方法。
在 Python API中,使用[tf.Sessionhref)。
在 C++ 的API中,[tensorflow::Sessionhref)是用來創建一個圖並運行操作的類:

Shape

Tensor 的維度和它們的大小。
在一個已經啓動的圖中,它表示流動在節點(node)之間的 Tensor 的屬性。一些操作對 shape 有比較強的要
求,如果沒有 Shape 屬性則會報告錯誤。
在 Python API中,用創建圖的 API 來說明 Tensor 的 Shape 屬性。Tensor 的Shape 屬性要麼只有部分已
知,要麼全部未知。詳見[tf.TensroShapehref)
在C++中,Shape 類用來表示 Tensor 的維度。[tensorflow::TensorShapehref)。

SparseTensor

在 Python API 中,它用來表示在 TensorFlow 中稀疏散落在任意地方的 Tensor 。SparseTensor 以字典-值格
式來儲存那些沿着索引的非空值。換言之,m個非空值,就包含一個長度爲m的值向量和一個由m列索引(indice
s)組成的矩陣。爲了提升效率,SparseTensor 需要將 indice(索引)按維度的增加來按序存儲,比如行主
序。如果稀疏值僅沿着第一維度,就用 IndexedSlices。

Tensor

Tensor是一種特定的多維數組。比如,一個浮點型的四維數組表示一小批由[batch,height,width,channel]組
成的圖片。

在一個運行的圖(graph)中,它是一種流動在節點(node)之間的數據。 在 Python 中,Tensor 類表示添加到圖
的操作中的輸入和輸出,見[tf.Tensorhref),這樣的類不持有數據。
在C++中,Tensor是方法[Session::Run( ))的返回值,見tensorflow::Tensor,這樣的 Tensor 持有數據。
原文:[Glossaryhref)

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