torch.logaddexp

torch.logaddexp(input, other, *, out=None) Tensor

输入值的指数之和的对数。

计算逐点$\log\left(e^x + e^y\right)$。该函数在统计学中非常有用,因为在某些情况下事件的计算概率可能极小,超出正常浮点数的范围。在这种情形下,会存储这些概率的对数值。此函数允许将以这种方式存储的概率进行相加。

此操作应与torch.logsumexp()区分开,torch.logsumexp()会对单个张量进行缩减操作。

参数
  • input (Tensor) – 需要输入的张量。

  • other (Tensor) – 输入的第二个张量

关键字参数

out (Tensor, 可选) – 指定输出张量。

示例:

>>> torch.logaddexp(torch.tensor([-1.0]), torch.tensor([-1.0, -2, -3]))
tensor([-0.3069, -0.6867, -0.8731])
>>> torch.logaddexp(torch.tensor([-100.0, -200, -300]), torch.tensor([-1.0, -2, -3]))
tensor([-1., -2., -3.])
>>> torch.logaddexp(torch.tensor([1.0, 2000, 30000]), torch.tensor([-1.0, -2, -3]))
tensor([1.1269e+00, 2.0000e+03, 3.0000e+04])
本页目录