tfp.math.lu_matrix_inverse | TensorFlow Probability (original) (raw)
tfp.math.lu_matrix_inverse
Computes a matrix inverse given the matrix's LU decomposition.
tfp.math.lu_matrix_inverse(
lower_upper, perm, validate_args=False, name=None
)
This op is conceptually identical to,
inv_X = tf.lu_matrix_inverse(*tf.linalg.lu(X))
tf.assert_near(tf.matrix_inverse(X), inv_X)
# ==> True
Args | |
---|---|
lower_upper | lu as returned by tf.linalg.lu, i.e., ifmatmul(P, matmul(L, U)) = X then lower_upper = L + U - eye. |
perm | p as returned by tf.linag.lu, i.e., ifmatmul(P, matmul(L, U)) = X then perm = argmax(P). |
validate_args | Python bool indicating whether arguments should be checked for correctness. Note: this function does not verify the implied matrix is actually invertible, even when validate_args=True. Default value: False (i.e., don't validate arguments). |
name | Python str name given to ops managed by this object. Default value: None (i.e., 'lu_matrix_inverse'). |
Returns | |
---|---|
inv_x | The matrix_inv, i.e.,tf.matrix_inverse(tfp.math.lu_reconstruct(lu, perm)). |
Examples
import numpy as np
import tensorflow as tf
import tensorflow_probability as tfp
x = [[[3., 4], [1, 2]],
[[7., 8], [3, 4]]]
inv_x = tfp.math.lu_matrix_inverse(*tf.linalg.lu(x))
tf.assert_near(tf.matrix_inverse(x), inv_x)
# ==> True
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-11-21 UTC.