TriangularSolve

clase final pública TriangularSolve

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

`matriz` es un tensor de forma `[..., M, M]` cuyas 2 dimensiones más internas forman matrices cuadradas. Si "inferior" es "Verdadero", entonces se supone que la parte triangular estrictamente superior de cada matriz más interna es cero y no se accede a ella. Si "inferior" es Falso, entonces 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 `adjunto` es `Verdadero`, entonces las matrices más internas en `salida` satisfacen las ecuaciones matriciales `matriz[..., :, :] * salida[..., :, :] = rhs[..., :, :]`. Si `adjoint` es `False`, entonces estrictamente las matrices más internas en `output` satisfacen las ecuaciones matriciales `adjoint(matriz[..., i, k]) * salida[..., k, j] = rhs[ ..., yo, j]`.

Tenga en cuenta que las formas por lotes para las entradas solo necesitan 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 Opciones de solución triangular Atributos opcionales para TriangularSolve

Constantes

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

Métodos públicos

Opciones de resolución triangular estáticas
adjunto (adjunto booleano)
Salida <T>
como salida ()
Devuelve el identificador simbólico del tensor.
estático <T extiende TType > TriangularSolve <T>
crear (alcance alcance , matriz de operando <T>, operando <T> rhs, opciones... opciones)
Método de fábrica para crear una clase que envuelve una nueva operación TriangularSolve.
Opciones de resolución triangular estáticas
inferior (booleano inferior)
Salida <T>
producción ()
La forma es `[..., M, K]`.

Métodos heredados

Constantes

Cadena final estática pública OP_NAME

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

Valor constante: "MatrixTriangularSolve"

Métodos públicos

Adjunto público estático TriangularSolve.Options (adjunto booleano)

Parámetros
adjunto Booleano que indica si se debe resolver con `matriz` o su adjunto (por bloques).

Salida pública <T> como Salida ()

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.

pública estática TriangularSolve <T> crear (alcance alcance , matriz de operando <T>, operando <T> rhs, opciones... opciones)

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

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

TriangularSolve.Options estático público inferior (booleano inferior)

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

Salida pública <T> salida ()

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