Larik multi-dimensi yang diketik secara statis yang elemennya bertipe yang dijelaskan oleh T.
Instance Tensor tidak aman untuk thread.
PERINGATAN: Sumber daya yang dikonsumsi oleh objek Tensor harus dibebaskan secara eksplisit dengan menjalankan metode close()
saat objek tidak lagi diperlukan. Misalnya, menggunakan blok coba-dengan-sumber daya:
try (Tensor t = Tensor.create(...)) {
doSomethingWith(t);
}
Metode Umum
boolean | booleanValue () Mengembalikan nilai dalam tensor Boolean skalar. |
byte [] | bytesValue () Mengembalikan nilai dalam tensor String skalar. |
kosong | dekat () Rilis sumber daya yang terkait dengan Tensor. |
<U> U | copyTo (U dst) Menyalin konten tensor ke dst dan mengembalikan dst . |
Tensor statis <?> | buat (Objek obj) Membuat tensor dari objek yang kelasnya diinspeksi untuk mencari tahu jenis data yang mendasarinya. |
statis <T> Tensor <T> | buat (Kelas <T> tipe, bentuk [] panjang, data ByteBuffer) Buat Tensor jenis apa pun dengan data dari buffer yang diberikan. |
Tensor statis <Double> | |
Tensor statis <Long> | |
Tensor statis <Integer> | |
Tensor statis <Float> | |
statis <T> Tensor <T> | buat (Object obj, tipe Kelas <T>) Membuat Tensor dari objek Java. |
Tipe data | |
dua kali lipat | doubleValue () Mengembalikan nilai dalam Tensor Double skalar. |
<U> Tensor <U> | mengharapkan (Kelas <U> tipe) Mengembalikan objek Tensor ini dengan tipe Tensor<U> . |
mengapung | floatValue () Mengembalikan nilai dalam tensor Float skalar. |
int | |
panjang | |
int | numBytes () Mengembalikan ukuran, dalam byte, dari data tensor. |
int | numDimensions () Menampilkan jumlah dimensi (terkadang disebut sebagai peringkat ) dari Tensor. |
int | numElements () Mengembalikan jumlah elemen dalam tampilan tensor datar (1-D). |
panjang[] | |
Tali | toString () Mengembalikan string yang mendeskripsikan jenis dan bentuk Tensor. |
kosong | |
kosong | |
kosong | |
kosong | writeTo (ByteBuffer dst) Tulis data tensor ke dalam buffer yang diberikan. |
kosong |
Metode Warisan
Metode Umum
public boolean booleanValue ()
Mengembalikan nilai dalam tensor Boolean
skalar.
Melempar
IllegalArgumentException | jika Tensor tidak mewakili skalar boolean. |
---|
byte publik [] bytesValue ()
Mengembalikan nilai dalam tensor String
skalar.
Melempar
IllegalArgumentException | jika Tensor tidak mewakili skalar boolean. |
---|
public void close ()
Rilis sumber daya yang terkait dengan Tensor.
PERINGATAN: Ini harus dijalankan untuk semua tensor yang tidak dihasilkan oleh operasi yang bersemangat atau memori akan bocor.
Objek Tensor tidak lagi dapat digunakan setelah close
return.
publik U copyTo (U dst)
Menyalin konten tensor ke dst
dan mengembalikan dst
.
Untuk tensor non-skalar, metode ini menyalin konten tensor yang mendasari ke larik Java. Untuk tensor skalar, gunakan salah satu dari bytesValue()
, floatValue()
, doubleValue()
, intValue()
, longValue()
atau booleanValue()
sebagai gantinya. Jenis dan bentuk dst
harus kompatibel dengan tensor. Misalnya:
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);
}
}
Melempar
IllegalArgumentException | jika tensor adalah skalar atau jika dst tidak kompatibel dengan tensor (misalnya, bentuk atau tipe data tidak cocok). |
---|
public static Tensor <?> create (Object obj)
Membuat tensor dari objek yang kelasnya diinspeksi untuk mencari tahu jenis data yang mendasarinya.
Melempar
IllegalArgumentException | jika obj tidak kompatibel dengan sistem jenis TensorFlow. |
---|
public static Tensor <T> create (Class <T> type, long [] shape, data ByteBuffer)
Buat Tensor jenis apa pun dengan data dari buffer yang diberikan.
Membuat Tensor dengan bentuk jenis apa pun yang disediakan di mana data tensor telah dienkode menjadi data
sesuai spesifikasi TensorFlow C API .
Parameter
Tipe | jenis elemen tensor, direpresentasikan sebagai objek kelas. |
---|---|
bentuk | bentuk tensor. |
data | buffer yang berisi data tensor. |
Melempar
IllegalArgumentException | Jika tipe data atau bentuk tensor tidak kompatibel dengan buffer |
---|
public static Tensor <Double> buat (bentuk [panjang], data DoubleBuffer)
Buat Tensor Double
dengan data dari buffer yang diberikan.
Membuat Tensor dengan bentuk yang diberikan dengan menyalin elemen dari buffer (mulai dari posisinya saat ini) ke tensor. Misalnya, jika shape = {2,3
} (yang merepresentasikan matriks 2x3) maka buffer harus memiliki 6 elemen tersisa, yang akan digunakan oleh metode ini.
Parameter
bentuk | bentuk tensor. |
---|---|
data | buffer yang berisi data tensor. |
Melempar
IllegalArgumentException | Jika bentuk tensor tidak kompatibel dengan buffer |
---|
public static Tensor <Long> buat (bentuk [panjang], data LongBuffer)
Buat Long
Tensor dengan data dari buffer yang diberikan.
Membuat Tensor dengan bentuk yang diberikan dengan menyalin elemen dari buffer (mulai dari posisinya saat ini) ke tensor. Misalnya, jika shape = {2,3
} (yang merepresentasikan matriks 2x3) maka buffer harus memiliki 6 elemen yang tersisa, yang akan digunakan oleh metode ini.
Parameter
bentuk | bentuk tensor. |
---|---|
data | buffer yang berisi data tensor. |
Melempar
IllegalArgumentException | Jika bentuk tensor tidak kompatibel dengan buffer |
---|
public static Tensor <Integer> buat (bentuk [panjang], data IntBuffer)
Buat Tensor Integer
dengan data dari buffer yang diberikan.
Membuat Tensor dengan bentuk yang diberikan dengan menyalin elemen dari buffer (mulai dari posisinya saat ini) ke tensor. Misalnya, jika shape = {2,3
} (yang merepresentasikan matriks 2x3) maka buffer harus memiliki 6 elemen yang tersisa, yang akan digunakan oleh metode ini.
Parameter
bentuk | bentuk tensor. |
---|---|
data | buffer yang berisi data tensor. |
Melempar
IllegalArgumentException | Jika bentuk tensor tidak kompatibel dengan buffer |
---|
public static Tensor <Float> buat (bentuk panjang [], data FloatBuffer)
Buat Float
Tensor dengan data dari buffer yang diberikan.
Membuat Tensor dengan bentuk yang diberikan dengan menyalin elemen dari buffer (mulai dari posisinya saat ini) ke tensor. Misalnya, jika shape = {2,3
} (yang merepresentasikan matriks 2x3) maka buffer harus memiliki 6 elemen yang tersisa, yang akan digunakan oleh metode ini.
Parameter
bentuk | bentuk tensor. |
---|---|
data | buffer yang berisi data tensor. |
Melempar
IllegalArgumentException | Jika bentuk tensor tidak kompatibel dengan buffer |
---|
public static Tensor <T> create (Object obj, Class <T> type)
Membuat Tensor dari objek Java.
Tensor
adalah larik multi-dimensi elemen dari kumpulan jenis terbatas. Tidak semua objek Java dapat diubah menjadi Tensor
. Secara khusus, argumen obj
harus berupa primitif (float, double, int, long, boolean, byte) atau array multi-dimensi dari salah satu primitif tersebut. type
argumen menentukan cara menafsirkan argumen pertama sebagai jenis TensorFlow. Sebagai contoh:
// 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
-typed Tensors adalah array multi-dimensi dari urutan byte yang berubah-ubah, sehingga dapat diinisialisasi dari array elemen byte[]
. Misalnya: // 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); }
Parameter
obj | Objek yang akan diubah menjadi Tensor<T> . Perhatikan bahwa apakah itu kompatibel dengan tipe T tidak diperiksa oleh sistem tipe. Untuk penciptaan jenis-aman dari tensor, gunakan Tensors . |
---|---|
Tipe | Objek kelas mewakili tipe T. |
Melempar
IllegalArgumentException | jika obj tidak kompatibel dengan sistem jenis TensorFlow. |
---|
public double doubleValue ()
Mengembalikan nilai dalam Tensor Double
skalar.
Melempar
IllegalArgumentException | jika Tensor tidak mewakili skalar ganda. |
---|
publik Tensor <U> harapkan (Kelas <U> tipe)
Mengembalikan objek Tensor ini dengan tipe Tensor<U>
. Metode ini berguna ketika diberi nilai tipe Tensor<?>
.
Parameter
Tipe | sembarang larik (bukan null) dengan tipe yang benar. |
---|
Melempar
IllegalArgumentException | jika tipe data sebenarnya dari objek ini tidak cocok dengan tipe U |
---|
public float floatValue ()
Mengembalikan nilai dalam tensor Float
skalar.
Melempar
IllegalArgumentException | jika Tensor tidak mewakili skalar mengambang. |
---|
public int intValue ()
Mengembalikan nilai dalam tensor bilangan Integer
skalar.
Melempar
IllegalArgumentException | jika Tensor tidak mewakili skalar int. |
---|
public longValue ()
Mengembalikan nilai dalam skalar Tensor Long
.
Melempar
IllegalArgumentException | jika Tensor tidak mewakili skalar panjang. |
---|
publik int numBytes ()
Mengembalikan ukuran, dalam byte, dari data tensor.
public int numDimensions ()
Menampilkan jumlah dimensi (terkadang disebut sebagai peringkat ) dari Tensor.
Akan menjadi 0 untuk skalar, 1 untuk vektor, 2 untuk matriks, 3 untuk tensor 3 dimensi, dll.
public int numElements ()
Mengembalikan jumlah elemen dalam tampilan tensor datar (1-D).
publik [] bentuk ()
Mengembalikan bentuk Tensor, yaitu ukuran setiap dimensi.
Kembali
- array di mana elemen ke-i adalah ukuran dimensi ke-i tensor.
public String toString ()
Mengembalikan string yang mendeskripsikan jenis dan bentuk Tensor.
public void writeTo (LongBuffer dst)
public void writeTo (DoubleBuffer dst)
public void writeTo (IntBuffer dst)
Tuliskan data tensor Integer
bulat ke dalam buffer yang diberikan.
Menyalin elemen numElements()
ke buffer.
Parameter
dst | buffer tujuan |
---|
Melempar
BufferOverflowException | Jika tidak ada cukup ruang di buffer yang diberikan untuk data di tensor ini |
---|---|
IllegalArgumentException | Jika tipe data tensor bukan Integer |
public void writeTo (ByteBuffer dst)
Tulis data tensor ke dalam buffer yang diberikan.
Menyalin numBytes()
byte ke buffer dalam urutan byte asli untuk tipe primitif.
Parameter
dst | buffer tujuan |
---|
Melempar
BufferOverflowException | Jika tidak ada cukup ruang di buffer yang diberikan untuk data di tensor ini |
---|