torch.logdet¶
- torch.logdet(input) Tensor¶
- Calculates log determinant of a square matrix or batches of square matrices. - It returns - -infif the input has a determinant of zero, and- NaNif it has a negative determinant.- Note - Backward through - logdet()internally uses SVD results when- inputis not invertible. In this case, double backward through- logdet()will be unstable in when- inputdoesn’t have distinct singular values. See- torch.linalg.svd()for details.- See also - torch.linalg.slogdet()computes the sign (resp. angle) and natural logarithm of the absolute value of the determinant of real-valued (resp. complex) square matrices.- Parameters
- input (Tensor) – the input tensor of size - (*, n, n)where- *is zero or more batch dimensions.
 - Example: - >>> A = torch.randn(3, 3) >>> torch.det(A) tensor(0.2611) >>> torch.logdet(A) tensor(-1.3430) >>> A tensor([[[ 0.9254, -0.6213], [-0.5787, 1.6843]], [[ 0.3242, -0.9665], [ 0.4539, -0.0887]], [[ 1.1336, -0.4025], [-0.7089, 0.9032]]]) >>> A.det() tensor([1.1990, 0.4099, 0.7386]) >>> A.det().log() tensor([ 0.1815, -0.8917, -0.3031])