评价此页

torch.nansum#

torch.nansum(input, *, dtype=None) Tensor#

返回所有元素的和,并将 Not a Numbers (NaN) 视为零。

参数

input (Tensor) – 输入张量。

关键字参数

dtype (torch.dtype, 可选) – 返回张量的期望数据类型。如果指定,则在执行操作之前将输入张量转换为 dtype。这对于防止数据类型溢出很有用。默认为 None。

示例

>>> a = torch.tensor([1., 2., float('nan'), 4.])
>>> torch.nansum(a)
tensor(7.)
torch.nansum(input, dim, keepdim=False, *, dtype=None) Tensor

返回给定维度 diminput 张量每行的和,并将 Not a Numbers (NaN) 视为零。如果 dim 是一个维度列表,则对它们进行所有约简。

如果 keepdimTrue,则输出张量的大小与 input 相同,只有在 dim 维度上大小为 1。否则,dim 将被挤压(参见 torch.squeeze()),导致输出张量维度减少 1(或 len(dim))个。

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

  • dim (inttuple of ints, optional) – 要规约的维度或维度。如果为 None,则规约所有维度。

  • keepdim (bool, optional) – 输出张量是否保留 dim。默认为 False

关键字参数

dtype (torch.dtype, 可选) – 返回张量的期望数据类型。如果指定,则在执行操作之前将输入张量转换为 dtype。这对于防止数据类型溢出很有用。默认为 None。

示例

>>> torch.nansum(torch.tensor([1., float("nan")]))
tensor(1.)
>>> a = torch.tensor([[1, 2], [3., float("nan")]])
>>> torch.nansum(a)
tensor(6.)
>>> torch.nansum(a, dim=0)
tensor([4., 2.])
>>> torch.nansum(a, dim=1)
tensor([3., 3.])