faster and more numerically stable than computing the
     pseudoinverse explicitly.
Note:
 This function has NumPy compatible variant *linalg.pinv(A, rcond,
 hermitian=False)*. However, use of the positional argument
 "rcond" is deprecated in favor of "rtol".

Warning:
 This function uses internally "torch.linalg.svd()" (or
 "torch.linalg.eigh()" when "hermitian"*= True*), so its
 derivative has the same problems as those of these functions. See
 the warnings in "torch.linalg.svd()" and "torch.linalg.eigh()"
 for more details.

See also:
 "torch.linalg.inv()" computes the inverse of a square matrix.

 "torch.linalg.lstsq()" computes "A"*.pinv() @ *"B" with a
 numerically stable algorithm.

Parameters:
      * A (Tensor) -- tensor of shape (, m, n)* where *** is
        zero or more batch dimensions.
  * **rcond** (*float**, **Tensor**, **optional*) -- [NumPy
    Compat]. Alias for "rtol". Default: *None*.

Keyword Arguments: