টেনসরফ্লো :: অপস:: MatrixDiagPartV2

#include <array_ops.h>

একটি ব্যাচ করা টেনসরের ব্যাচ করা তির্যক অংশ প্রদান করে।

সারাংশ

ব্যাচ করা input k[0] -th থেকে k[1] -th কর্ণ সহ একটি টেনসর প্রদান করে।

অনুমান করুন 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 হলে, আউটপুট টেনসরটি আকৃতি [I, J, ..., L, max_diag_len] এবং মান সহ r - 1 হয়:

diagonal[i, j, ..., l, n]
 
= input[i, j, ..., l, n+y, n+x] ; when 0 <= n-y < M and 0 <= n-x < N,
   
0                             ; otherwise.
যেখানে y = max(-k[1], 0) , x = max(k[1], 0)

অন্যথায়, আউটপুট টেনসরের মান সহ মাত্রা [I, J, ..., L, num_diags, max_diag_len] সহ r রয়েছে:

diagonal[i, j, ..., l, m, n]
 
= input[i, j, ..., l, n+y, n+x] ; when 0 <= n-y < M and 0 <= n-x < N,
   
0                             ; 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 = 9
tf
.matrix_diag_part(input, k = (1, 3), padding = 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] এর চেয়ে বড় হবে না।
  • padding_value: যে মান দিয়ে নির্দিষ্ট তির্যক ব্যান্ডের বাইরের এলাকা পূরণ করতে হবে। ডিফল্ট 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 

অপারেটর::টেনসরফ্লো::ইনপুট

 operator::tensorflow::Input() const 

অপারেটর::টেনসরফ্লো::আউটপুট

 operator::tensorflow::Output() const