评价此页

torch.nansum#

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

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

参数

input (Tensor) – 输入张量。

关键字参数

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

示例

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

在给定的维度 dim 上返回 input 张量的每行之和,并将 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, optional) – 返回张量的期望数据类型。如果指定,则在执行操作之前将输入张量转换为 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.])