pytorch学习2--grad自动微分

本文详细介绍了PyTorch中张量的grad属性、如何启用和停止追踪,以及如何利用自动微分进行基础tensor操作和向量化计算。重点讲解了grad_fn属性的作用和反向传播的原理,以及如何使用`withtorch.no_grad()`来控制追踪过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pytorch自动微分

grad属性

第一讲学习介绍了tensor张量,它有一个属性requires_grad,这个属性默认取值为false,他的意义是追踪针对tensor的所有操作,比如进行了加减乘除等等操作。
如果要取消对这个tensor的追踪,可以使用.detach(),将与计算的历史记录分离,并防止未来的计算被追踪
为了停止追踪历史记录,还可以使用代码块with torch.no_grad():来防止。

tensor和function

tensor和function相互连接并构建一个非循环图,保存完整的计算过程的历史信息,每个张量都有一个gead_fn属性保存着建立了张量的function的引用

相关函数使用

基础tensor使用

from __future__ import print_function
import torch

x=torch.empty(5,3)
x=torch.rand(5,3)
print(x)

#构造矩阵全为0,而且指定数据类型为long
x=torch.zeros(5,3,dtype=torch.long)
print(x)

#直接构造一个张量,直接使用数据
x=torch.tensor([5.5,3])
print(x)

#基于已存在的tensor创建一个新的Tensor
x=x.new_ones(5,3,dtype=torch.double)
print(x)
x=torch.randn_like(x,dtype=torch.float)
print(x)
#获取维度信息
print(x.size(
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值