TriangularSolve

classe finale pubblica TriangularSolve

Risolve sistemi di equazioni lineari con matrici triangolari superiori o inferiori mediante sostituzione all'indietro.

`matrice` è un tensore di forma `[..., M, M]` le cui 2 dimensioni più interne formano matrici quadrate. Se "inferiore" è "Vero", si presuppone che la parte triangolare strettamente superiore di ciascuna matrice più interna sia zero e non sia possibile accedervi. Se "inferiore" è Falso, si presuppone che la parte triangolare strettamente inferiore di ciascuna matrice più interna sia zero e non sia accessibile. `rhs` è un tensore di forma `[..., M, N]`.

L'output è un tensore di forma `[..., M, N]`. Se `adjoint` è `True` allora le matrici più interne in `output` soddisfano le equazioni di matrice `matrix[..., :, :] * output[..., :, :] = rhs[..., :, :]`. Se `adjoint` è `False` allora le matrici più interne in `output` soddisfano rigorosamente le equazioni di matrice `adjoint(matrix[..., i, k]) * output[..., k, j] = rhs[ ..., i, j]`.

Tieni presente che le forme batch per gli input devono solo essere trasmesse.

Esempio:

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

Classi nidificate

classe TriangularSolve.Options Attributi facoltativi per TriangularSolve

Costanti

Corda OP_NAME Il nome di questa operazione, come noto al motore principale di TensorFlow

Metodi pubblici

TriangularSolve.Options statico
aggiunto (aggiunto booleano)
Uscita <T>
comeuscita ()
Restituisce l'handle simbolico del tensore.
statico <T estende TType > TriangularSolve <T>
create ( ambito ambito , matrice operando <T>, operando <T> destra, opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione TriangularSolve.
TriangularSolve.Options statico
inferiore (Booleano inferiore)
Uscita <T>
produzione ()
La forma è "[..., M, K]".

Metodi ereditati

Costanti

Stringa finale statica pubblica OP_NAME

Il nome di questa operazione, come noto al motore principale di TensorFlow

Valore costante: "MatrixTriangularSolve"

Metodi pubblici

public static TriangularSolve.Options aggiunto (aggiunto booleano)

Parametri
aggiunto Booleano che indica se risolvere con "matrice" o il suo aggiunto (a blocchi).

Uscita pubblica <T> asOutput ()

Restituisce l'handle simbolico del tensore.

Gli input per le operazioni TensorFlow sono output di un'altra operazione TensorFlow. Questo metodo viene utilizzato per ottenere un handle simbolico che rappresenta il calcolo dell'input.

public static TriangularSolve <T> create ( ambito ambito , matrice operando <T>, operando <T> destra, opzioni... opzioni)

Metodo factory per creare una classe che racchiude una nuova operazione TriangularSolve.

Parametri
portata ambito attuale
matrice La forma è "[..., M, M]".
ds La forma è "[..., M, K]".
opzioni trasporta valori di attributi opzionali
Ritorni
  • una nuova istanza di TriangularSolve

public static TriangularSolve.Options lower (Booleano inferiore)

Parametri
inferiore Booleano che indica se le matrici più interne in "matrix" sono triangolari inferiori o superiori.

Uscita pubblica <T> uscita ()

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