PyTorch 是一个广泛使用的深度学习框架,以其灵活性和动态计算图著称。以下是 PyTorch 的核心知识点,涵盖从基础到高级的内容,力求全面且详细:
1. PyTorch 基础
1.1 张量(Tensor)
- 定义:PyTorch 的核心数据结构,类似于 NumPy 的数组,但支持 GPU 加速。
- 操作:
- 创建张量:
torch.tensor(),torch.zeros(),torch.ones(),torch.rand() - 张量属性:
shape,dtype,device - 数学运算:
+,-,*,/,matmul() - 索引与切片:与 NumPy 类似。
- 形状操作:
view(),reshape(),transpose(),permute()
- 创建张量:
- 设备管理:
- 将张量移动到 GPU:
tensor.to(device) - 检查设备:
tensor.device
- 将张量移动到 GPU:
1.2 自动求导(Autograd)
- 定义:PyTorch 的自动微分引擎,用于计算梯度。
- 核心概念:
requires_grad:标记张量是否需要计算梯度。backward():计算梯度。grad:存储梯度值。with torch.no_grad():禁用梯度计算。
- 示例:
x = torch.tensor([1.0, 2.0], requires_grad=True) y = x.sum() y.backward() print(x.grad) # 输出: tensor([1., 1.])
1.3 数据集与数据加载
- 数据集类:
torch.utils.data.Dataset:自定义数据集需继承此类,实现__len__和__getitem__。
- 数据加载器:
torch.utils.data.DataLoader:用于

最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



