关于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>
"""
相关推荐
好家伙VCC2 分钟前
**发散创新:用 Rust构建多智能体系统,让分布式协作更高效**在人工智能快速演进的今天,**多智能体系统(
java·人工智能·分布式·python·rust
梦幻精灵_cq2 分钟前
*终端渲染天花板:文心道法解码——闲聊终端渲染状态一统江山
python
yuanmenghao3 分钟前
Linux 性能实战 | 第 18 篇:ltrace 与库函数性能分析
linux·python·性能优化
ValhallaCoder3 分钟前
hot100-图论
数据结构·python·算法·图论
陈天伟教授6 分钟前
人工智能应用- 人机对战:01. AI 游戏
人工智能·深度学习·神经网络·游戏·自然语言处理·机器翻译
肾透侧视攻城狮7 分钟前
《超越安装:构建可维护、高性能的TensorFlow专业开发环境》
人工智能·深度学习·tensorflow 环境搭建·conda 创建虚拟环境·开发工具安装·jupyter相关问题解决·tensorf开发环境优化
Hcoco_me9 分钟前
图像分割:目标检测、语义分割和实例分割
人工智能·深度学习·算法·目标检测·计算机视觉·目标跟踪
破烂pan11 分钟前
Python 实现 HTTP Client 的常见方式
开发语言·python·http
寒听雪落13 分钟前
ZYNQ PS HTML服务器和客户端
python
康小庄17 分钟前
Java自旋锁与读写锁
java·开发语言·spring boot·python·spring·intellij-idea