要素がTで記述された型である静的に型付けされた多次元配列。
Tensorのインスタンスはスレッドセーフではありません。
警告:リソースを明示的に呼び出すなかっによって解放されなければならないテンソルオブジェクトによって消費close()
オブジェクトが不要になったときの方法を。たとえば、try-with-resourcesブロックを使用します:
try (Tensor t = Tensor.create(...)) {
doSomethingWith(t);
}
パブリックメソッド
ブール値 | booleanValue () スカラー Boolean テンソルで値を返します。 |
バイト[] | bytesValue () スカラー String テンソルの値を返します。 |
ボイド | 閉じる() Tensorに関連付けられているリソースを解放します。 |
<U> U | copyTo (U dst) コピーしテンソルの内容を dst 戻りdst 。 |
静的テンソル<?> | create (Object obj) 基になるデータ型がどうあるべきかを理解するためにクラスが検査されるオブジェクトからテンソルを作成します。 |
静的<T>テンソル<T> | create (Class <T>タイプ、long []シェイプ、ByteBufferデータ) 指定されたバッファーからのデータを使用して、任意のタイプのテンソルを作成します。 |
静的テンソル<ダブル> | |
静的テンソル<長い> | |
静的テンソル<整数> | |
静的テンソル<浮動小数点> | |
静的<T>テンソル<T> | create (Object obj、Class <T>タイプ) JavaオブジェクトからTensorを作成します。 |
データ・タイプ | |
ダブル | doubleValue () スカラー Double テンソルの値を返します。 |
<U>テンソル<U> | 期待(Class <U>タイプ) タイプ Tensor<U> このTensorオブジェクトを返します。 |
浮く | floatValue () スカラー Float テンソルの値を返します。 |
int | |
長いです | |
int | numBytes () テンソルデータのサイズをバイト単位で返します。 |
int | numDimensions () テンソルの次元数(ランクと呼ばれることもあります)を返します。 |
int | numElements () テンソルの平坦化された(1-D)ビューの要素の数を返します。 |
長いです[] | |
ストリング | toString () Tensorのタイプと形状を説明する文字列を返します。 |
ボイド | |
ボイド | |
ボイド | |
ボイド | writeTo (ByteBuffer dst) テンソルデータを指定されたバッファーに書き込みます。 |
ボイド |
継承されたメソッド
パブリックメソッド
public boolean booleanValue ()
スカラーBoolean
テンソルで値を返します。
投げる
IllegalArgumentException | テンソルがブールスカラーを表していない場合。 |
---|
public byte [] bytesValue ()
スカラーString
テンソルの値を返します。
投げる
IllegalArgumentException | テンソルがブールスカラーを表していない場合。 |
---|
public void close ()
Tensorに関連付けられているリソースを解放します。
警告:これは、熱心な操作によって生成されなかったすべてのテンソルに対して呼び出す必要があります。そうしないと、メモリがリークします。
Tensorオブジェクトは、 close
が戻った後は使用できなくなります。
public U copyTo (U dst)
コピーテンソルの内容をdst
戻りdst
。
非スカラーテンソルの場合、このメソッドは基礎となるテンソルの内容をJava配列にコピーします。スカラーテンソルの場合は、 bytesValue()
、 floatValue()
、 doubleValue()
、 intValue()
、 longValue()
またはbooleanValue()
いずれかを使用します。 dst
のタイプと形状は、テンソルと互換性がある必要があります。例:
int matrix[2][2] = { {1,2
,{3,4} };
try(Tensor t = Tensor.create(matrix)) {
// Succeeds and prints "3"
int[][] copy = new int[2][2];
System.out.println(t.copyTo(copy)[1][0]);
// Throws IllegalArgumentException since the shape of dst does not match the shape of t.
int[][] dst = new int[4][1];
t.copyTo(dst);
}
}
投げる
IllegalArgumentException | テンソルがスカラーである場合、またはdst がテンソルと互換性がない場合(たとえば、データ型または形状の不一致)。 |
---|
public static Tensor <?> create (Object obj)
基になるデータ型がどうあるべきかを理解するためにクラスが検査されるオブジェクトからテンソルを作成します。
投げる
IllegalArgumentException | obj がTensorFlowタイプのシステムと互換性がない場合。 |
---|
public static Tensor <T> create (Class <T>タイプ、long []シェイプ、ByteBufferデータ)
指定されたバッファーからのデータを使用して、任意のタイプのテンソルを作成します。
テンソルのデータに符号化された任意のタイプの提供形状とテンソルを作成するdata
TensorFlowの仕様に従ってCのAPI 。
パラメーター
タイプ | クラスオブジェクトとして表されるテンソル要素タイプ。 |
---|---|
形状 | テンソルの形状。 |
データ | テンソルデータを含むバッファ。 |
投げる
IllegalArgumentException | テンソルのデータ型または形状がバッファと互換性がない場合 |
---|
public static Tensor <Double> create (long [] shape、DoubleBuffer data)
指定されたバッファーからのデータを使用してDouble
テンソルを作成します。
バッファから(現在の位置から開始して)要素をテンソルにコピーすることにより、指定された形状のテンソルを作成します。たとえば、 shape = {2,3
}(2x3行列を表す)の場合、バッファには6つの要素が残っている必要があり、これはこのメソッドによって消費されます。
パラメーター
形状 | テンソルの形状。 |
---|---|
データ | テンソルデータを含むバッファ。 |
投げる
IllegalArgumentException | テンソル形状がバッファーと互換性がない場合 |
---|
public static Tensor <Long> create (long [] shape、LongBuffer data)
作成Long
与えられたバッファからのデータとテンソルを。
バッファから(現在の位置から開始して)要素をテンソルにコピーすることにより、指定された形状のテンソルを作成します。たとえば、 shape = {2,3
}(2x3行列を表す)の場合、バッファには6つの要素が残っている必要があり、これはこのメソッドによって消費されます。
パラメーター
形状 | テンソルの形状。 |
---|---|
データ | テンソルデータを含むバッファ。 |
投げる
IllegalArgumentException | テンソル形状がバッファーと互換性がない場合 |
---|
public static Tensor <Integer> create (long [] shape、IntBuffer data)
指定されたバッファーからのデータを使用してInteger
テンソルを作成します。
バッファから(現在の位置から開始して)要素をテンソルにコピーすることにより、指定された形状のテンソルを作成します。たとえば、 shape = {2,3
}(2x3行列を表す)の場合、バッファには6つの要素が残っている必要があり、これはこのメソッドによって消費されます。
パラメーター
形状 | テンソルの形状。 |
---|---|
データ | テンソルデータを含むバッファ。 |
投げる
IllegalArgumentException | テンソル形状がバッファーと互換性がない場合 |
---|
public static Tensor <Float> create (long [] shape、FloatBuffer data)
指定されたバッファーからのデータを使用してFloat
テンソルを作成します。
バッファから(現在の位置から開始して)要素をテンソルにコピーすることにより、指定された形状のテンソルを作成します。たとえば、 shape = {2,3
}(2x3行列を表す)の場合、バッファには6つの要素が残っている必要があり、これはこのメソッドによって消費されます。
パラメーター
形状 | テンソルの形状。 |
---|---|
データ | テンソルデータを含むバッファ。 |
投げる
IllegalArgumentException | テンソル形状がバッファーと互換性がない場合 |
---|
public static Tensor <T> create (Object obj、Class <T> type)
JavaオブジェクトからTensorを作成します。
Tensor
は、限られたタイプのセットの要素の多次元配列です。すべてのJavaオブジェクトをTensor
変換できるわけではありません。特に、引数obj
は、プリミティブ(float、double、int、long、boolean、byte)またはこれらのプリミティブの1つの多次元配列のいずれかである必要があります。引数type
は、最初の引数をTensorFlowタイプとして解釈する方法を指定します。次に例を示します。
// Valid: A 64-bit integer scalar.
Tensor<Long> s = Tensor.create(42L, Long.class);
// Valid: A 3x2 matrix of floats.
float[][] matrix = new float[3][2];
Tensor<Float> m = Tensor.create(matrix, Float.class);
// Invalid: Will throw an IllegalArgumentException as an arbitrary Object
// does not fit into the TensorFlow type system.
Tensor<?> o = Tensor.create(new Object())
// Invalid: Will throw an IllegalArgumentException since there are
// a differing number of elements in each row of this 2-D array.
int[][] twoD = new int[2][];
twoD[0] = new int[1];
twoD[1] = new int[2];
Tensor<Integer> x = Tensor.create(twoD, Integer.class);
String
型テンソルは任意のバイトシーケンスの多次元配列であるため、 byte[]
要素の配列から初期化できます。例:// Valid: A String tensor. Tensor<String> s = Tensor.create(new byte[]{1, 2, 3
, String.class); // Java Strings will need to be encoded into a byte-sequence. String mystring = "foo"; Tensors = Tensor.create(mystring.getBytes("UTF-8"), String.class); // Valid: Matrix of String tensors. // Each element might have a different length. byte[][][] matrix = new byte[2][2][]; matrix[0][0] = "this".getBytes("UTF-8"); matrix[0][1] = "is".getBytes("UTF-8"); matrix[1][0] = "a".getBytes("UTF-8"); matrix[1][1] = "matrix".getBytes("UTF-8"); Tensor m = Tensor.create(matrix, String.class); }
パラメーター
obj | Tensor<T> に変換するオブジェクト。タイプTと互換性があるかどうかは、型システムによってチェックされないことに注意してください。テンソルをタイプセーフに作成するには、テンソルを使用しTensors 。 |
---|---|
タイプ | タイプTを表すクラスオブジェクト。 |
投げる
IllegalArgumentException | obj がTensorFlowタイプのシステムと互換性がない場合。 |
---|
public double doubleValue ()
スカラーDouble
テンソルの値を返します。
投げる
IllegalArgumentException | テンソルがダブルスカラーを表していない場合。 |
---|
public Tensor <U> expect (Class <U> type)
タイプTensor<U>
このTensorオブジェクトを返します。このメソッドは、 Tensor<?>
型の値が指定されている場合に役立ちTensor<?>
。
パラメーター
タイプ | 正しいタイプの(null以外の)配列。 |
---|
投げる
IllegalArgumentException | このオブジェクトの実際のデータ型がタイプU 一致しない場合。 |
---|
public int numBytes ()
テンソルデータのサイズをバイト単位で返します。
public int numDimensions ()
テンソルの次元数(ランクと呼ばれることもあります)を返します。
スカラーの場合は0、ベクトルの場合は1、行列の場合は2、3次元テンソルの場合は3などになります。
public int numElements ()
テンソルの平坦化された(1-D)ビューの要素の数を返します。
public String toString ()
Tensorのタイプと形状を説明する文字列を返します。
public void writeTo ( LongBuffer dst)
public void writeTo (DoubleBuffer dst)
public void writeTo (IntBuffer dst)
public void writeTo (ByteBuffer dst)
テンソルデータを指定されたバッファーに書き込みます。
プリミティブ型の場合、 numBytes()
バイトをネイティブバイト順にバッファにコピーします。
パラメーター
dst | 宛先バッファ |
---|
投げる
BufferOverflowException | このテンソルのデータに対して、指定されたバッファーに十分なスペースがない場合 |
---|