捷徑

torch.logsumexp

torch.logsumexp(input, dim, keepdim=False, *, out=None)

傳回給定維度 diminput 張量每列的指數和的對數。計算經過數值穩定化處理。

對於由 dim 給定的加總索引 jj 和其他索引 ii,結果為:

logsumexp(x)i=logjexp(xij)\text{logsumexp}(x)_{i} = \log \sum_j \exp(x_{ij})

如果 keepdimTrue,則輸出張量的大小與 input 相同,除了在維度 dim 中的大小為 1。 否則,dim 會被擠壓(參見 torch.squeeze()),導致輸出張量少 1 個(或 len(dim) 個)維度。

參數
  • input (Tensor) – 輸入張量。

  • dim (intintstuple, optional) – 要縮減的維度或多個維度。 如果 None,則會縮減所有維度。

  • keepdim (bool) – 輸出張量是否保留 dim

關鍵字參數

out (Tensor, optional) – 輸出張量。

範例

>>> a = torch.randn(3, 3)
>>> torch.logsumexp(a, 1)
tensor([1.4907, 1.0593, 1.5696])
>>> torch.dist(torch.logsumexp(a, 1), torch.log(torch.sum(torch.exp(a), 1)))
tensor(1.6859e-07)

文件

取得 PyTorch 的完整開發者文件

檢視文件

教學

取得適用於初學者和進階開發人員的深入教學

檢視教學

資源

尋找開發資源並獲得問題解答

檢視資源