Shortcuts

torch.cholesky_inverse

torch.cholesky_inverse(input, upper=False, *, out=None) → Tensor

Computes the inverse of a symmetric positive-definite matrix AA using its Cholesky factor uu: returns matrix inv. The inverse is computed using LAPACK routines dpotri and spotri (and the corresponding MAGMA routines).

If upper is False, uu is lower triangular such that the returned tensor is

inv=(uuT)1inv = (uu^{{T}})^{{-1}}

If upper is True or not provided, uu is upper triangular such that the returned tensor is

inv=(uTu)1inv = (u^T u)^{{-1}}
Parameters
  • input (Tensor) – the input 2-D tensor uu, a upper or lower triangular Cholesky factor

  • upper (bool, optional) – whether to return a lower (default) or upper triangular matrix

Keyword Arguments

out (Tensor, optional) – the output tensor for inv

Example:

>>> a = torch.randn(3, 3)
>>> a = torch.mm(a, a.t()) + 1e-05 * torch.eye(3) # make symmetric positive definite
>>> u = torch.cholesky(a)
>>> a
tensor([[  0.9935,  -0.6353,   1.5806],
        [ -0.6353,   0.8769,  -1.7183],
        [  1.5806,  -1.7183,  10.6618]])
>>> torch.cholesky_inverse(u)
tensor([[ 1.9314,  1.2251, -0.0889],
        [ 1.2251,  2.4439,  0.2122],
        [-0.0889,  0.2122,  0.1412]])
>>> a.inverse()
tensor([[ 1.9314,  1.2251, -0.0889],
        [ 1.2251,  2.4439,  0.2122],
        [-0.0889,  0.2122,  0.1412]])

Docs

Access comprehensive developer documentation for PyTorch

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources