快捷方式

torch.logdet

torch.logdet(input) Tensor

计算方阵或方阵批次的日志行列式。

如果输入的行列式为零,则返回 -inf,如果输入的行列式为负,则返回 NaN

注意

通过 logdet() 的反向传播在 input 不可逆时内部使用 SVD 结果。在这种情况下,通过 logdet() 的双重反向传播在 input 没有不同的奇异值时将不稳定。有关详细信息,请参阅 torch.linalg.svd()

另请参阅

torch.linalg.slogdet() 计算实值(或复数)方阵的行列式的符号(或角度)和绝对值的自然对数。

参数

input (Tensor) – 大小为 (*, n, n) 的输入张量,其中 * 为零个或多个批次维度。

示例

>>> 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])

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源