MatrixDiagPart

सार्वजनिक अंतिम वर्ग मैट्रिक्सडायगपार्ट

बैच किए गए टेंसर का बैच विकर्ण भाग लौटाता है।

बैच किए गए `इनपुट` के `k[0]`-वें से `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.
 
जहां `y = max(-k) है [1], 0)`, `x = अधिकतम(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]]]
 

स्थिरांक

डोरी OP_NAME इस ऑप का नाम, जैसा कि TensorFlow कोर इंजन द्वारा जाना जाता है

सार्वजनिक तरीके

आउटपुट <T>
आउटपुट के रूप में ()
टेंसर का प्रतीकात्मक हैंडल लौटाता है।
स्थिर <टी टीटाइप > मैट्रिक्सडिआगपार्ट <टी> का विस्तार करता है
बनाएं ( स्कोप स्कोप, ऑपरेंड <T> इनपुट, ऑपरेंड < TInt32 > k, ऑपरेंड <T> पैडिंगवैल्यू)
एक नए मैट्रिक्सडिआगपार्ट ऑपरेशन को लपेटकर एक क्लास बनाने की फ़ैक्टरी विधि।
आउटपुट <T>
विकर्ण ()
निकाले गए विकर्ण.

विरासत में मिली विधियाँ

स्थिरांक

सार्वजनिक स्थैतिक अंतिम स्ट्रिंग OP_NAME

इस ऑप का नाम, जैसा कि TensorFlow कोर इंजन द्वारा जाना जाता है

स्थिर मान: "MatrixDiagPartV2"

सार्वजनिक तरीके

सार्वजनिक आउटपुट <T> asOutput ()

टेंसर का प्रतीकात्मक हैंडल लौटाता है।

TensorFlow संचालन के इनपुट किसी अन्य TensorFlow ऑपरेशन के आउटपुट हैं। इस पद्धति का उपयोग एक प्रतीकात्मक हैंडल प्राप्त करने के लिए किया जाता है जो इनपुट की गणना का प्रतिनिधित्व करता है।

सार्वजनिक स्थैतिक मैट्रिक्सडिआगपार्ट <T> बनाएं ( स्कोप स्कोप, ऑपरेंड <T> इनपुट, ऑपरेंड < TInt32 > k, ऑपरेंड <T> पैडिंगवैल्यू)

एक नए मैट्रिक्सडिआगपार्ट ऑपरेशन को लपेटकर एक क्लास बनाने की फ़ैक्टरी विधि।

पैरामीटर
दायरा वर्तमान दायरा
इनपुट रैंक `r` टेंसर जहां `r >= 2`।
विकर्ण ऑफसेट। सकारात्मक मान का अर्थ है सुपरविकर्ण, 0 मुख्य विकर्ण को संदर्भित करता है, और नकारात्मक मान का अर्थ है उपविकर्ण। `k` एक एकल पूर्णांक (एकल विकर्ण के लिए) या मैट्रिक्स बैंड के निम्न और उच्च सिरों को निर्दिष्ट करने वाले पूर्णांकों की एक जोड़ी हो सकता है। `k[0]` `k[1]` से बड़ा नहीं होना चाहिए।
पैडिंगवैल्यू निर्दिष्ट विकर्ण बैंड के बाहर के क्षेत्र को भरने का मान। डिफ़ॉल्ट 0 है.
रिटर्न
  • मैट्रिक्सडायगपार्ट का एक नया उदाहरण

सार्वजनिक आउटपुट <T> विकर्ण ()

निकाले गए विकर्ण.