جریان تنسور:: عملیات:: بیت کست

#include <array_ops.h>

یک تانسور را از یک نوع به نوع دیگر بدون کپی کردن داده ارسال می کند.

خلاصه

با توجه به input تانسور، این عملیات تانسوری را برمی‌گرداند که داده‌های بافری مشابه input با type داده دارد.

اگر نوع داده ورودی 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.]quality_bitcast = tf.bitcast(a, tf.complex128) Traceback (آخرین تماس اخیر): ... InvalidArgumentError: از 1 تا 18 بیتکست امکان پذیر نیست [Op: Bitcast ]quality_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.] برابری= tf.equal(x,y)quality_cast = tf.cast(equality,tf.float32)quality_bitcast = tf. bitcast(equality_cast,tf.uint8) print(equality) tf.Tensor([False 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 

عملگر::tensorflow::ورودی

 operator::tensorflow::Input() const 

عملگر::tensorflow::خروجی

 operator::tensorflow::Output() const