with torch.no_grad()详解
可以让节点不进行求梯度,从而节省了内存控件,当神经网络较大且内存不够用时,就需要让梯度为False
代码:
x = torch.tensor([1.0], requires_grad=True)
with torch.no_grad():
y = x * 2
print(y.requires_grad)
print(x.requires_grad)
输出:
False
True
在with torch.no_grad()下对变量的操作,均不会让求梯度为真。