pytorch常用函数手册
* torch
  * torch.from_numpy
  * sor
  * torch.rand
  * torch.device
* Autograd
  * torch.autograd.Function
  * torch.autograd.Variable
* Neural Network
  * Module
  * Parameter
  * functional
* Optimization
  * torch.optim
  * torch.optim.SGD
  * torch.optim.Adam
* Datasets
  * torch.utils.data.Dataset
  * torch.utils.data.DataLoader
* Utilities
  * torch.save
  * torch.load
  * torch.set_num_threads
1. torch
torch模块是torch的核心模块,包含了PyTorch的大部分基础操作,比如类型转换,随机数生成,矩阵运算,等等。
torch.from_numpy:从numpy的ndarray中创建一个tensor对象。
sor:这个函数相当于是从数据源创建一个新的tensor,不需要任何参数,可以从list、array、tuple等等构造出tensor对象。
torch.rand:随机生成tensor。
torch.device:这个函数用来指定tensor在哪里,“cuda”或者“cpu”。
2. Autograd
Autograd模块是自动梯度计算模块,主要用来计算当前节点对应输入变量的梯度。
torch.autograd.Function:这个函数用来定义自定义的autograd处理函数,有前向传播forward和反向传播backward,可以自己定义backward实现自定义的梯度算法。
torch.autograd.Variable:用这个变量可以计算变量的梯度,它本质上是一个tensor对象,不同的是它支持自动求导。
3. Neural Network
模块是搭建神经网络的模块,我们可以用它来搭建各种网络结构,比如前馈神经网络、卷积神经网络、LSTM等等。
Module:神经网络修饰器,作用是将构造的神经网络包装起来。
Parameter:用于构建神经网络中的参数,例如权重矩阵。
functional:提供了一系列的激活函数,比如ReLU,LeakyReLU,Tanh等等,它们在神经网络的前向传播中使用。
4. Optimization
优化器模块用来指定更新参数的方法,比如随机梯度下降(SGD)、Adam、RMSProp等等。
torch.optim:提供优化器的接口。
torch.optim.SGD:使用随机梯度下降(SGD)更新参数。
torch.optim.Adam:使用Adam更新参数。
5. Datasets
Datasets模块用来读取数据,并把数据载入内存,这样使用更加方便。
torch.utils.data.Dataset:这是Pytorch中定义数据集的基类,子类可以根据需要添加实现自定义的读取接口。
numpy库常用函数
torch.utils.data.DataLoader:定义一个DataLoader对象用来分批读取数据集数据,它有多种
可以配置的参数,比如分批的大小,是否使用多线程,是否打乱数据等等,很强大,可以实现自定义的读取器。
6. Utilities
它提供了一系列的工具函数,提供辅助性功能,比如保存和读取模型,设置多线程等等。
torch.save:保存已实例化的模型,把模型的参数以及优化器的state存在某一个文件中。
torch.load:加载已保存的模型,从文件中将参数和优化器的state加载到模型中。
torch.set_num_threads:设置所使用的线程个数,这个可以提升读取数据的性能。