Bitcast

کلاس نهایی عمومی Bitcast

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

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

اگر نوع داده ورودی «T» بزرگتر از نوع داده خروجی «نوع» باشد، شکل از [...] به [..., 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.] >>> equality= tf.equal(x,y) >>> equality_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)

توجه : بیت‌کست به‌عنوان یک بازیگر سطح پایین پیاده‌سازی می‌شود، بنابراین ماشین‌هایی با سفارش‌های اندیان متفاوت نتایج متفاوتی خواهند داشت.

ثابت ها

رشته OP_NAME نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود

روش های عمومی

خروجی <U>
asOutput ()
دسته نمادین تانسور را برمی گرداند.
static <U TType را گسترش می دهد > Bitcast <U>
ایجاد (حوزه دامنه ، عملوند <? TType > ورودی، نوع کلاس<U> را گسترش می دهد)
روش کارخانه برای ایجاد کلاسی که عملیات بیتکست جدید را بسته بندی می کند.
خروجی <U>

روش های ارثی

ثابت ها

رشته نهایی ثابت عمومی OP_NAME

نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود

ارزش ثابت: "Bitcast"

روش های عمومی

خروجی عمومی <U> asOutput ()

دسته نمادین تانسور را برمی گرداند.

ورودی های عملیات TensorFlow خروجی های عملیات تنسورفلو دیگر هستند. این روش برای به دست آوردن یک دسته نمادین که نشان دهنده محاسبه ورودی است استفاده می شود.

Bitcast عمومی <U> ایجاد (حوزه دامنه ، عملوند <? TType > ورودی، نوع کلاس <U> را گسترش می دهد)

روش کارخانه برای ایجاد کلاسی که عملیات بیتکست جدید را بسته بندی می کند.

مولفه های
محدوده محدوده فعلی
برمی گرداند
  • نمونه جدیدی از Bitcast

خروجی عمومی <U> خروجی ()