TriangularSolve

TriangularSolve classe final pública

Resolve sistemas de equações lineares com matrizes triangulares superiores ou inferiores por substituição reversa.

`matriz` é um tensor de forma` [..., M, M] `cujas 2 dimensões mais internas formam matrizes quadradas. Se `inferior` for` verdadeiro`, a parte triangular estritamente superior de cada matriz mais interna é considerada zero e não acessada. Se `inferior` for False, a parte triangular estritamente inferior de cada matriz mais interna será considerada zero e não será acessada. `rhs` é um tensor de forma` [..., M, N] `.

A saída é um tensor de forma `[..., M, N]`. Se `adjoint` for` True`, então as matrizes mais internas em `output` satisfazem as equações matriciais` matrix [...,:,:] * output [...,:,:] = rhs [...,:, :] `. Se `adjoint` for` False` então estritamente então as matrizes mais internas em `output` satisfazem as equações de matriz` adjoint (matrix [..., i, k]) * output [..., k, j] = rhs [ ..., i, j] `.

Observe, as formas de lote para as entradas só precisam ser transmitidas.

Exemplo:

a = tf.constant([[3,  0,  0,  0],
                  [2,  1,  0,  0],
                  [1,  0,  1,  0],
                  [1,  1,  1,  1]], dtype=tf.float32)
 
 b = tf.constant([[4],
                  [2],
                  [4],
                  [2]], dtype=tf.float32)
 
 x = tf.linalg.triangular_solve(a, b, lower=True)
 x
 # <tf.Tensor: shape=(4, 1), dtype=float32, numpy=
 # array([[ 1.3333334 ],
 #        [-0.66666675],
 #        [ 2.6666665 ],
 #        [-1.3333331 ]], dtype=float32)>
 
 # in python3 one can use `a@x`
 tf.matmul(a, x)
 # <tf.Tensor: shape=(4, 1), dtype=float32, numpy=
 # array([[4.       ],
 #        [2.       ],
 #        [4.       ],
 #        [1.9999999]], dtype=float32)>
 

Classes aninhadas

classe TriangularSolve.Options Atributos opcionais para TriangularSolve

Constantes

Fragmento OP_NAME O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Métodos Públicos

estáticos TriangularSolve.Options
adjunta (adjunta booleana)
Output <T>
asOutput ()
Retorna o identificador simbólico do tensor.
estática <T estende TType > TriangularSolve <T>
criar ( Scope escopo, Operando <T> matriz, operando <T> rhs, Options ... Opções)
Método de fábrica para criar uma classe envolvendo uma nova operação TriangularSolve.
estáticos TriangularSolve.Options
abaixar (booleano inferior)
Output <T>
saída ()
A forma é `[..., M, K]`.

Métodos herdados

Constantes

nome_op final String public static

O nome desta operação, conforme conhecido pelo motor principal TensorFlow

Valor constante: "MatrixTriangularSolve"

Métodos Públicos

public static TriangularSolve.Options adjunta (adjunta Boolean)

Parâmetros
anexo Booleano que indica se deve ser resolvido com `matriz` ou seu adjunto (em bloco).

pública Output <T> asOutput ()

Retorna o identificador simbólico do tensor.

As entradas para as operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.

public static TriangularSolve <T> create ( Scope escopo, Operando <T> matriz, operando <T> rhs, Options ... Opções)

Método de fábrica para criar uma classe envolvendo uma nova operação TriangularSolve.

Parâmetros
alcance escopo atual
matriz A forma é `[..., M, M]`.
rhs A forma é `[..., M, K]`.
opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância de TriangularSolve

public static TriangularSolve.Options baixar (Boolean inferior)

Parâmetros
diminuir Booleano que indica se as matrizes mais internas em `matriz` são triangulares inferior ou superior.

pública Output <T> de saída ()

A forma é `[..., M, K]`.