Pytorch 从入门到实战总结零基础句句标注

--------教程摘自b站【不愧是计算机博士唐宇迪128集课程一套搞定了我大学4年没学会的PyTorch】PyTorch从入门到实战全套课程(附带课程学习资料 )_哔哩哔哩_bilibili

二、autograd机制

框架干的最厉害的一件事就是帮我们把返向传播全部计算好了!

import torch

需要求导的,可以手动定义

#方法1
x = torch.randn(3,4,requires_grad=True) #随机创建一个3*4的矩阵   参数requires_grad=True表示可以对这个矩阵进行求导

#方法2
x = torch.randn(3,4)
x.requires_grad=True   #也可以手动定义

例如

b = torch.randn(3,4,requires_grad=True)

t = x + b

y = t.sum()    #对输入的tensor数据的某一维度求和

y.backward()  #y的反向传播

b.grad   #y对b的求导

一开始对b初始化了requires_grad=True   所以在对t求导的时候默认可以求导

#计算流程
x = torch.rand(1)
b = torch.rand(1, requires_grad = True)
w = torch.rand(1, requires_grad = True)
y = w * x 
z = y + b 

x.requires_grad, b.requires_grad, w.requires_grad, y.requires_grad#注意y也是需要的

(False, True, True, True)

x.is_leaf, w.is_leaf, b.is_leaf, y.is_leaf, z.is_leaf  #是不是叶子(分支)

(True, True, True, False, False

反向传播计算

z.backward(retain_graph=True)#如果不清空会累加起来

w.grad

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值