評價此頁

torch.cumprod#

torch.cumprod(input, dim, *, dtype=None, out=None) Tensor#

返回 inputdim 維度上的累積乘積。

例如,如果 input 是一個大小為 N 的向量,則結果也將是一個大小為 N 的向量,其元素為。

yi=x1×x2×x3××xiy_i = x_1 \times x_2\times x_3\times \dots \times x_i
引數
  • input (Tensor) – 輸入張量。

  • dim (int) – 進行操作的維度

關鍵字引數
  • dtype (torch.dtype, 可選) – 返回張量的期望資料型別。如果指定,則在執行操作之前將輸入張量轉換為 dtype。這對於防止資料型別溢位很有用。預設為 None。

  • out (Tensor, optional) – 輸出張量。

示例

>>> a = torch.randn(10)
>>> a
tensor([ 0.6001,  0.2069, -0.1919,  0.9792,  0.6727,  1.0062,  0.4126,
        -0.2129, -0.4206,  0.1968])
>>> torch.cumprod(a, dim=0)
tensor([ 0.6001,  0.1241, -0.0238, -0.0233, -0.0157, -0.0158, -0.0065,
         0.0014, -0.0006, -0.0001])

>>> a[5] = 0.0
>>> torch.cumprod(a, dim=0)
tensor([ 0.6001,  0.1241, -0.0238, -0.0233, -0.0157, -0.0000, -0.0000,
         0.0000, -0.0000, -0.0000])