tensorflow:: ops:: Bitcast

#include <array_ops.h>

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

Resumen

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

Si el tipo de datos de entrada T es mayor que el type de datos de salida type, entonces 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 pasa de [..., sizeof( type )/sizeof( T )] a [...].

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

Ejemplo 1:

a = [1., 2., 3.] equality_bitcast = tf.bitcast(a, tf.complex128) Traceback (most recent call last): ... InvalidArgumentError: No se puede convertir de 1 a 18 [Op: Bitcast ] equality_cast = tf.cast(a, tf.complex128) print(equality_cast) tf.Tensor([1.+0.j 2.+0.j 3.+0.j], shape=(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.] equality = tf.equal(x, y) equality_cast = tf.cast(equality, tf.float32) equality_bitcast = tf.bitcast(equality_cast, tf.uint8) print(equality) tf.Tensor([False True True], shape=(3,), dtype=bool) print(equality_cast) tf.Tensor([0. 1. 1.], shape=(3,), dtype=float32) print(equality_bitcast) tf.Tensor( [[ 0 0 0 0] [ 0 0 128 63] [ 0 0 128 63]], shape=(3, 4), dtype=uint8)

NOTA : Bitcast se implementa como una conversión de bajo nivel, por lo que las máquinas con diferentes ordenamientos de bytes darán resultados diferentes.

Argumentos:

Devoluciones:

  • Output : El tensor de salida.

Constructores y destructores

Bitcast (const :: tensorflow::Scope & scope, :: tensorflow::Input input, DataType type)

Atributos públicos

operation
output

Funciones públicas

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Atributos públicos

operación

Operation operation

producción

::tensorflow::Output output

Funciones públicas

Lanzamiento de datos

 Bitcast(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  DataType type
)

nodo

::tensorflow::Node * node() const 

operador::tensorflow::Input

 operator::tensorflow::Input() const 

operador::tensorflow::Salida

 operator::tensorflow::Output() const