在pytorch框架中,对于tensor的操作时候是inplace类型。
inplace类型是指,在一个tensor上操作了之后,是直接修改了这个tensor,还是返回一个新的tensor,也就是说旧的tensor修不修改的问题。
pytorch中,一般来说,如果对tensor的一个函数后加上了下划线,则表明这是一个inplace类型
我们举一个具体的例子:
可以看到原有的tensor没有改变,也就是旧的张量a没有被直接修改。
可以看到原有的tensor改变了,也就是旧的张量a被直接修改。
注:
torch.clamp(input, min, max, out=None) → Tensor
input:输入张量;
min:限制范围下限;
max:限制范围上限;
out:输出张量。
参考
https://blog.csdn.net/qq_27261889/article/details/86777230
https://blog.csdn.net/weixin_39504171/article/details/106069230