Tensor

Tensor de clase final pública

Una matriz multidimensional tipada estáticamente cuyos elementos son de un tipo descrito por T.

Las instancias de un tensor no son seguras para subprocesos.

ADVERTENCIA: Los recursos consumidos por el objeto Tensor deben liberarse explícitamente invocando el método close() cuando el objeto ya no sea necesario. Por ejemplo, usando un bloque de prueba con recursos:

try (Tensor t = Tensor.create(...)) {
   doSomethingWith(t);
 }
 

Métodos públicos

booleano
valor booleano ()
Devuelve el valor en un tensor Boolean escalar.
byte[]
valor de bytes ()
Devuelve el valor en un tensor String escalar.
vacío
cerrar ()
Liberar recursos asociados con el Tensor.
<u> tu
copiar a (U dst)
Copia el contenido del tensor a dst y devuelve dst .
Tensor estático <?>
crear (Objeto objeto)
Crea un tensor a partir de un objeto cuya clase se inspecciona para averiguar cuál debería ser el tipo de datos subyacente.
estático <T> Tensor <T>
crear (tipo Class<T>, forma larga[], datos de ByteBuffer)
Cree un tensor de cualquier tipo con datos del búfer dado.
Tensor estático <Doble>
crear (forma larga [], datos de DoubleBuffer)
Cree un tensor Double con datos del búfer dado.
Tensor estático <Largo>
crear (forma larga [], datos de LongBuffer)
Cree un tensor Long con datos del búfer dado.
Tensor estático <Entero>
crear (forma larga [], datos de IntBuffer)
Cree un tensor Integer con datos del búfer dado.
Tensor estático <Flotante>
crear (forma larga [], datos de FloatBuffer)
Cree un tensor Float con datos del búfer dado.
estático <T> Tensor <T>
crear (Objeto obj, tipo Class<T>)
Crea un tensor a partir de un objeto Java.
Tipo de datos
tipo de datos ()
Devuelve el tipo de DataType de los elementos almacenados en el tensor.
doble
valor doble ()
Devuelve el valor en un tensor Double escalar.
<U> Tensor <U>
esperar (clase<U> tipo)
Devuelve este objeto Tensor con el tipo Tensor&lt;U&gt; .
flotar
valor flotante ()
Devuelve el valor en un tensor Float escalar.
En t
valorint ()
Devuelve el valor en un tensor Integer escalar.
largo
valorlargo ()
Devuelve el valor en un tensor Long escalar.
En t
númeroBytes ()
Devuelve el tamaño, en bytes, de los datos del tensor.
En t
númDimensiones ()
Devuelve el número de dimensiones (a veces denominado rango ) del tensor.
En t
númeroElementos ()
Devuelve el número de elementos en una vista aplanada (1-D) del tensor.
largo[]
forma ()
Devuelve la forma del Tensor, es decir, los tamaños de cada dimensión.
Cuerda
a la cadena ()
Devuelve una cadena que describe el tipo y la forma del tensor.
vacío
writeTo (DST de búfer largo)
Escriba los datos de un tensor Long en el búfer dado.
vacío
escribir en (Doble búfer horario de verano)
Escriba los datos de un tensor Double en el búfer dado.
vacío
escribir en ( IntBuffer dst)
Escriba los datos de un tensor Integer en el búfer dado.
vacío
escribir a (ByteBuffer dst)
Escriba los datos del tensor en el búfer dado.
vacío
escribir en ( FloatBuffer dst)
Escriba los datos de un tensor Float en el búfer dado.

Métodos Heredados

Métodos públicos

valor booleano booleano público ( )

Devuelve el valor en un tensor Boolean escalar.

Lanza
Argumento de excepción ilegal si el tensor no representa un escalar booleano.

byte público [] bytesValue ()

Devuelve el valor en un tensor String escalar.

Lanza
Argumento de excepción ilegal si el tensor no representa un escalar booleano.

cierre de vacío público ()

Liberar recursos asociados con el Tensor.

ADVERTENCIA: Esto debe invocarse para todos los tensores que no hayan sido producidos por una operación ansiosa o se perderá la memoria.

El objeto Tensor ya no se puede usar después de que se devuelva el close .

público U copyTo (U dst)

Copia el contenido del tensor a dst y devuelve dst .

Para tensores no escalares, este método copia el contenido del tensor subyacente en una matriz de Java. Para tensores escalares, use uno de bytesValue() , floatValue() , doubleValue() , intValue() , longValue() o booleanValue() en su lugar. El tipo y la forma de dst deben ser compatibles con el tensor. Por ejemplo:

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);
 }
 

Parámetros
horario de verano
Lanza
Argumento de excepción ilegal si el tensor es un escalar o si dst no es compatible con el tensor (por ejemplo, formas o tipos de datos no coincidentes).

Tensor estático público <?> crear (Objeto obj)

Crea un tensor a partir de un objeto cuya clase se inspecciona para averiguar cuál debería ser el tipo de datos subyacente.

Parámetros
objeto
Lanza
Argumento de excepción ilegal si obj no es compatible con el sistema de tipo TensorFlow.

Public static Tensor <T> create (tipo Class<T>, forma larga [], datos de ByteBuffer)

Cree un tensor de cualquier tipo con datos del búfer dado.

Crea un tensor con la forma proporcionada de cualquier tipo en el que los datos del tensor se hayan codificado en data según la especificación de la API C de TensorFlow.

Parámetros
tipo el tipo de elemento tensor, representado como un objeto de clase.
forma la forma del tensor.
datos un búfer que contiene los datos del tensor.
Lanza
Argumento de excepción ilegal Si el tipo de datos o la forma del tensor no es compatible con el búfer

Tensor estático público <Double> crear (forma larga [], datos de DoubleBuffer)

Cree un tensor Double con datos del búfer dado.

Crea un tensor con la forma dada copiando elementos del búfer (a partir de su posición actual) en el tensor. Por ejemplo, si shape = {2,3} (que representa una matriz de 2x3), el búfer debe tener 6 elementos restantes, que serán consumidos por este método.

Parámetros
forma la forma del tensor.
datos un búfer que contiene los datos del tensor.
Lanza
Argumento de excepción ilegal Si la forma del tensor no es compatible con el búfer

Tensor estático público <Long> crear (forma larga [], datos LongBuffer)

Cree un tensor Long con datos del búfer dado.

Crea un tensor con la forma dada copiando elementos del búfer (a partir de su posición actual) en el tensor. Por ejemplo, si shape = {2,3} (que representa una matriz de 2x3), el búfer debe tener 6 elementos restantes, que serán consumidos por este método.

Parámetros
forma la forma del tensor.
datos un búfer que contiene los datos del tensor.
Lanza
Argumento de excepción ilegal Si la forma del tensor no es compatible con el búfer

Public static Tensor <Integer> create (forma larga [], datos de IntBuffer)

Cree un tensor Integer con datos del búfer dado.

Crea un tensor con la forma dada copiando elementos del búfer (a partir de su posición actual) en el tensor. Por ejemplo, si shape = {2,3} (que representa una matriz de 2x3), el búfer debe tener 6 elementos restantes, que serán consumidos por este método.

Parámetros
forma la forma del tensor.
datos un búfer que contiene los datos del tensor.
Lanza
Argumento de excepción ilegal Si la forma del tensor no es compatible con el búfer

Tensor estático público <Float> crear (forma larga [], datos de FloatBuffer)

Cree un tensor Float con datos del búfer dado.

Crea un tensor con la forma dada copiando elementos del búfer (a partir de su posición actual) en el tensor. Por ejemplo, si shape = {2,3} (que representa una matriz de 2x3), el búfer debe tener 6 elementos restantes, que serán consumidos por este método.

Parámetros
forma la forma del tensor.
datos un búfer que contiene los datos del tensor.
Lanza
Argumento de excepción ilegal Si la forma del tensor no es compatible con el búfer

Public static Tensor <T> create (Object obj, Class<T> type)

Crea un tensor a partir de un objeto Java.

Un Tensor es una matriz multidimensional de elementos de un conjunto limitado de tipos. No todos los objetos de Java se pueden convertir a Tensor . En particular, el argumento obj debe ser una primitiva (float, double, int, long, boolean, byte) o una matriz multidimensional de una de esas primitivas. El type de argumento especifica cómo interpretar el primer argumento como un tipo de TensorFlow. Por ejemplo:

// Valid: A 64-bit integer scalar.
 Tensor&lt;Long&gt; s = Tensor.create(42L, Long.class);

 // Valid: A 3x2 matrix of floats.
 float[][] matrix = new float[3][2];
 Tensor&lt;Float&gt; m = Tensor.create(matrix, Float.class);

 // Invalid: Will throw an IllegalArgumentException as an arbitrary Object
 // does not fit into the TensorFlow type system.
 Tensor&lt;?&gt; 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&lt;Integer&gt; x = Tensor.create(twoD, Integer.class);
 
Los tensores de tipo String son matrices multidimensionales de secuencias de bytes arbitrarias, por lo que se pueden inicializar a partir de matrices de elementos byte[] . Por ejemplo:
// Valid: A String tensor.
 Tensor&lt;String&gt; 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&lt;String&gt; 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&lt;String&gt; m = Tensor.create(matrix, String.class);
 

Parámetros
objeto El objeto a convertir en Tensor&lt;T&gt; . Tenga en cuenta que el sistema de tipos no comprueba si es compatible con el tipo T. Para la creación de tensores con seguridad de tipos, use Tensors .
tipo El objeto de clase que representa el tipo T.
Lanza
Argumento de excepción ilegal si obj no es compatible con el sistema de tipo TensorFlow.

tipo de datos público tipo de datos ()

Devuelve el tipo de DataType de los elementos almacenados en el tensor.

público doble valor doble ()

Devuelve el valor en un tensor Double escalar.

Lanza
Argumento de excepción ilegal si el Tensor no representa un doble escalar.

public Tensor <U> expect (Class<U> type)

Devuelve este objeto Tensor con el tipo Tensor&lt;U&gt; . Este método es útil cuando se le da un valor de tipo Tensor&lt;?&gt; .

Parámetros
tipo cualquier matriz (no nula) del tipo correcto.
Lanza
Argumento de excepción ilegal si el tipo de datos real de este objeto no coincide con el tipo U

flotador público floatValue ()

Devuelve el valor en un tensor Float escalar.

Lanza
Argumento de excepción ilegal si el tensor no representa un escalar flotante.

public int intValue ()

Devuelve el valor en un tensor Integer escalar.

Lanza
Argumento de excepción ilegal si el Tensor no representa un escalar int.

valor largo público largo ( )

Devuelve el valor en un tensor Long escalar.

Lanza
Argumento de excepción ilegal si el Tensor no representa un escalar largo.

public int numBytes ()

Devuelve el tamaño, en bytes, de los datos del tensor.

public int numDimensions ()

Devuelve el número de dimensiones (a veces denominado rango ) del tensor.

Será 0 para un escalar, 1 para un vector, 2 para una matriz, 3 para un tensor tridimensional, etc.

public int numElements ()

Devuelve el número de elementos en una vista aplanada (1-D) del tensor.

forma pública larga [] ()

Devuelve la forma del Tensor, es decir, los tamaños de cada dimensión.

Devoluciones
  • una matriz donde el i-ésimo elemento es del tamaño de la i-ésima dimensión del tensor.

Cadena pública a Cadena ( )

Devuelve una cadena que describe el tipo y la forma del tensor.

public void writeTo (LongBuffer dst)

Escriba los datos de un tensor Long en el búfer dado.

Copia elementos numElements() al búfer.

Parámetros
horario de verano el búfer de destino
Lanza
BufferOverflowException Si no hay suficiente espacio en el búfer dado para los datos en este tensor
Argumento de excepción ilegal Si el tipo de datos del tensor no es Long

public void writeTo (DoubleBuffer dst)

Escriba los datos de un tensor Double en el búfer dado.

Copia elementos numElements() al búfer.

Parámetros
horario de verano el búfer de destino
Lanza
BufferOverflowException Si no hay suficiente espacio en el búfer dado para los datos en este tensor
Argumento de excepción ilegal Si el tipo de datos del tensor no es Double

public void writeTo (IntBuffer dst)

Escriba los datos de un tensor Integer en el búfer dado.

Copia elementos numElements() al búfer.

Parámetros
horario de verano el búfer de destino
Lanza
BufferOverflowException Si no hay suficiente espacio en el búfer dado para los datos en este tensor
Argumento de excepción ilegal Si el tipo de datos del tensor no es Integer

escritura vacía pública a (ByteBuffer dst)

Escriba los datos del tensor en el búfer dado.

Copia bytes numBytes() al búfer en el orden de bytes nativo para tipos primitivos.

Parámetros
horario de verano el búfer de destino
Lanza
BufferOverflowException Si no hay suficiente espacio en el búfer dado para los datos en este tensor

public void writeTo (FloatBuffer dst)

Escriba los datos de un tensor Float en el búfer dado.

Copia elementos numElements() al búfer.

Parámetros
horario de verano el búfer de destino
Lanza
BufferOverflowException Si no hay suficiente espacio en el búfer dado para los datos en este tensor
Argumento de excepción ilegal Si el tipo de datos del tensor no es Float