टेंसरफ़्लो:: ऑप्स:: बिटकास्ट

#include <array_ops.h>

डेटा को कॉपी किए बिना एक टेंसर को एक प्रकार से दूसरे प्रकार में बिटकास्ट करता है।

सारांश

एक टेंसर input देखते हुए, यह ऑपरेशन एक टेंसर लौटाता है जिसमें डेटाटाइप type के साथ input के समान बफर डेटा होता है।

यदि इनपुट डेटाटाइप T आउटपुट डेटाटाइप type से बड़ा है तो आकार [...] से [..., sizeof( T )/sizeof( type )] में बदल जाता है।

यदि T type से छोटा है, तो ऑपरेटर के लिए आवश्यक है कि सबसे दाहिना आयाम sizeof( type )/sizeof( T ) के बराबर हो। फिर आकार [..., sizeof( type )/sizeof( T )] से [...] तक चला जाता है।

जब वास्तविक dtype को एक जटिल dtype (जैसे tf.complex64 या tf.complex128) के रूप में डाला जाता है तो tf.bitcast() और tf.cast() अलग-अलग काम करते हैं क्योंकि tf.cast() काल्पनिक भाग 0 बनाते हैं जबकि tf.bitcast() मॉड्यूल देता है गलती। उदाहरण के लिए,

उदाहरण 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)
उदाहरण 2:
>>> tf.bitcast(tf.constant(0xffffffff, dtype=tf.uint32), tf.uint8)

उदाहरण 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)

ध्यान दें : बिटकास्ट को निम्न-स्तरीय कास्ट के रूप में कार्यान्वित किया जाता है, इसलिए विभिन्न एंडियन ऑर्डर वाली मशीनें अलग-अलग परिणाम देंगी।

तर्क:

रिटर्न:

  • Output : आउटपुट टेंसर.

निर्माता और विध्वंसक

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

सार्वजनिक गुण

operation
output

सार्वजनिक समारोह

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

सार्वजनिक गुण

संचालन

Operation operation

आउटपुट

::tensorflow::Output output

सार्वजनिक समारोह

बिटकास्ट

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

नोड

::tensorflow::Node * node() const 

ऑपरेटर::टेन्सरफ़्लो::इनपुट

 operator::tensorflow::Input() const 

ऑपरेटर::टेन्सरफ़्लो::आउटपुट

 operator::tensorflow::Output() const