pytorch tools - autograd in pytorch

About torch.tensor

insert image description here

About the operation of tensor

x1=torch.ones(3,3)
x=torch.ones(2,2,requires_grad=True)
print(x1,'\n',x)

insert image description here

y=x+2
print(y)
print(x.grad_fn)
print(y.grad_fn)

insert image description here

z=y*y*3
out=z.mean()
print(z,out)

insert image description here

Notice
insert image description here

a=torch.randn(2,2)
a=((a*3)/(a-1))
print(a.requires_grad)
a.requires_grad_(True)
print(a.requires_grad)
b=(a*a).sum()
print(b)
print(b.grad_fn)

insert image description here

About gradients

out.backward()
print(x.grad)

insert image description here

print(x.requires_grad)
print((x**2).requires_grad)
with torch.no_grad():
    print((x**2).requires_grad)

insert image description here

y=x.detach()
print(y.requires_grad)

print(x)
print(y)
print(x.eq(y).all())

insert image description here

Guess you like

Origin blog.csdn.net/qq_40527560/article/details/131866978