当前位置:首页 » 《随便一记》 » 正文

【Python】torch.no_grad()函数详解和示例

14 人参与  2024年03月12日 12:11  分类 : 《随便一记》  评论

点击全文阅读


torch.no_grad() 是 PyTorch 中的一个上下文管理器,用于在进入该上下文时禁用梯度计算。这在你只关心评估模型,而不是训练模型时非常有用,因为它可以显著减少内存使用并加速计算。

当你在 torch.no_grad() 上下文管理器中执行张量操作时,PyTorch 不会为这些操作计算梯度。这意味着不会在 .grad 属性中累积梯度,并且操作会更快地执行。

使用torch.no_grad()

import torch# 创建一个需要梯度的张量x = torch.tensor([1.0], requires_grad=True)# 使用 no_grad() 上下文管理器with torch.no_grad():    y = x * 2    y.backward()print(x.grad)

输出:

RuntimeError                              Traceback (most recent call last)Cell In[52], line 11      7 with torch.no_grad():      8     y = x * 2---> 11 y.backward()     13 print(x.grad)File E:\anaconda\lib\site-packages\torch\_tensor.py:396, in Tensor.backward(self, gradient, retain_graph, create_graph, inputs)    387 if has_torch_function_unary(self):    388     return handle_torch_function(    389         Tensor.backward,    390         (self,),   (...)    394         create_graph=create_graph,    395         inputs=inputs)--> 396 torch.autograd.backward(self, gradient, retain_graph, create_graph, inputs=inputs)File E:\anaconda\lib\site-packages\torch\autograd\__init__.py:173, in backward(tensors, grad_tensors, retain_graph, create_graph, grad_variables, inputs)    168     retain_graph = create_graph    170 # The reason we repeat same the comment below is that    171 # some Python versions print out the first line of a multi-line function    172 # calls in the traceback and some print out the last line--> 173 Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass    174     tensors, grad_tensors_, retain_graph, create_graph, inputs,    175     allow_unreachable=True, accumulate_grad=True)RuntimeError: element 0 of tensors does not require grad and does not have a grad_fn

输出错误,因为使用了with torch.no_grad():。

不使用torch.no_grad()

import torch# 创建一个需要梯度的张量x = torch.tensor([1.0], requires_grad=True)# 使用 no_grad() 上下文管理器y = x * 2y.backward()print(x.grad)

输出:

tensor([2.])

点击全文阅读


本文链接:http://m.zhangshiyu.com/post/78218.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 家宴过后,我捉奸了庶妹和我老公后续+番外_庶妹老公侍卫读者推荐_小说后续在线阅读_无删减免费完结_
  • 首富老公为三姐妹点天灯挥金如土,我换嫁贺总轰动全国强推_胥淮岁岁过敏最新阅读_小说后续在线阅读_无删减免费完结_
  • 未婚夫和同事孕期领证,我转身嫁入豪门推荐_沈泽光安南拿泽光小编推荐_小说后续在线阅读_无删减免费完结_
  • 重回奥运种子选手陷害我的这天番茄热门_林子李梦冷笑在线看_小说后续在线阅读_无删减免费完结_
  • 知微向海完结全文_陆知衍纪瑶奶奶最新阅读_小说后续在线阅读_无删减免费完结_
  • 被污蔑送错外卖后,我杀疯了阅读_小徐胡闹阅读_小说后续在线阅读_无删减免费完结_
  • 我坐上评委席后,把我踢出乐队的男友悔疯了快手热门_乔枝姐阿媛程戬常读_小说后续在线阅读_无删减免费完结_
  • 当风吹落了雨TOP10_老公陈角鹰薇薇大反击_小说后续在线阅读_无删减免费完结_
  • 未婚夫逼我放弃继承权后,全家悔疯了一口气完结_沈雨雨柔养老校园甜文_小说后续在线阅读_无删减免费完结_
  • 手撕无耻老婆一家宝藏文_小姨子钟琳老公人气小说_小说后续在线阅读_无删减免费完结_
  • 愿得一人心常读_萧城蒋雪柔华冉优质全文_小说后续在线阅读_无删减免费完结_
  • 女士的玩具推文_杜小灵白月光杜雪必读文_小说后续在线阅读_无删减免费完结_

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1