nn.reLU(inplace)的理解

蒋高超
2023-12-01
from torch import nn
relu=nn.ReLU(inplace=True)

inplace参数,默认为False,计算得到的值不会覆盖之前的值,如果设置为True,则会把计算得到的值直接覆盖到输入中,这样可以节省内存/显存。之所以可以覆盖是因为在计算ReLU的反向传播时,秩序根据输出就能够推算出反向传播的梯度,但是只有少数的autograd操作支持inplace,除非你明确知道自己在做什么,否则一般不要使用inplace操作。

 类似资料: