PyTorch:torch.utils.data

表示Dataset的抽象类。所有其他数据集都应该进行子类化。所有子类应该override__len__和__getitem__,前者提供了数据集的大小,后者支持整数索引,范围从0到len(self)。包装数据和目标张量的数据集。通过沿着第一个维度索引两个张量来恢复每个样本。参数:data_tensor (Tensor) - 包含样本数据target_tensor (Tensor) - 包含样本目标

PyTorch:torch.utils.model_zoo

在给定URL上加载Torch序列化对象。如果对象已经存在于 model_dir 中,则将被反序列化并返回。URL的文件名部分应遵循命名约定filename-<sha256>.ext,其中<sha256>是文件内容的SHA256哈希的前八位或更多位数字。哈希用于确保唯一的名称并验证文件的内容。model_dir 的默认值为$TORCH_HOME/models,其中$TORCH

PyTorch:torch.cuda

该包增加了对CUDA张量类型的支持,实现了与CPU张量相同的功能,但使用GPU进行计算。它是懒惰的初始化,所以你可以随时导入它,并使用is_available()来确定系统是否支持CUDA。CUDA语义中有关于使用CUDA的更多细节。返回cublasHandle_t指针,指向当前cuBLAS句柄返回当前所选设备的索引。返回一个当前所选的Stream上下文管理器,可以更改所选设备。参数:idx (i

PyTorch:torch.utils.ffi

创建并配置一个cffi.FFI对象,用于PyTorch的扩展。参数:name (str) – 包名。可以是嵌套模块,例如 .ext.my_lib。headers (str or List[str]) – 只包含导出函数的头文件列表sources (List[str]) – 用于编译的sources列表verbose (bool, optional) – 如果设置为False,则不会打印输出(默认值

PyTorch:torch.multiprocessing

封装了multiprocessing模块。用于在相同数据的不同进程中共享视图。一旦张量或者存储被移动到共享单元(见share_memory_()),它可以不需要任何其他复制操作的发送到其他的进程中。这个API与原始模型完全兼容,为了让张量通过队列或者其他机制共享,移动到内存中,我们可以由原来的import multiprocessing改为import torch.multiprocessing。

PyTorch:torch.optim

torch.optim是一个实现了各种优化算法的库。大部分常用的方法得到支持,并且接口具备足够的通用性,使得未来能够集成更加复杂的方法。如何使用optimizer为了使用torch.optim,你需要构建一个optimizer对象。这个对象能够保持当前参数状态并基于计算得到的梯度进行参数更新。构建为了构建一个Optimizer,你需要给它一个包含了需要优化的参数(必须都是Variable例子:为每

PyTorch:torch.nn.functional

Convolution 函数对几个输入平面组成的输入信号应用1D卷积。有关详细信息和输出形状,请参见Conv1d。参数:inputweightbiasstride – 卷积核的步长,默认为1例子:对几个输入平面组成的输入信号应用2D卷积。有关详细信息和输出形状,请参见Conv2d。参数:inputweightbiasstridepaddinggroups – 将输入分成组,in_channels应

PyTorch:torch.nn.init

对于给定的非线性函数,返回推荐的增益值。这些值如下所示:nonlinearitygainlinear1conv{1,2,3}d1sigmoid1tanh5/3relusqrt(2)leaky_relusqrt(2/(1+negative_slope^2))参数:nonlinearity – 非线性函数(nn.functional名称)param – 非线性函数的可选参数例子:从均匀分布U(a, b