nn.ReLU(inplace=True)中inplace的作用
在文档中解释是:
参数: inplace-选择是否进行覆盖运算
意思是是否将得到的值计算得到的值覆盖之前的值,比如:
x = x +1
即对原值进行操作,然后将得到的值又直接复制到该值中
而不是覆盖运算的例子如:
y = x + 1 x = y
这样就需要花费内存去多存储一个变量y
所以
nn.Conv2d(3, 64, kernel_size=11, stride=4, padding=2), nn.ReLU(inplace=True)
的意思就是对从上层网络Conv2d中传递下来的tensor直接进行修改,这样能够节省运算内存,不用多存储其他变量