快捷方式

torch.logsumexp

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

返回在给定维度 dim 上输入 input 张量的每一行指数和的对数。计算过程进行了数值稳定化。

对于由 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 (inttuple of ints, 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 全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

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

查看资源