當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch logdet用法及代碼示例


本文簡要介紹python語言中 torch.logdet 的用法。

用法:

torch.logdet(input) → Tensor

參數

input(Tensor) -大小為 (*, n, n) 的輸入張量,其中 * 是零個或多個批處理維度。

計算方陣或方陣批次的對數行列式。

注意

如果input 的對數行列式為零,則結果為-inf,如果input 的行列式為負,則結果為nan

注意

input 不可逆時,向後通過 logdet() 在內部使用 SVD 結果。在這種情況下,當 input 沒有明顯的奇異值時,通過 logdet() 進行雙倍向後將不穩定。詳情請參閱 svd()

例子:

>>> 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.org大神的英文原創作品 torch.logdet。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。