評價此頁

torch.clamp#

torch.clamp(input, min=None, max=None, *, out=None) Tensor#

input 中的所有元素限制在 [ min, max ] 範圍內。令 min_value 和 max_value 分別為 minmax,則返回

yi=min(max(xi,min_valuei),max_valuei)y_i = \min(\max(x_i, \text{min\_value}_i), \text{max\_value}_i)

如果 minNone,則沒有下界。或者,如果 maxNone,則沒有上界。

注意

如果 min 大於 max,則 torch.clamp(..., min, max)input 中的所有元素設定為 max 的值。

引數
  • input (Tensor) – 輸入張量。

  • min (NumberTensor, 可選) – 要限制到的範圍的下界

  • max (NumberTensor, 可選) – 要限制到的範圍的上界

關鍵字引數

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

示例

>>> a = torch.randn(4)
>>> a
tensor([-1.7120,  0.1734, -0.0478, -0.0922])
>>> torch.clamp(a, min=-0.5, max=0.5)
tensor([-0.5000,  0.1734, -0.0478, -0.0922])

>>> min = torch.linspace(-1, 1, steps=4)
>>> torch.clamp(a, min=min)
tensor([-1.0000,  0.1734,  0.3333,  1.0000])