Peringatan: API ini tidak digunakan lagi dan akan dihapus di TensorFlow versi mendatang setelah penggantian stabil.

Tensor

publik kelas akhir Tensor

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>
buat (bentuk [] panjang, data DoubleBuffer)
Buat Tensor Double dengan data dari buffer yang diberikan.
Tensor statis <Long>
buat (bentuk [] panjang, data LongBuffer)
Buat Long Tensor dengan data dari buffer yang diberikan.
Tensor statis <Integer>
buat (bentuk [] panjang, data IntBuffer)
Buat Tensor Integer dengan data dari buffer yang diberikan.
Tensor statis <Float>
buat (bentuk [] panjang, data FloatBuffer)
Buat Float Tensor dengan data dari buffer yang diberikan.
statis <T> Tensor <T>
buat (Object obj, tipe Kelas <T>)
Membuat Tensor dari objek Java.
Tipe data
dataType ()
Mengembalikan DataType elemen yang disimpan di Tensor.
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
intValue ()
Mengembalikan nilai dalam tensor bilangan Integer skalar.
panjang
longValue ()
Mengembalikan nilai dalam skalar Tensor Long .
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[]
bentuk ()
Mengembalikan bentuk Tensor, yaitu ukuran setiap dimensi.
Tali
toString ()
Mengembalikan string yang mendeskripsikan jenis dan bentuk Tensor.
kosong
writeTo (LongBuffer dst)
Tuliskan data tensor Long ke dalam buffer yang diberikan.
kosong
writeTo (DoubleBuffer dst)
Tuliskan data tensor Double ke dalam buffer yang diberikan.
kosong
writeTo (IntBuffer dst)
Tuliskan data tensor Integer bulat ke dalam buffer yang diberikan.
kosong
writeTo (ByteBuffer dst)
Tulis data tensor ke dalam buffer yang diberikan.
kosong
writeTo (FloatBuffer dst)
Tulis data tensor Float ke dalam buffer yang diberikan.

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";
 Tensor s = 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 DataType dataType ()

Mengembalikan DataType elemen yang disimpan di Tensor.

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)

Tuliskan data tensor Long 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 tidak Long

public void writeTo (DoubleBuffer dst)

Tuliskan data tensor Double 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 Double

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

public void writeTo (FloatBuffer dst)

Tulis data tensor Float 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 Float