Bitcast

الطبقة النهائية العامة Bitcast

يقوم ببث موتر من نوع إلى آخر دون نسخ البيانات.

بالنظر إلى موتر "إدخال"، تُرجع هذه العملية موترًا له نفس بيانات المخزن المؤقت مثل "الإدخال" مع نوع البيانات "type".

إذا كان نوع بيانات الإدخال `T` أكبر من نوع بيانات الإخراج `type`، فسيتغير الشكل من [...] إلى [..., sizeof(`T`)/sizeof(`type`)].

إذا كان `T` أصغر من `type`، فإن عامل التشغيل يتطلب أن يكون البعد الموجود في أقصى اليمين مساويًا لـ sizeof(`type`)/sizeof(`T`). ينتقل الشكل بعد ذلك من [..., sizeof(`type`)/sizeof(`T`)] إلى [...].

يعمل tf.bitcast() وtf.cast() بشكل مختلف عندما يتم تحويل dtype الحقيقي إلى dtype معقد (على سبيل المثال tf.complex64 أو tf.complex128) حيث يقوم tf.cast() بإنشاء الجزء التخيلي 0 بينما يعطي tf.bitcast() الوحدة النمطية خطأ. على سبيل المثال،

مثال 1:

>>> a = [1., 2., 3.] >>>equality_bitcast = tf.bitcast(a, tf.complex128) Traceback (أحدث مكالمة الأخيرة): ... InvalidArgumentError: لا يمكن البث من 1 إلى 18 [ Op:Bitcast] >>>equality_cast = tf.cast(a, tf.complex128) >>> print(equality_cast) tf.Tensor([1.+0.j 2.+0.j 3.+0.j] ، الشكل=(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) >>>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]]، الشكل=(3، 4)، dtype=uint8)

ملاحظة : يتم تطبيق Bitcast كإرسال منخفض المستوى، وبالتالي فإن الأجهزة ذات الترتيب النهائي المختلف ستعطي نتائج مختلفة. يتم إجراء نسخة من المخزن المؤقت للإدخال إلى المخزن المؤقت للإخراج على أجهزة BE عندما تكون الأنواع ذات أحجام مختلفة للحصول على نفس نتائج الصب كما في أجهزة LE.

الأساليب العامة

الإخراج <U>
كإخراج ()
إرجاع المقبض الرمزي للموتر.
ثابت <U، T> البث الثنائي <U>
إنشاء (نطاق النطاق ، إدخال المعامل <T>، نوع الفئة <U>)
طريقة المصنع لإنشاء فئة تغلف عملية Bitcast جديدة.
الإخراج <U>

الطرق الموروثة

الأساليب العامة

الإخراج العام <U> كإخراج ()

إرجاع المقبض الرمزي للموتر.

المدخلات إلى عمليات TensorFlow هي مخرجات عملية TensorFlow أخرى. يتم استخدام هذه الطريقة للحصول على مقبض رمزي يمثل حساب الإدخال.

إنشاء البث الثنائي الثابت العام <U> (نطاق النطاق ، وإدخال المعامل <T>، ونوع الفئة <U>)

طريقة المصنع لإنشاء فئة تغلف عملية Bitcast جديدة.

حدود
نِطَاق النطاق الحالي
عائدات
  • مثيل جديد من Bitcast

الإخراج العام <U> الإخراج ()