tf代码是:
relu6 = min(max(features, 0), 6)
结果是把小于0的变成0,大于6的取6,y= torch.clamp(x,0,6)计算结果一样的。
缺点:这个训练收敛比较快,但是收敛比较好后,目标检测网络回归框不太准。
import torch
import torchvisionimport torch
import torch.nn as nn# inplace为True,将会改变输入的数据 ,否则不会改变原输入,只会产生新的输出
x = torch.linspace(-5, 10, 20)r6 = nn.ReLU6(inplace=True)print(x)
y=r6(x)
print(y)relu= nn.ReLU(inplace=True)y=relu(x)
print(y)y2= torch.clamp(x,0,6)print(y2)
发现和clamp函数比较像
torch.clamp(input, min, max, out=None) → Tensor
参数:
- input (Tensor) – 输入张量
- min (Number) – 限制范围下限
- max (Number) – 限制范围上限