Tensor

公用介面 Tensor

Tensorflow Lite 中使用的型別多維陣列。

Tensor 的原生控制代碼是由 NativeInterpreterWrapper 管理, 不需要由用戶端關閉不過,一旦 NativeInterpreterWrapper 含有 已關閉,Tensor 控點將會失效。

巢狀類別

類別 Tensor.QuantizationParams 與資料表 QuantizationParameters 相對應的量化參數, TFLite 模型結構定義檔案。

公用方法

抽象 ByteBuffer
asReadOnlyBuffer()
傳回張量資料的唯讀 ByteBuffer 檢視畫面。
抽象 DataType
dataType()
傳回儲存在 Tensor 中的元素 DataType
抽象 攔截
numBytes()
傳回張量資料的大小 (以位元組為單位)。
抽象 攔截
numDimensions()
傳回 Tensor 的維度數量 (有時稱為「排名」)。
抽象 攔截
numElements()
傳回張量以 1-D 分割 (1-D) 檢視畫面的元素數量。
抽象 Tensor.QuantizationParams
quantizationParams()
傳回自身解譯器內張量的量化參數。
抽象 整數 []
shape()
傳回的形狀形狀 也就是 Tensor,也就是每個尺寸的大小
抽象 整數 []
shapeSignature()
傳回 Tensor 的原始形狀。 亦即每個維度的大小,然後才執行任何調整大小。

公用方法

公開 抽象 ByteBuffer asReadOnlyBuffer ()

傳回張量資料的唯讀 ByteBuffer 檢視畫面。

一般來說,這個方法最適用於取得輸出張量資料的唯讀檢視畫面。 執行「之後」* (例如透過 InterpreterApi.run(Object, Object))。於 具體來說,部分圖表具有動態形狀的輸出內容 輸出緩衝區。使用方式範例:

 interpreter.run(input, null);
 ByteBuffer outputBuffer = interpreter.getOutputTensor(0).asReadOnlyBuffer();
 // Copy or read from outputBuffer.

警告:如果尚未分配張量,例如在執行推論前 就會產生未定義的結果請注意,基礎張量指標也可能在 Tensor 以任何方式失效 (例如執行推論,或圖表調整大小後),因此 如果除了直接使用之外,如果對傳回的緩衝區保留參照,將「不安全」 在接下來的推論過程錯誤* 用法範例:

 ByteBuffer outputBuffer = interpreter.getOutputTensor(0).asReadOnlyBuffer();
 interpreter.run(input, null);
 // Copy or read from outputBuffer (which may now be invalid).

擲回
IllegalArgumentException 如未分配張量資料

公開 抽象 DataType dataType ()

傳回儲存在 Tensor 中的元素 DataType

公開 抽象 攔截 numBytes ()

傳回張量資料的大小 (以位元組為單位)。

公開 抽象 攔截 numDimensions ()

傳回 Tensor 的維度數量 (有時稱為「排名」)。

純量為 0、1 代表向量、2 代表矩陣,3 代表 3D 張量,依此類推。

公開 抽象 攔截 numElements ()

傳回張量以 1-D 分割 (1-D) 檢視畫面的元素數量。

公開 抽象 Tensor.QuantizationParams quantizationParams ()

傳回自身解譯器內張量的量化參數。

只有量化張量具備有效的 QuantizationParameters。適用於 量化,scale 和零點的值皆為 0。

公開 抽象 整數 [] 形狀 ()

傳回的形狀形狀 也就是 Tensor,也就是每個尺寸的大小

傳回
  • 這個陣列中的 i-th 元素是張量 i-th 維度的大小。

公開 抽象 整數 [] shapeSignature ()

傳回 Tensor 的原始形狀。 亦即每個維度的大小,然後才執行任何調整大小。未知的維度為 的值為 -1。

傳回
  • 這個陣列中的 i-th 元素是張量 i-th 維度的大小。