يقوم ببث موتر من نوع إلى آخر دون نسخ البيانات.
بالنظر إلى موتر "إدخال"، تُرجع هذه العملية موترًا له نفس بيانات المخزن المؤقت مثل "الإدخال" مع نوع البيانات "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 كإرسال منخفض المستوى، وبالتالي فإن الأجهزة ذات الترتيب النهائي المختلف ستعطي نتائج مختلفة.
الثوابت
خيط | OP_NAME | اسم هذه العملية كما هو معروف بواسطة محرك TensorFlow الأساسي |
الأساليب العامة
الإخراج <U> | كإخراج () إرجاع المقبض الرمزي للموتر. |
ثابت <U يمتد TType > البث الثنائي <U> | |
الإخراج <U> | انتاج () |
الطرق الموروثة
الثوابت
السلسلة النهائية الثابتة العامة OP_NAME
اسم هذه العملية كما هو معروف بواسطة محرك TensorFlow الأساسي
الأساليب العامة
الإخراج العام <U> كإخراج ()
إرجاع المقبض الرمزي للموتر.
المدخلات إلى عمليات TensorFlow هي مخرجات عملية TensorFlow أخرى. يتم استخدام هذه الطريقة للحصول على مقبض رمزي يمثل حساب الإدخال.
إنشاء البث الثنائي الثابت العام <U> ( نطاق النطاق ، المعامل <؟ يمتد إدخال TType >، نوع الفئة <U>)
طريقة المصنع لإنشاء فئة تغلف عملية Bitcast جديدة.
حدود
نِطَاق | النطاق الحالي |
---|
عائدات
- مثيل جديد من Bitcast