تدفق التوتر:: العمليات:: MatrixDiagPartV2
#include <array_ops.h>
إرجاع الجزء القطري المجمع من موتر مجمع.
ملخص
يُرجع موترًا بأقطار k[0]
-th إلى k[1]
-th input
المجمع.
افترض أن input
له أبعاد 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.
y = max(-k[1], 0)
, x = max(k[1], 0)
. بخلاف ذلك، فإن موتر الخرج له رتبة 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.
d = k[1] - m
و y = max(-d, 0)
و x = max(d, 0)
.يجب أن يكون الإدخال مصفوفة على الأقل.
على سبيل المثال:
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]]]
الحجج:
- النطاق: كائن النطاق
- الإدخال: رتبة موتر
r
حيثr >= 2
. - k: الإزاحة القطرية. القيمة الموجبة تعني القطر الفائق، 0 تشير إلى القطر الرئيسي، والقيمة السالبة تعني الأقطار الفرعية. يمكن أن يكون
k
عددًا صحيحًا واحدًا (لقطر واحد) أو زوجًا من الأعداد الصحيحة التي تحدد الأطراف المنخفضة والعالية لنطاق المصفوفة. يجب ألا يكونk[0]
أكبر منk[1]
. - قيمة الحشو: القيمة المراد ملء المنطقة خارج النطاق القطري المحدد بها. الافتراضي هو 0.
العوائد:
-
Output
: القطر (القطريات) المستخرج.
البنائين والمدمرين | |
---|---|
MatrixDiagPartV2 (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input k, :: tensorflow::Input padding_value) |
الصفات العامة | |
---|---|
diagonal | |
operation |
الوظائف العامة | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
الصفات العامة
قطري
::tensorflow::Output diagonal
عملية
Operation operation
الوظائف العامة
MatrixDiagPartV2
MatrixDiagPartV2( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input k, ::tensorflow::Input padding_value )
العقدة
::tensorflow::Node * node() const
المشغل::tensorflow::الإدخال
operator::tensorflow::Input() const
المشغل::tensorflow::الإخراج
operator::tensorflow::Output() const
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2024-11-24 (حسب التوقيت العالمي المتفَّق عليه)