tensorflow :: operaciones :: MatrixDiag
#include <array_ops.h>Devuelve un tensor diagonal por lotes con valores diagonales por lotes dados.
Resumen
Dada una diagonal , esta operación devuelve un tensor con la diagonal y todo lo demás relleno con ceros. La diagonal se calcula de la siguiente manera:
Suponga que la diagonal tiene k dimensiones [I, J, K, ..., N] , entonces la salida es un tensor de rango k+1 con dimensiones [I, J, K, ..., N, N] `donde:
output[i, j, k, ..., m, n] = 1{m=n} * diagonal[i, j, k, ..., n] .
Por ejemplo:
# '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)
Argumentos:
- alcance: un objeto de alcance
- diagonal: Rango
k, dondek >= 1.
Devoluciones:
-
Output: Rangok+1, conoutput.shape = diagonal.shape + [diagonal.shape[-1]].
Constructores y Destructores | |
|---|---|
MatrixDiag (const :: tensorflow::Scope & scope, :: tensorflow::Input diagonal) |
Atributos públicos | |
|---|---|
operation | |
output | |
Funciones publicas | |
|---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const | |
Atributos públicos
operación
Operation operation
producción
::tensorflow::Output output
Funciones publicas
MatrixDiag
MatrixDiag( const ::tensorflow::Scope & scope, ::tensorflow::Input diagonal )
nodo
::tensorflow::Node * node() const
operador :: tensorflow :: Entrada
operator::tensorflow::Input() const
operador :: tensorflow :: Salida
operator::tensorflow::Output() const