关于with torch.no_grad:的一些小问题

with torch.no_grad:是截断梯度记录的,新生成的数据的都不记录梯度,但是今天产生了一点小疑惑,如果存在多层函数嵌入,是不是函数内所有的数据都不记录梯度,验证了一下,确实是的。

python 复制代码
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>
"""
相关推荐
njsgcs几秒前
用modelscope运行grounding dino
人工智能·pytorch·深度学习·modelscope·groundingdino
toolhow8 分钟前
SelfAttenion自注意力机制
pytorch·python·深度学习
智航GIS8 分钟前
6.2 while循环
java·前端·python
qq_3363139310 分钟前
java基础-IO流(转换流)
java·开发语言·python
哥布林学者18 分钟前
吴恩达深度学习课程四:计算机视觉 第四周:卷积网络应用 课后习题和代码实践
深度学习·ai
Stestack19 分钟前
ssh批量机器免密操作
linux·python·ssh
学习3人组20 分钟前
主流深度学习目标检测模型性能对比表
人工智能·深度学习·目标检测
a程序小傲22 分钟前
得物Java面试被问:反射机制的原理和应用场景
java·python·面试
于越海22 分钟前
学习小项目:用 Python 自动统计编程课绩点(5.0 制|百分制直算|重修取最高)
开发语言·笔记·python·学习·学习方法
xingzhemengyou127 分钟前
Python GUI中常用的after
开发语言·python