Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

tensorflow :: ops :: Bitcast

#include <array_ops.h>

Bitcast tensor z jednego typu na inny bez kopiowania danych.

streszczenie

Biorąc pod uwagę input tensora, ta operacja zwraca tensor, który ma te same dane buforu, co dane input type danych.

Jeżeli typ danych wejściowych T jest większa niż wyjściowa typu danych type następnie zmienia kształt z [...] do [... sizeof ( T ) / sizeof ( type )].

Jeśli T jest mniejsze niż type , operator wymaga, aby skrajny prawy wymiar był równy sizeof ( type ) / sizeof ( T ). Kształt przechodzi następnie od […, sizeof ( type ) / sizeof ( T )] do […].

tf.bitcast () i tf.cast () działają inaczej, gdy prawdziwy dtype jest rzutowany jako złożony dtype (np. tf.complex64 lub tf.complex128) jako tf.cast () tworzy urojoną część 0, podczas gdy tf.bitcast () daje moduł błąd. Na przykład,

Przykład 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)
Przykład 2:
>>> tf.bitcast(tf.constant(0xffffffff, dtype=tf.uint32), tf.uint8)

Przykład 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)

UWAGA : Bitcast jest zaimplementowany jako rzut niskopoziomowy, więc maszyny o różnej kolejności endian dadzą różne wyniki.

Argumenty:

Zwroty:

Konstruktorzy i niszczyciele

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

Atrybuty publiczne

operation
output

Funkcje publiczne

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

Atrybuty publiczne

operacja

Operation operation

wynik

::tensorflow::Output output

Funkcje publiczne

Bitcast

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

węzeł

::tensorflow::Node * node() const 

operator :: tensorflow :: Input

 operator::tensorflow::Input() const 

operator :: tensorflow :: Output

 operator::tensorflow::Output() const