Bitcast

Bitcast clase final pública

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. cast (igualdad, tf.float32) >>> igualdad_bitcast = tf.bitcast (igualdad_cast, tf.uint8) >>> print (igualdad) tf.Tensor ([False True True], 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 órdenes de endian darán resultados diferentes.

Métodos públicos

Salida <U>
asOutput ()
Devuelve el identificador simbólico de un tensor.
estática <U, T> Bitcast <U>
crear ( alcance de alcance, entrada de operando <T>, tipo de clase <U>)
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

Salida pública <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

salida pública <U> salida ()