قسمت مورب دسته بندی شده یک تانسور دسته ای را برمی گرداند.
تانسوری را با قطرهای «k[0]»-th به «k[1]»-امین «ورودی» دستهای برمیگرداند.
فرض کنید «ورودی» دارای ابعاد «r» است «[I، J، ...، L، M، N]». اجازه دهید "max_diag_len" حداکثر طول در بین تمام قطرهای استخراج شود، "max_diag_len = min(M + min(k[1], 0)، N + min(-k[0], 0))" اجازه دهید "num_diags" تعداد قطرهایی باشد که باید استخراج شوند، «num_diags = k[1] - k[0] + 1».
اگر "num_diags == 1" باشد، تانسور خروجی دارای رتبه "r - 1" با شکل "[I، J، ...، L، max_diag_len]" و مقادیر:
diagonal[i, j, ..., l, n]
= input[i, j, ..., l, n+y, n+x] ; if 0 <= n+y < M and 0 <= n+x < N,
padding_value ; otherwise.
در غیر این صورت، تانسور خروجی دارای رتبه «r» با ابعاد «[I، J، ...، L، num_diags، max_diag_len]» با مقادیر:
diagonal[i, j, ..., l, m, n]
= input[i, j, ..., l, n+y, n+x] ; if 0 <= n+y < M and 0 <= n+x < N,
padding_value ; otherwise.
ورودی باید حداقل یک ماتریس باشد.
به عنوان مثال:
input = np.array([[[1, 2, 3, 4], # Input shape: (2, 3, 4)
[5, 6, 7, 8],
[9, 8, 7, 6]],
[[5, 4, 3, 2],
[1, 2, 3, 4],
[5, 6, 7, 8]]])
# A main diagonal from each batch.
tf.matrix_diag_part(input) ==> [[1, 6, 7], # Output shape: (2, 3)
[5, 2, 7]]
# A superdiagonal from each batch.
tf.matrix_diag_part(input, k = 1)
==> [[2, 7, 6], # Output shape: (2, 3)
[4, 3, 8]]
# A tridiagonal band from each batch.
tf.matrix_diag_part(input, k = (-1, 1))
==> [[[2, 7, 6], # Output shape: (2, 3, 3)
[1, 6, 7],
[5, 8, 0]],
[[4, 3, 8],
[5, 2, 7],
[1, 6, 0]]]
# Padding value = 9
tf.matrix_diag_part(input, k = (1, 3), padding_value = 9)
==> [[[4, 9, 9], # Output shape: (2, 3, 3)
[3, 8, 9],
[2, 7, 6]],
[[2, 9, 9],
[3, 4, 9],
[4, 3, 8]]]
ثابت ها
رشته | OP_NAME | نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود |
روش های عمومی
روش های ارثی
بولی | برابر است (شیء arg0) |
کلاس نهایی<?> | getClass () |
بین المللی | هش کد () |
باطل نهایی | اطلاع رسانی () |
باطل نهایی | اطلاع رسانی به همه () |
رشته | toString () |
باطل نهایی | صبر کنید (long arg0، int arg1) |
باطل نهایی | صبر کنید (طولانی arg0) |
باطل نهایی | صبر کن () |
چکیده Execution Environment | env () محیط اجرایی را که این عملیات در آن ایجاد شده است برگردانید. |
عملیات انتزاعی |
ثابت ها
رشته نهایی ثابت عمومی OP_NAME
نام این عملیات، همانطور که توسط موتور هسته TensorFlow شناخته می شود
روش های عمومی
خروجی عمومی <T> asOutput ()
دسته نمادین تانسور را برمیگرداند.
ورودی های عملیات TensorFlow خروجی های عملیات تنسورفلو دیگر هستند. این روش برای به دست آوردن یک دسته نمادین که نشان دهنده محاسبه ورودی است استفاده می شود.
عمومی ایستا MatrixDiagPart <T> ایجاد ( دامنه دامنه ، ورودی عملوند <T>، عملوند < TINT32 > k، عملوند <T> paddingValue)
روش کارخانه برای ایجاد کلاسی که یک عملیات MatrixDiagPart جدید را بسته بندی می کند.
پارامترها
دامنه | محدوده فعلی |
---|---|
ورودی | تانسور `r` در جایی که `r >= 2` رتبه بندی کنید. |
ک | افست (های) مورب. مقدار مثبت به معنای ابر قطری، 0 به قطر اصلی و مقدار منفی به معنای قطرهای فرعی است. `k` می تواند یک عدد صحیح منفرد (برای یک مورب) یا یک جفت اعداد صحیح باشد که انتهای پایین و بالای یک باند ماتریس را مشخص می کند. «k[0]» نباید بزرگتر از «k[1]» باشد. |
paddingValue | مقداری که باید ناحیه خارج از نوار مورب مشخص شده را با آن پر کنید. پیش فرض 0 است. |
برمی گرداند
- یک نمونه جدید از MatrixDiagPart