一个Tensor的Pytorch梯度计算

6ju8rftf  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(149)

我是pytorch的初学者,我可能在一个相对琐碎的问题上卡住了,但目前对我来说还没有解决。
当计算Tensor的梯度时,我得到一个常数梯度1。但是,常数的梯度不应该是0吗?
下面是一个最简单的例子:

import torch
x = torch.tensor(50., requires_grad=True)

y = x

y.backward()

print(x.grad)

# Ouput: tensor(1.)

那么,为什么输出是1而不是0呢?

oxalkeyp

oxalkeyp1#

您不是在计算常量的梯度,而是计算常量值为50的变量x的梯度。x相对于x的导数为1。

相关问题