左右夹紧
torch.clamp(input, min, max, out=None) → Tensor
将输入input张量每个元素的夹紧到区间 [min,max],并返回结果到一个新张量。
操作定义如下:
| min, if x_i < min
y_i = | x_i, if min <= x_i <= max
| max, if x_i > max
参数:
input (Tensor) – 输入张量
min (Number) – 限制范围下限
max (Number) – 限制范围上限
out (Tensor, optional) – 输出张量
左侧夹紧
torch.clamp(input, *, min, out=None) → Tensor
将输入input张量每个元素的限制到不小于min ,并返回结果到一个新张量。
右侧夹紧
torch.clamp(input, *, max, out=None) → Tensor
将输入input张量每个元素的限制到不大于max ,并返回结果到一个新张量。
举例
>>> import torch
>>> a = torch.randn(7)
>>> print(a)
tensor([ 2.1572, -1.0836, -0.0463, -0.4537, -0.7942, 0.6175, 1.0146])
>>> print(torch.clamp(a,min=0))
tensor([2.1572, 0.0000, 0.0000, 0.0000, 0.0000, 0.6175, 1.0146])
>>> print(torch.clamp(a,max=0))
tensor([ 0.0000, -1.0836, -0.0463, -0.4537, -0.7942, 0.0000, 0.0000])