# 简介

PyTorch 中的三个重要概念:

  • Tensor 张量
  • AutoGrad 自动求导
  • Module 层 / 网络

# AutoGrad

压缩感知:

  • nuclear norm: 低秩

  • 1-norm: 稀疏

  • 机器学习 | Schatten 范数 - Xinyu Chen 的文章 - 知乎

# 计算图

# 动态图 & 静态图

# nn.Module 类

# 模型搭建、训练和测试

# 模型搭建

# 数据加载与 DataLoader

在模型训练过程中,数据流向如下:

  1. 硬盘:数据的存储位置
  2. 内存:数据读取到内存中
  3. CPU: 数据在 CPU 上进行预处理
  4. GPU: 数据在 GPU 上进行模型计算

PyTorch 提供了 torch.utils.data.Datasettorch.utils.data.IterableDataset 两种常见的数据集形式,分别称为映射式数据集迭代式数据集。其中,前者用于常见的有限数据集的情况,后者则用于数据大小未知或流形式输入的数据集,此时需要借助迭代器实现样本索引。

torch.utils.data.Dataset 是 PyTorch 中表示映射式数据集的抽象类。在使用 PyTorch 构建自己的数据集时,需要继承这个类,并实现 __len____getitem__ 方法。其中, __len__ 方法指定数据集的大小, __getitem__ 方法用于实现数据样例的索引。