Advertencia: esta API está obsoleta y se eliminará en una versión futura de TensorFlow una vez que el reemplazo sea ​​estable.

Bitcast

Clase public final Bitcast

Bitcasts un tensor de un tipo a otro sin copiar datos.

Dado un tensor "input", esta operación devuelve un tensor que tiene los mismos datos de búfer que "input" con el tipo de datos "type".

Si el tipo de datos de entrada `T` es mayor que el tipo de datos de salida` type`, la forma cambia de [...] a [..., sizeof (`T`) / sizeof (` type`)].

Si `T` es menor que` type`, el operador requiere que la dimensión más a la derecha sea igual a sizeof (`type`) / sizeof (` T`). La forma entonces va de [..., sizeof (`type`) / sizeof (` T`)] a [...].

tf.bitcast () y tf.cast () funcionan de manera diferente cuando el dtype real se convierte en un dtype complejo (por ejemplo, tf.complex64 o tf.complex128) ya que tf.cast () hace la parte imaginaria 0 mientras que tf.bitcast () proporciona el módulo error. Por ejemplo,

Ejemplo 1:

>>> a = [1., 2., 3.] >>> equal_bitcast = tf.bitcast (a, tf.complex128) Traceback (última llamada más reciente): ... InvalidArgumentError: No se puede realizar bitcast de 1 a 18 [ Op: Bitcast] >>> equal_cast = tf.cast (a, tf.complex128) >>> print (equal_cast) tf.Tensor ([1. + 0.j 2. + 0.j 3. + 0.j] , forma = (3,), dtype = complex128)

Ejemplo 2:

>>> tf.bitcast (tf.constant (0xffffffff, dtype = tf.uint32), tf.uint8)

Ejemplo 3:

>>> x = [1., 2., 3.] >>> y = [0., 2., 3.] >>> igualdad = tf.equal (x, y) >>> igualdad_cast = tf. emitir (igualdad, tf.float32) >>> igualdad_bitcast = tf.bitcast (igualdad_cast, tf.uint8) >>> imprimir (igualdad) tf.Tensor ([Falso verdadero verdadero], forma = (3,), dtype = bool ) >>> imprimir (difusión_igualdad) tf.Tensor ([0. 1. 1.], forma = (3,), dtype = float32) >>> imprimir (difusión_bit_igualdad) tf.Tensor ([[0 0 0 0] [0 0 128 63] [0 0 128 63]], forma = (3, 4), dtype = uint8)

NOTA: Bitcast se implementa como un elenco de bajo nivel, por lo que las máquinas con diferentes ordenamientos endian darán resultados diferentes.

Métodos públicos

Salida <U>
asOutput ()
Devuelve el identificador simbólico de un tensor.
estática <T, T> Bitcast <U>
crear ( Alcance alcance, operando <T> entrada, Clase <U> tipo)
Método de fábrica para crear una clase que envuelva una nueva operación de Bitcast.
Salida <U>
salida ()

Métodos heredados

Métodos públicos

pública de salida <U> asOutput ()

Devuelve el identificador simbólico de un tensor.

Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.

public static Bitcast <U> crear ( Alcance alcance, operando <T> entrada, Clase <U> tipo)

Método de fábrica para crear una clase que envuelva una nueva operación de Bitcast.

Parámetros
alcance alcance actual
Devoluciones
  • una nueva instancia de Bitcast

pública de salida <U> salida ()