spyder提示bob错误_jupyder notebook和Spyder的pytorch tensor执行区别

在jupyter notebook和Spyder中执行相同pytorch代码,得到tensor的grad_fn和requires_grad属性却有区别,代码如下:

import torch
print(torch.__version__)
x = torch.tensor([1.0,2.2],requires_grad=True)
print(x)
y = x + 2
print(y)
print(y.grad_fn , x.grad_fn)
  1. jupyter notebook执行结果
1.2.0
tensor([1.0000, 2.2000], requires_grad=True)
tensor([3.0000, 4.2000], grad_fn=<AddBackward0>)
<AddBackward0 object at 0x000000000F22A550>  None

可以看出,因为x.requires_grad=True,故y.grad_fn不是None,该结果符合预期。

2.Spyder执行结果

1.2.0
tensor([1.0000, 2.2000], requires_grad=True)
tensor([3.0000, 4.2000])
None None

这里虽然y的计算数值正确,但是y.grad_fn却是None,此处不符合预期。而且进行y.backward()操作时,提示如下错误:

RuntimeError: element 0 of tensors does not require grad and does not have a grad_fn

请大佬们帮忙看看什么原因导致Spyder输出结果有差异?该怎么解决呢?

另外spyder版本为3.3.2 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值