tensor akışı:: işlem:: MatrixSetDiagV2

#include <array_ops.h>

Yeni toplu çapraz değerlere sahip toplu matris tensörünü döndürür.

Özet

input ve diagonal verildiğinde, bu işlem, en içteki matrislerin belirtilen köşegenleri dışında, input ile aynı şekil ve değerlere sahip bir tensör döndürür. Bunların üzerine diagonal değerler yazılacaktır.

input r+1 boyutu vardır [I, J, ..., L, M, N] . k skaler olduğunda veya k[0] == k[1] olduğunda, diagonal r boyutlara sahiptir [I, J, ..., L, max_diag_len] . Aksi takdirde, r+1 boyutları vardır [I, J, ..., L, num_diags, max_diag_len] . num_diags köşegenlerin sayısıdır, num_diags = k[1] - k[0] + 1 . max_diag_len [k[0], k[1]] aralığındaki en uzun köşegendir max_diag_len = min(M + min(k[1], 0), N + min(-k[0], 0))

Çıkış [I, J, ..., L, M, N] boyutlarına sahip k+1 dereceli bir tensördür. Eğer k skaler veya k[0] == k[1] :

output[i, j, ..., l, m, n]
 
= diagonal[i, j, ..., l, n-max(k[1], 0)] ; if n - m == k[1]
    output
[i, j, ..., l, m, n]             ; otherwise

Aksi takdirde,

output[i, j, ..., l, m, n]
 
= diagonal[i, j, ..., l, k[1]-d, n-max(d, 0)] ; if d_lower <= d <= d_upper
    input
[i, j, ..., l, m, n]                   ; otherwise
burada d = n - m

Örneğin:

# 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_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_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_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]]]

  


 

Arguments:


         
  • scope: A Scope object

  •      
  • input: Rank r+1, where r >= 1.

  •      
  • diagonal: Rank r when k is an integer or k[0] == k[1]. Otherwise, it has rank r+1. k >= 1.

  •      
  • k: Diagonal offset(s). Positive value means superdiagonal, 0 refers to the main diagonal, and negative value means subdiagonals. k can be a single integer (for a single diagonal) or a pair of integers specifying the low and high ends of a matrix band. k[0] must not be larger than k[1].

  •    


 

Returns:


         
  • Output: Rank r+1, with output.shape = input.shape.

  •    


 

   

     

   

   

     

   

 

       

Constructors and Destructors


     

       
MatrixSetDiagV2(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input diagonal, ::tensorflow::Input k)
       

     

 

   

     

   

   

     

     

   

   

     

     

   

 

       

Public attributes


     

       
operation
     

       

         
Operation
       

     

       
output
     

       

         
::tensorflow::Output
       

     

 

   

     

   

   

     

     

   

   

     

     

   

   

     

     

   

 

       

Public functions


     

       
node() const
     

       

         
::tensorflow::Node *
       

     

       
operator::tensorflow::Input() const
     

       

         

       

     

       
operator::tensorflow::Output() const
     

       

         

       

     

 

Public attributes


 

   

operation


   

çıktı

 

Kamu işlevleri

 MatrixSetDiagV2

 

düğüm

 

 operatör::tensorflow::Giriş

 

 operatör::tensorflow::Çıktı