Résout des systèmes d'équations linéaires avec des matrices triangulaires supérieures ou inférieures par rétrosubstitution.
`matrix` est un tenseur de forme `[..., M, M]` dont les 2 dimensions les plus intérieures forment des matrices carrées. Si « inférieur » est « Vrai », alors la partie triangulaire strictement supérieure de chaque matrice la plus interne est supposée être nulle et non accessible. Si « inférieur » est faux, alors la partie triangulaire strictement inférieure de chaque matrice la plus interne est supposée être nulle et non accessible. `rhs` est un tenseur de forme `[..., M, N]`.
La sortie est un tenseur de forme `[..., M, N]`. Si `adjoint` est `True` alors les matrices les plus internes de `output` satisfont aux équations matricielles `matrix[..., :, :] * output[..., :, :] = rhs[..., :, :]`. Si `adjoint` est `False` alors strictement alors les matrices les plus internes de `output` satisfont aux équations matricielles `adjoint(matrix[..., i, k]) * output[..., k, j] = rhs[ ..., je, j]`.
Notez que les formes de lots pour les entrées doivent uniquement être diffusées.
Exemple:
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 imbriquées
| classe | TriangularSolve.Options | Attributs facultatifs pour TriangularSolve | |
Constantes
| Chaîne | OP_NAME | Le nom de cette opération, tel que connu par le moteur principal TensorFlow | 
Méthodes publiques
| TriangularSolve.Options statique |  adjoint (booléen adjoint) | 
| Sortie <T> |  comme Sortie ()  Renvoie le handle symbolique du tenseur. | 
| statique <T étend TType > TriangularSolve <T> |  créer ( Scope scope, Opérande <T> matrice, Opérande <T> rhs, Options... options)  Méthode d'usine pour créer une classe encapsulant une nouvelle opération TriangularSolve. | 
| TriangularSolve.Options statique |  inférieur (booléen inférieur) | 
| Sortie <T> |  sortir ()  La forme est `[..., M, K]`.  | 
Méthodes héritées
Constantes
chaîne finale statique publique OP_NAME
Le nom de cette opération, tel que connu par le moteur principal TensorFlow
Méthodes publiques
public static TriangularSolve.Options adjoint (booléen adjoint)
Paramètres
| adjoint | Booléen indiquant s'il faut résoudre avec « matrice » ou son adjoint (par bloc). | 
|---|
sortie publique <T> asOutput ()
Renvoie le handle symbolique du tenseur.
Les entrées des opérations TensorFlow sont les sorties d'une autre opération TensorFlow. Cette méthode est utilisée pour obtenir un handle symbolique qui représente le calcul de l’entrée.
public static TriangularSolve <T> créer ( portée de portée, matrice d'opérande <T>, opérande <T> rhs, options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération TriangularSolve.
Paramètres
| portée | portée actuelle | 
|---|---|
| matrice | La forme est `[..., M, M]`. | 
| rhs | La forme est `[..., M, K]`. | 
| choix | porte des valeurs d'attributs facultatifs | 
Retours
- une nouvelle instance de TriangularSolve
public statique TriangularSolve.Options inférieur (booléen inférieur)
Paramètres
| inférieur | Booléen indiquant si les matrices les plus internes de « matrice » sont triangulaires inférieures ou supérieures. | 
|---|