tensorflow :: ops :: Bitcast

#include <array_ops.h>

Bitcasts um tensor de um tipo para outro sem copiar dados.

Resumo

Dada uma input tensor, esta operação retorna um tensor que tem os mesmos dados de buffer da input com type dados.

Se o tipo de dados de entrada T for maior do que o type dados de saída, a forma muda de [...] para [..., sizeof ( T ) / sizeof ( type )].

Se T for menor que type , o operador exige que a dimensão mais à direita seja igual a sizeof ( type ) / sizeof ( T ). A forma então vai de [..., sizeof ( type ) / sizeof ( T )] a [...].

tf.bitcast () e tf.cast () funcionam de maneira diferente quando dtype real é convertido como um dtype complexo (por exemplo, tf.complex64 ou tf.complex128), pois tf.cast () faz parte imaginária 0 enquanto tf.bitcast () fornece módulo erro. Por exemplo,

Exemplo 1:

>>> a = [1., 2., 3.]
>>> equality_bitcast = tf.bitcast(a,tf.complex128)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Cannot bitcast from float to complex128: shape [3] [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)
Exemplo 2:
>>> tf.bitcast(tf.constant(0xffffffff, dtype=tf.uint32), tf.uint8)

Exemplo 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 : O Bitcast é implementado como um elenco de baixo nível, portanto, máquinas com diferentes ordens de endian fornecerão resultados diferentes.

Argumentos:

Retorna:

  • Output : o tensor de saída.

Construtores e Destruidores

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

Atributos públicos

operation
output

Funções públicas

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

Atributos públicos

Operação

Operation operation

resultado

::tensorflow::Output output

Funções públicas

Bitcast

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

::tensorflow::Node * node() const 

operador :: tensorflow :: Input

 operator::tensorflow::Input() const 

operador :: tensorflow :: Saída

 operator::tensorflow::Output() const