dòng chảy :: hoạt động :: MatrixDiag

#include <array_ops.h>

Trả về tensor đường chéo theo lô với các giá trị đường chéo theo lô đã cho.

Tóm lược

Cho một diagonal , phép toán này trả về một tensor với diagonal và mọi thứ khác được đệm bằng số không. Đường chéo được tính như sau:

Giả sử diagonalk nguyên [I, J, K, ..., N] , thì đầu ra là một tenxơ có hạng k+1 với các kích thước [I, J, K, ..., N, N] `trong đó:

output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n] .

Ví dụ:

# 'diagonal' is [[1, 2, 3, 4], [5, 6, 7, 8]]

and diagonal.shape = (2, 4)

tf.matrix_diag(diagonal) ==> [[[1, 0, 0, 0]
                                     [0, 2, 0, 0]
                                     [0, 0, 3, 0]
                                     [0, 0, 0, 4]],
                                    [[5, 0, 0, 0]
                                     [0, 6, 0, 0]
                                     [0, 0, 7, 0]
                                     [0, 0, 0, 8]]]

which has shape (2, 4, 4)

Tranh luận:

  • phạm vi: Một đối tượng Phạm vi
  • đường chéo: Xếp hạng k , trong đó k >= 1 .

Lợi nhuận:

  • Output : Xếp hạng k+1 , với output.shape = diagonal.shape + [diagonal.shape[-1]] .

Người xây dựng và Người phá hủy

MatrixDiag (const :: tensorflow::Scope & scope, :: tensorflow::Input diagonal)

Thuộc tính công khai

operation
output

Chức năng công cộng

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Thuộc tính công khai

hoạt động

Operation operation

đầu ra

::tensorflow::Output output

Chức năng công cộng

MatrixDiag

 MatrixDiag(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input diagonal
)

nút

::tensorflow::Node * node() const 

toán tử :: tensorflow :: Đầu vào

 operator::tensorflow::Input() const 

toán tử :: tensorflow :: Đầu ra

 operator::tensorflow::Output() const