אזהרה: API זו ברמה נמוכה יוסרה בגרסה עתידית של TensorFlow לאחר ההחלפה יציבה.

MatrixSetDiagV2

MatrixSetDiagV2 המעמד הסופי הציבור

מחזירה טנזור מטריצה ​​אצווה עם ערכי אלכסון אצווה חדשים.

בהינתן 'קלט' ו'אלכסון', פעולה זו מחזירה טנזור עם אותם צורה וערכים כמו 'קלט', למעט האלכסונים שצוינו של המטריצות הפנימיות ביותר. אלה יוחלפו על ידי הערכים ב'אלכסון'.

ל'קלט' יש ממדי 'r+1' '[I, J, ..., L, M, N]'. כאשר `k` הוא סקלרי או `k[0] == k[1]`, ל`אלכסון` יש ממדי `r` `[I, J, ..., L, max_diag_len]`. אחרת, יש לו ממדי `r+1` `[I, J, ..., L, num_diags, max_diag_len]`. `num_diags` הוא מספר האלכסונים, `num_diags = k[1] - k[0] + 1`. `max_diag_len` הוא האלכסון הארוך ביותר בטווח `[k[0], k[1]]`, `max_diag_len = min(M + min(k[1], 0), N + min(-k[0] , 0))`

הפלט הוא טנזור בדרגה `k+1` עם מידות `[I, J, ..., L, M, N]`. אם `k` הוא סקלר או` k [0] == k [1] ':

output[i, j, ..., l, m, n]
   = diagonal[i, j, ..., l, n-max(k[1], 0)] ; if n - m == k[1]
     input[i, j, ..., l, m, n]              ; otherwise
 
אחרת,
output[i, j, ..., l, m, n]
   = diagonal[i, j, ..., l, diag_index, index_in_diag] ; if k[0] <= d <= k[1]
     input[i, j, ..., l, m, n]                         ; otherwise
 
שבו' ד = n - ה- m, `diag_index = k [1] - d`, ו ' index_in_diag = n - max(d, 0)`.

לדוגמה:

# The main diagonal.
 input = np.array([[[7, 7, 7, 7],              # Input shape: (2, 3, 4)
                    [7, 7, 7, 7],
                    [7, 7, 7, 7]],
                   [[7, 7, 7, 7],
                    [7, 7, 7, 7],
                    [7, 7, 7, 7]]])
 diagonal = np.array([[1, 2, 3],               # Diagonal shape: (2, 3)
                      [4, 5, 6]])
 tf.matrix_set_diag(diagonal) ==> [[[1, 7, 7, 7],  # Output shape: (2, 3, 4)
                                    [7, 2, 7, 7],
                                    [7, 7, 3, 7]],
                                   [[4, 7, 7, 7],
                                    [7, 5, 7, 7],
                                    [7, 7, 6, 7]]]
 
 # A superdiagonal (per batch).
 tf.matrix_set_diag(diagonal, k = 1)
   ==> [[[7, 1, 7, 7],  # Output shape: (2, 3, 4)
         [7, 7, 2, 7],
         [7, 7, 7, 3]],
        [[7, 4, 7, 7],
         [7, 7, 5, 7],
         [7, 7, 7, 6]]]
 
 # A band of diagonals.
 diagonals = np.array([[[1, 2, 3],  # Diagonal shape: (2, 2, 3)
                        [4, 5, 0]],
                       [[6, 1, 2],
                        [3, 4, 0]]])
 tf.matrix_set_diag(diagonals, k = (-1, 0))
   ==> [[[1, 7, 7, 7],  # Output shape: (2, 3, 4)
         [4, 2, 7, 7],
         [0, 5, 3, 7]],
        [[6, 7, 7, 7],
         [3, 1, 7, 7],
         [7, 4, 2, 7]]]
 
 

שיטות ציבוריות

פלט <T>
asOutput ()
מחזירה את הידית הסמלית של טנזור.
סטטי <T> MatrixSetDiagV2 <T>
ליצור ( היקף היקף, האופרנד <T> קלט, האופרנד <T> אלכסוני, האופרנד <Integer> k)
שיטת מפעל ליצירת מחלקה העוטפת פעולת MatrixSetDiagV2 חדשה.
פלט <T>
פלט ()
דרג 'r+1', עם 'output.shape = input.shape'.

שיטות בירושה

שיטות ציבוריות

הציבור פלט <T> asOutput ()

מחזירה את הידית הסמלית של טנזור.

כניסות לפעולות TensorFlow הן פלט של פעולת TensorFlow אחרת. שיטה זו משמשת לקבלת ידית סמלית המייצגת את חישוב הקלט.

הציבור סטטי MatrixSetDiagV2 <T> ליצור ( היקף היקף, האופרנד <T> קלט, האופרנד <T> אלכסוני, האופרנד <Integer> k)

שיטת מפעל ליצירת מחלקה העוטפת פעולת MatrixSetDiagV2 חדשה.

פרמטרים
תְחוּם ההיקף הנוכחי
קֶלֶט דירוג `r+1`, כאשר `r >= 1`.
אֲלַכסוֹנִי דירוג `r` כאשר `k` הוא מספר שלם או `k[0] == k[1]`. אחרת, יש לו דירוג 'r+1'. `k >= 1`.
ק היסט אלכסוני(ים). ערך חיובי פירושו על-אלכסון, 0 מתייחס לאלכסון הראשי, וערך שלילי פירושו תת-אלכסונים. `k` יכול להיות מספר שלם בודד (עבור אלכסון בודד) או זוג מספרים שלמים המציינים את הקצוות הנמוכים והגבוהים של פס מטריצה. 'k[0]' לא יכול להיות גדול מ-'k[1]'.
החזרות
  • מופע חדש של MatrixSetDiagV2

הציבור פלט <T> פלט ()

דרג 'r+1', עם 'output.shape = input.shape'.