جریان تنسور:: عملیات:: MatrixDiag
#include <array_ops.h>
یک تانسور مورب دستهای را با مقادیر مورب دستهای داده شده برمیگرداند.
خلاصه
با توجه به یک diagonal
، این عملیات یک تانسور با diagonal
و هر چیز دیگری که با صفر پر شده است را برمی گرداند. قطر به صورت زیر محاسبه می شود:
فرض کنید diagonal
k
ابعاد دارد [I, J, K, ..., N]
، سپس خروجی یک تانسور رتبه k+1
با ابعاد [I، J، K، ...، N، N]» است که در آن:
output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n]
.
به عنوان مثال:
# '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)
استدلال ها:
- scope: یک شی Scope
- مورب: رتبه
k
، که در آنk >= 1
.
برمیگرداند:
-
Output
: رتبهk+1
، باoutput.shape = diagonal.shape + [diagonal.shape[-1]]
.
سازندگان و ویرانگرها | |
---|---|
MatrixDiag (const :: tensorflow::Scope & scope, :: tensorflow::Input diagonal) |
توابع عمومی | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
صفات عمومی
عملیات
Operation operation
خروجی
::tensorflow::Output output
توابع عمومی
MatrixDiag
MatrixDiag( const ::tensorflow::Scope & scope, ::tensorflow::Input diagonal )
گره
::tensorflow::Node * node() const
عملگر::tensorflow::ورودی
operator::tensorflow::Input() const
عملگر::tensorflow::خروجی
operator::tensorflow::Output() const