nn.ReLU(inplace=True)中inplace的作用

时间:2023-03-09 00:15:49
nn.ReLU(inplace=True)中inplace的作用

在文档中解释是:

参数: inplace-选择是否进行覆盖运算

意思是是否将得到的值计算得到的值覆盖之前的值,比如:

x = x +

即对原值进行操作,然后将得到的值又直接复制到该值中

而不是覆盖运算的例子如:

y = x +
x = y

这样就需要花费内存去多存储一个变量y

所以

nn.Conv2d(, , kernel_size=, stride=, padding=),
nn.ReLU(inplace=True)

的意思就是对从上层网络Conv2d中传递下来的tensor直接进行修改,这样能够节省运算内存,不用多存储其他变量