mindspore.ops.cholesky_inverse

mindspore.ops.cholesky_inverse(input_x, upper=False)[source]

Returns the inverse of the positive definite matrix using cholesky matrix factorization.

If upper is False, \(U\) is a lower triangular such that the output tensor is

\[inv = (UU^{T})^{-1}\]

If upper is True, \(U\) is an upper triangular such that the output tensor is

\[inv = (U^{T}U)^{-1}\]

Note

The input must be either an upper triangular matrix or a lower triangular matrix.

Parameters
  • input_x (Tensor) – The input tensor with a rank of 2. Supported dtypes: float32, float64.

  • upper (bool) – Whether to return a lower or upper triangular matrix. Default: False.

Returns

Tensor, has the same shape and dtype as input_x.

Raises
  • TypeError – If input_x is not a Tensor.

  • TypeError – If dtype of input_x is not one of: float32, float64.

  • ValueError – If the dimension of input_x is not equal to 2.

Supported Platforms:

GPU CPU

Examples

>>> input_x = Tensor(np.array([[2,0,0], [4,1,0], [-1,1,2]]), mindspore.float32)
>>> output = ops.cholesky_inverse(input_x)
>>> print(output)
[[ 5.8125 -2.625   0.625 ]
 [-2.625   1.25   -0.25  ]
 [ 0.625  -0.25    0.25  ]]