PyTorch自动求导

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-06 14:45:52
import torch
from torch import autograd

x=torch.tensor(1.)
a=torch.tensor(1.,requires_grad=True)  #注意带入的值是float型,有个点。
b=torch.tensor(2.,requires_grad=True)  #requires_grad需要求导
c=torch.tensor(3.,requires_grad=True)

y=a**2*x+b*x+c
print("before+",a.grad,b.grad,c.grad)   #动态图只构建了,还未计算
grads=autograd.grad(y,[a,b,c])   #y分别对a,b,c求导
print("after",grads[0],grads[1],grads[2])  #计算后,直接带进去需要的值

输出
在这里插入图片描述

注意放的是 float型
在这里插入图片描述

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!