model.eval()和with torch.no_grad()对梯度计算的影响_想念@思恋的博客-程序员秘密

技术标签: 深度学习  pytorch  神经网络  

import torch
import torch.nn as nn
class model(nn.Module):
    def __init__(self, b):
        super(model, self).__init__()
        self.b = b
    def forward(self, x):
        y = torch.pow(x, 2)
        return y

x = torch.tensor([1.0, 2.0, 3.0], requires_grad=True)
b = torch.tensor([1.0, 1.0, 0.0], requires_grad=True)
model = model(b)

model.eval()                        # model.eval()不影响梯度的计算
# with torch.no_grad():             # with torch.no_grad()会使得y的梯度计算参数为False
y = model(x)
print(y.requires_grad)

y.backward(torch.ones_like(x))      # pytorch无法进行tensor对tensor的求导,因此此处需要添加一个参数,得到一个标量,通过标量对tensor的求导,来计算想要的结果。

print(x.grad)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/tailonh/article/details/119992246

智能推荐

ios数组倒序_weixin_30693683的博客-程序员秘密

比如有一个数组:NSArray *arr = @[@"1", @"2", @"3"];倒过来排序:arr = [[arr reverseObjectEnumerator] allObjects];NSMutableArray *accountArr = [NSMutableArray arrayWithContentsOfFile:filePath];...

java was started but returned exit code =-1073741819_aa46449521的博客-程序员秘密

java was started but returned exit code =-1073741819方法(1)主要原因是eclipse.ini配置文件错误了,配置文件中-vm参数设置错误,在windows7系统下需要使用 " / " 而不是 " \ "例如:-vmC:\soft\Java\jdk1.7.0_25\bin\javaw.exe改成-vmC:/soft/J...

【HBase + ElasticSearch最佳实践】_hbase+es的缺点_小肥马的博客-程序员秘密

最近项目组要提供一个HBase结合ES的解决方案,谨以此博客记录下孵化过程。

ES6-11 学习笔记_red ghost 笔记_RedGhost117的博客-程序员秘密

学习ES5-11S时候做的笔记,第一遍过注重各个新特性的用法,实际案例在将来开发中遇到将会补充上来

机器学习-文本数据抽取(词袋法和IF-IDF)_Yangwenyi115615的博客-程序员秘密

词袋法:将文本作为一个无序的集合,文本特征可以采用文本中出现词条T来表示,则文本中出现的所有词条T的次数可以作为文本的特征。形如:1、海岛游2、内地游/云南游特征单词:岛、椰树、海水、海、云南、三亚、马尔代夫、太阳镜、防晒霜、雪山、的第一篇: 0 1 3 4 1 0 0 ...

IDEA 2020.1打开时闪退_Z&L_的博客-程序员秘密

前两天更新了Idea的2020.1的最新版本,发现闪退的问题,可能有同仁不注意处理不好,在此记录解决办法其实问题很简单,而且有报错的,原因是插件版本的问题!有一些插件没有及时的更新,导致新ide不能打开,禁用或者更新即可, 写这篇文章的时候,Lombox插件已经可以更新最新版了, Alibaba Java Coding Guidelines 和 Find Bugs-IDEA , Backgro...

随便推点

iOS开发知识体系_ios知识体系_yan_1111的博客-程序员秘密

之前看过一篇博客,博主梳理一个iOS开发知识与能力体系的思维导图,点击这里传送。作者梳理得非常不错但是扩展得非常大。如果是对于初学者来说,看着会被吓跑。在这里我来尝试梳理一下对于iOS初学者的知识体系。开发环境MacMac mini、Mac book、iMac、黑苹果、OS X虚拟机都行,但真要好好搞iOS开发那就最好不要黑苹果和虚拟机,这样会直接影响你对iOS开发的兴趣。同样,如果你

2014计算机基础知识试题及答案,2014计算机基础知识试题及答案解析.doc_卫珉的博客-程序员秘密

2014计算机基础知识试题及答案解析计算机基础知识参考试题及答案解析一、单选题1.1946年诞生的世界上公认的第一台电子计算机是( )。A)UNIVAC-I B)EDVAC C)ENIAC D)IBM650【答案】C)【解析】1946年2月15日,人类历史上公认的第一台现代电子计算机在美国宾夕法尼亚大学诞生,名称为ENIAC。2.第一台计算机在研制过程中采用了哪位科学家的两点改进意见( )。A)莫...

中机智能三宝,百万企业上云法宝!|中机智库_中机智库的博客-程序员秘密

中机智能三宝,百万企业上云法宝!|中机智库企业上云服务专家 中机智库 今天近年来,政府将云计算提高到国家战略层面后,企业上云已经成为了大势所趋。未来真的可以说无处不“云”。工业和信息化部印发的《推动企业上云实施指南(2018-2020年)》更是提出企业上云的工作目标,到2020年,云计算在企业生产、经营、管理中的应用广泛普及,全国新增上云企业100万家。面对这样的市场环境,国内目前有众多...

poj 2985 分类: poj 2015-0..._aa288288的博客-程序员秘密

今天xjz大爷说写写平衡树,结果此题卡平衡树常数, 听说sbt都要卡常数才能过,想想都觉得不可思议,给跪了正解是并查集+树状数组+二分答案。 都不难写,但我觉得这题卡平衡树还挺是挺坑的。#include<cstdio>#include<cstdlib>#include<cstring>#include<c...

Vue(4)- 获取原生的DOM的方式、DIY脚手架、vue-cli的使用_aijian8502的博客-程序员秘密

一、获取原生的DOM的方式  在js中,我们可以通过id、class或者标签获取DOM元素,vue中也为我们提供了获取原生DOM的方法,就是给标签或者组件添加ref属性,通过this.$refs获取,如下:<div id="app"></div><script src="https://cdn.jsdelivr.net/npm/vue/dis...

srs 修改单包发送遇到的问题_mw_latency_afteryou的博客-程序员秘密

srs有一个特性是Merged-Write,用以提高性能,但是如果想做到最低延时,需要关闭,关闭的方法是mw_latency      0;send_min_interval       10.0; 但是mw_latency设置为0时,测试发现发包有延迟,大概有100-200毫秒的阻塞, 原因是setsockopt(fd, SOL_SOCKET, SO_SNDBUF, &n

推荐文章

热门文章

相关标签