当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.linalg.lu_matrix_inverse用法及代码示例


在给定一个或多个矩阵的 LU 分解的情况下计算逆。

用法

tf.linalg.lu_matrix_inverse(
    lower_upper, perm, validate_args=False, name=None
)

参数

  • lower_upper lutf.linalg.lu 返回,即如果 matmul(P, matmul(L, U)) = Xlower_upper = L + U - eye
  • perm ptf.linag.lu 返回,即如果 matmul(P, matmul(L, U)) = Xperm = argmax(P)
  • validate_args Python bool 指示是否应检查参数的正确性。注意:此函数不验证隐含矩阵实际上是可逆的,即使在 validate_args=True 时也是如此。默认值:False(即不验证参数)。
  • name Python str 赋予此对象管理的操作的名称。默认值:None(即'lu_matrix_inverse')。

返回

  • inv_x matrix_inv,即tf.matrix_inverse(tf.linalg.lu_reconstruct(lu, perm)).

这个操作在概念上等同于,

inv_X = tf.lu_matrix_inverse(*tf.linalg.lu(X))
tf.assert_near(tf.matrix_inverse(X), inv_X)
# ==> True

注意:此函数不验证隐含矩阵实际上是可逆的,即使在 validate_args=True 时也不检查此条件。

例子

import numpy as np
import tensorflow as tf
import tensorflow_probability as tfp

x = [[[3., 4], [1, 2]],
     [[7., 8], [3, 4]]]
inv_x = tf.linalg.lu_matrix_inverse(*tf.linalg.lu(x))
tf.assert_near(tf.matrix_inverse(x), inv_x)
# ==> True

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.linalg.lu_matrix_inverse。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。