torch.linalg.matrix_rank
torch.linalg.matrix_rank(A, *, atol=None, rtol=None, hermitian=False, out=None) -> Tensor
Computes the numerical rank of a matrix.
The matrix rank is computed as the number of singular values (or
   eigenvalues in absolute value when "hermitian"= True) that are
   greater than \max(\text{atol}, \sigma_1 * \text{rtol}) threshold,
   where \sigma_1 is the largest singular value (or eigenvalue).
Supports input of float, double, cfloat and cdouble dtypes. Also
   supports batches of matrices, and if "A" is a batch of matrices
   then the output has the same batch dimensions.
If "hermitian"= True, "A" is assumed to be Hermitian if complex
   or symmetric if real, but this is not checked internally. Instead,
   just the lower triangular part of the matrix is used in the
   computations.
If "rtol" is not specified and "A" is a matrix of dimensions (m,
   n), the relative tolerance is set to be \text{rtol} = \max(m, n)