关于withtorch.no_grad:的一些小问题
- 软件开发
- 2025-07-21 19:09:54

with torch.no_grad:是截断梯度记录的,新生成的数据的都不记录梯度,但是今天产生了一点小疑惑,如果存在多层函数嵌入,是不是函数内所有的数据都不记录梯度,验证了一下,确实是的。
import torch x = torch.randn(10, 5, requires_grad = True) y = torch.randn(10, 5, requires_grad = True) z = torch.randn(10, 5, requires_grad = True) def add(x,y,z): w = x + y + z print(w.requires_grad) print(w.grad_fn) def add2(x,y,z): add(x,y,z) with torch.no_grad(): add2(x,y,z) add2(x,y,z) “”“ 输出: False None True <AddBackward0 object at 0x00000250371BED68> ”“”关于withtorch.no_grad:的一些小问题由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“关于withtorch.no_grad:的一些小问题”