حاصلضرب را در امتداد بخش های یک تانسور محاسبه می کند.
برای توضیح بخشها [بخش تقسیمبندی] (https://tensorflow.org/api_docs/python/tf/math#Segmentation) را بخوانید.
تانسوری را طوری محاسبه می کند که \\(output_i = \prod_j data_j\\) جایی که محصول بیش از `j` است به طوری که `segment_ids[j] == i`.
اگر محصول برای شناسه بخش داده شده «i» خالی باشد، «خروجی[i] = 1».
توجه: این عملیات در حال حاضر فقط با jit_compile=True پشتیبانی می شود.
تنها تفاوت با SegmentProd ورودی اضافی «num_segments» است. این به ارزیابی شکل خروجی در زمان کامپایل کمک می کند. "num_segments" باید با segment_ids سازگار باشد. به عنوان مثال حداکثر(segment_ids) - 1 باید برابر با "num_segments" برای یک segment_ids 1-d باشد. با num_segments ناسازگار، عملیات همچنان اجرا می شود. تنها تفاوت این است که خروجی اندازه num_segments را صرف نظر از اندازه segment_ids و داده ها می گیرد. برای num_segments کمتر از اندازه خروجی مورد انتظار، آخرین عناصر برای num_segments بیشتر از اندازه خروجی مورد انتظار نادیده گرفته می شوند، آخرین عناصر 1 اختصاص داده می شود.
به عنوان مثال:
>>> @tf.function(jit_compile=True) ... def test(c): ... بازگشت tf.raw_ops.SegmentProdV2(data=c, segment_ids=tf.constant([0, 0, 1]), num_segments=2) >>> c = tf.constant([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]]) >>> test( c).numpy() آرایه([[4, 6, 6, 4], [5, 6, 7, 8]], dtype=int32)
روش های عمومی
خروجی <T> | asOutput () دسته نمادین یک تانسور را برمیگرداند. |
static <T، U تعداد را گسترش می دهد، V شماره را گسترش می دهد> SegmentProdV2 <T> | |
خروجی <T> | خروجی () شکلی مشابه داده دارد، به جز اولین ابعاد «segment_ids.rank»، که با یک بعد منفرد با اندازه «تعداد_بخش» جایگزین شده است. |
روش های ارثی
روش های عمومی
خروجی عمومی <T> asOutput ()
دسته نمادین یک تانسور را برمیگرداند.
ورودی های عملیات TensorFlow خروجی های عملیات تنسورفلو دیگر هستند. این روش برای به دست آوردن یک دسته نمادین که نشان دهنده محاسبه ورودی است استفاده می شود.
عمومی ایستا SegmentProdV2 <T> ایجاد ( Scope scope، Operand <T> داده، Operand <U> segmentIds، Operand <V> numSegments)
روش کارخانه برای ایجاد کلاسی که یک عملیات SegmentProdV2 جدید را بسته بندی می کند.
پارامترها
دامنه | محدوده فعلی |
---|---|
شناسه های بخش | یک تانسور 1 بعدی که اندازه آن برابر با اندازه بعد اول «داده» است. مقادیر باید مرتب شوند و قابل تکرار باشند. مقادیر باید کمتر از «تعداد_بخش» باشد. احتیاط: مقادیر همیشه برای مرتبسازی روی CPU تأیید میشوند، هرگز در GPU تأیید نمیشوند. |
برمی گرداند
- یک نمونه جدید از SegmentProdV2
خروجی عمومی <T> خروجی ()
شکلی مشابه داده دارد، به جز اولین ابعاد «segment_ids.rank»، که با یک بعد منفرد با اندازه «تعداد_بخش» جایگزین شده است.