Tensor

公開インターフェース Tensor

TensorFlow Lite で使用される型付き多次元配列。

Tensor のネイティブ ハンドルは NativeInterpreterWrapper によって管理され、クライアントが閉じる必要はありません。ただし、NativeInterpreterWrapper が閉じると、テンソル ハンドルは無効になります。

ネストされたクラス

クラス Tensor.QuantizationParams TFLite モデルのスキーマ ファイル 内のテーブル QuantizationParameters に対応する量子化パラメータ。

パブリック メソッド

抽象 ByteBuffer
asReadOnlyBuffer()
テンソルデータの読み取り専用 ByteBuffer ビューを返します。
抽象 DataType
dataType()
テンソルに保存されている要素の DataType を返します。
抽象 整数
numBytes()
テンソルデータのサイズ(バイト単位)を返します。
抽象 整数
numDimensions()
テンソルの次元数(ランクとも呼ばれます)を返します。
抽象 整数
numElements()
テンソルのフラット化された(1 次元)ビューの要素数を返します。
抽象 Tensor.QuantizationParams
quantizationParams()
所有するインタープリタ内のテンソルの量子化パラメータを返します。
抽象 int[]
shape()
テンソルの形状、つまり各次元のサイズを返します。
抽象 int[]
shapeSignature()
サイズ変更が行われる前の、テンソルの元の形状、つまり各次元のサイズを返します。

パブリック メソッド

public 抽象 ByteBuffer asReadOnlyBuffer ()

テンソルデータの読み取り専用 ByteBuffer ビューを返します。

一般的に、この方法は、推論が(InterpreterApi.run(Object, Object) などを介して)実行された*後に*、出力テンソルデータの読み取り専用ビューを取得する場合に最も有用です。特に、一部のグラフは動的に整形された出力を持つため、事前定義された出力バッファをインタープリタにフィードするのが難しくなる場合があります。使用例:

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

警告: 推論の実行前など、テンソルがまだ割り当てられていない場合、結果は未定義になります。テンソルがなんらかの方法で無効化された場合(推論の実行やグラフのサイズが変更された場合など)にも、基になるテンソル ポインタが変更される可能性があるため、返されたバッファへの参照を推論の直後に使用する以外の方法で保持することは安全ではありません。不適切な使用例:

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

例外
IllegalArgumentException テンソルデータが割り当てられていない場合

public 抽象 DataType dataType ()

テンソルに格納されている要素の DataType を返します。

public 抽象 int numBytes ()

テンソルデータのサイズ(バイト単位)を返します。

public 抽象 int numDimensions ()

テンソルの次元数(ランクとも呼ばれます)を返します。

0 はスカラー、1 はベクトル、2 は行列、3 は 3 次元テンソルなどになります。

public 抽象 int numElements ()

テンソルのフラット化された(1 次元)ビューの要素数を返します。

public 抽象 Tensor.QuantizationParams quantizationParams ()

所有するインタープリタ内のテンソルの量子化パラメータを返します。

有効な QuantizationParameters を持つのは量子化テンソルのみです。量子化されていないテンソルの場合、scale と zero_point の値はどちらも 0 です。

public 抽象 int[] shape ()

テンソルの形状、つまり各次元のサイズを返します。

戻り値
  • i 番目の要素がテンソルの i 次元のサイズである配列。

public 抽象 int[] shapeSignature ()

サイズ変更が行われる前の、テンソルの元の形状、つまり各次元のサイズを返します。不明なディメンションは -1 の値で指定します。

戻り値
  • i 番目の要素がテンソルの i 次元のサイズである配列。