torch.clamp(input, min, max, out=None) → Tensor
将输入input张量每个元素的夹紧到区间 [min,max],并返回结果到一个新张量。
input={min,if input <= mininput,if min<input <maxmax,if input >= max
input =
\begin{cases}
min, & \text{if $input $ <= min} \\
input, & \text{if min<$input $ <max}\\
max, & \text{if $input$ >= max}
\end{cases}
input=⎩⎪⎨⎪⎧min,input,max,if input <= minif min<input <maxif input >= max
import torch
x = torch.randn(4, 1)
print('tensor原型:',x)
print(torch.clamp(x, -0.5, 0.5))
运行结果:
tensor原型: tensor([[-0.6572],
[ 0.8355],
[-0.9475],
[-0.0340]])
tensor([[-0.5000],
[ 0.5000],
[-0.5000],
[-0.0340]])