评价此页

torch.prod#

torch.prod(input: Tensor, *, dtype: Optional[_dtype]) Tensor#

返回input张量中所有元素的乘积。

参数

input (Tensor) – 输入张量。

关键字参数

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

示例

>>> a = torch.randn(1, 3)
>>> a
tensor([[-0.8020,  0.5428, -1.5854]])
>>> torch.prod(a)
tensor(0.6902)
torch.prod(input, dim, keepdim=False, *, dtype=None) Tensor

返回 input 张量在给定维度 dim 上的每一行的乘积。

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

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

  • dim (int, optional) – 要约减的维度。如果为 None,则约减所有维度。

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

关键字参数

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

示例

>>> a = torch.randn(4, 2)
>>> a
tensor([[ 0.5261, -0.3837],
        [ 1.1857, -0.2498],
        [-1.1646,  0.0705],
        [ 1.1131, -1.0629]])
>>> torch.prod(a, 1)
tensor([-0.2018, -0.2962, -0.0821, -1.1831])