PyTorch学习笔记之自动求导(AutoGrad)

 

1、使用PyTorch 计算梯度数值

         PyTorch 的 Autograd 模块实现了深度学习的算法中的反向传播求导数,在张量(Tensor类)上的所有操作, Autograd 都能为他们自动提供微分,简化了手动计算导数的复杂过程。

在04以前的版本中, Pytorch 使用 Variabe 类来自动计算所有的梯度 Variable 类主要包含三个属性 Variable 所包含的 Tensor;grad:保存 data 对应的梯度,grad 也是个 Variable,而不是 Tensor,它和 data 的形状一样;grad_fn:指向一个 Function 对象,这个 Function 用来反向传播计算输入的梯度;

从 0.4 起, Variable 正式合并入 Tensor 类,通过 Variable 嵌套实现的自动微分功能已经整合进入了 Tensor 类中。虽然为了的兼容性还是可以使用 Variable(tensor)这种方式进行嵌套,但是这个操作其实什么都没做。

以后的代码建议直接使用 Tensor 类进行操作,因为官方文档中已经将 Variable 设置成过期模块。

想通过 Tensor 类本身就支持了使用 autograd 功能,只需要设置 reques_grad=True;

Variable 类中的的 grad 和 grad_fn 属性已经整合进入了 Tensor 类中。

 

2Autograd

  • 在张量创建时,通过设置 requires_grad 标识为 True 来告诉 PyTorch 需要对该张量进行自动求导, PyTorch 会记录该张量的每一步操作历史并自动计算 。

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值