TriangularSolve

TriangularSolve public final class

Resuelve sistemas de ecuaciones lineales con matrices triangulares superiores o inferiores mediante sustitución inversa.

`matrix` es un tensor de forma` [..., M, M] `cuyas 2 dimensiones más internas forman matrices cuadradas. Si "lower" es "True", entonces se supone que la parte triangular estrictamente superior de cada matriz más interna es cero y no se accede a ella. Si `lower` es False, se supone que la parte triangular estrictamente inferior de cada matriz más interna es cero y no se accede a ella. `rhs` es un tensor de forma` [..., M, N] `.

La salida es un tensor de forma "[..., M, N]". Si `adjoint` es` True`, entonces las matrices más internas en `output` satisfacen las ecuaciones matriciales` matrix [...,:,:] * output [...,:,:] = rhs [...,:, :] `. Si `adjoint` es` False` entonces estrictamente entonces las matrices más internas en `output` satisfacen las ecuaciones matriciales` adjoint (matrix [..., i, k]) * output [..., k, j] = rhs [ ..., yo, j] `.

Tenga en cuenta que las formas de lote para las entradas solo deben transmitirse.

Ejemplo:

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)>
 

Clases anidadas

clase TriangularSolve.Options Los atributos opcionales para TriangularSolve

Constantes

Cuerda OP_NAME El nombre de esta operación, como lo conoce el motor central de TensorFlow

Métodos públicos

estáticas TriangularSolve.Options
adjunto (adjunto Boolean)
Salida <T>
asOutput ()
Devuelve el identificador simbólico del tensor.
estática <T se extiende Ttype > TriangularSolve <T>
crear ( Alcance alcance, operando <T> matriz, operando <T> lado derecho, Opciones ... Opciones)
Método de fábrica para crear una clase que envuelva una nueva operación TriangularSolve.
estáticas TriangularSolve.Options
bajar (Boolean inferior)
Salida <T>
salida ()
La forma es "[..., M, K]".

Métodos heredados

Constantes

OP_NAME pública final static String

El nombre de esta operación, como lo conoce el motor central de TensorFlow

Valor constante: "MatrixTriangularSolve"

Métodos públicos

estáticas pública TriangularSolve.Options adjunto (adjunto booleana)

Parámetros
adjunto Booleano que indica si resolver con `matrix` o su adjunto (en bloques).

pública de salida <T> asOutput ()

Devuelve el identificador simbólico del tensor.

Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.

public static TriangularSolve <T> crear ( Alcance alcance, operando <T> matriz, operando <T> lado derecho, Opciones ... Opciones)

Método de fábrica para crear una clase que envuelva una nueva operación TriangularSolve.

Parámetros
alcance alcance actual
matriz La forma es "[..., M, M]".
rhs La forma es "[..., M, K]".
opciones lleva valores de atributos opcionales
Devoluciones
  • una nueva instancia de TriangularSolve

estáticas pública TriangularSolve.Options inferior (booleano bajar)

Parámetros
más bajo Booleano que indica si las matrices más internas en "matrix" son triangulares inferiores o superiores.

pública de salida <T> salida ()

La forma es "[..., M, K]".