torch.ones(int[, int[, int[, ...]]]) -> 创建一个1填充的矩阵
torch.zeros(int[, int[, int[, ...]]], dtype=type) -> 创建一个0填充的矩阵,并指定数据类型
torch.empty(int[, int[, int[, ...]]]) -> 创建一个矩阵(未初始化的)
torch.full((tuple)(int[, int[, int[, ...]]]), value) -> 创建一个以 value 填充的矩阵
torch.eye(int[, int]) -> 创建一个单位矩阵(二维的)
torch.rand(int[, int[, int[, ...]]]) -> 创建一个随机初始化的矩阵
torch.randn(int[, int[, int[, ...]]]) -> 创建一个从标准正态分布中抽取的随机初始化矩阵
torch.randint([low=0], high, (tuple)(int[, int[, int[, ...]]]) -> 创建一个规定范围(low - high)内的整数矩阵
torch.tensor((list)[[...], [...], [...], ...] / int) -> 创建矩阵并使用现有数据(list 或 单个值)初始化
obj.new([size], [dtype=]) -> 创建一个默认为空或指定 Size的矩阵
obj.new_ones(size, [dtype=]) -> 创建一个格式为 Size 的 1 矩阵
obj.new_zeros(size, [dtype=]) -> 创建一个格式为 Size 的 0 矩阵
obj.new_empty(size, [dtype=]) -> 创建一个格式为 Size 的未初始化矩阵
obj.new_full((tuple)size, value, [dtype=]) -> 创建一个格式为 Size 的值为 value 的矩阵
obj.new_tensor(data, [dtype=]) -> 创建矩阵并使用现有数据 data (list 或 单个值)初始化
torch.ones_like(obj, [dtype=]) -> 创建一个和 obj 的 Size 相同的 1 矩阵
torch.zeros_like(obj, [dtype=]) -> 创建一个和 obj 的 Size 相同的 0 矩阵
torch.empty_like(obj, [dtype=]) -> 创建一个和 obj 的 Size 相同的未初始化矩阵
torch.full_like(obj, value, type=]) -> 创建一个和 obj 的 Size 相同的 value 填充的矩阵
torch.rand_like(obj, [dtype=]) -> 创建一个和 obj 的 Size 相同的随机矩阵(若 obj.dtype 不是浮点型的要改 dtype)
torch.randn_like(obj, [dtype=]) -> 创建一个和 obj 的 Size 相同的,值从标准正态分布中抽取的随机初始化矩阵
torch.randint_like(obj, [low=0], high, [dtype=]) -> 创建一个和 obj 的 Size 相同的规定范围(low - high)内的整数矩阵
obj.size() -> 返回 Tensor 的 Size,返回类型为 tuple
obj.requires_grad_(True / False) -> 设置 Tensor 的 requires_grad 属性
obj.'dtype'() -> 数据类型转换,其中 dtype 为 float,long 等 Tensor 类型
sum_obj = obj1 + obj2 -> Tensor 直接相加,obj1 与 obj2 的 Size 要一致
torch.add(obj1, obj2, [out=obj3]) -> obj3 = obj1 + obj2,其中 obj3 仅为一个变量,无需为 Tensor 类型
obj1.add_(obj2) -> obj1 = obj1 + obj2, 任何 以``_`` 结尾的操作都会用结果替换原变量
obj.mean() -> 获取 Tensor 对象中值的平均数,返回值为 Tensor 对象
obj ** (int) -> 矩阵的阶乘
torch.max(obj) -> 计算 Tensor 中值的最大值,返回一个标量
torch.min(obj) -> 计算 Tensor 中值的最小值,返回一个标量
torch.max(obj, dim) 同 obj.max(dim) -> 计算最大值, dim = 0/1 计算 列/行 的最大值及其索引
torch.min(obj, dim) 同 obj.min(dim) -> 计算最小值, dim = 0/1 计算 列/行 的最大值及其索引
obj.item() -> 当 Tensor 中只有一个值或 obj 为标量时可以使用
obj[(int 或 :), (int 或 :)] -> Tensor 索引(中括号),返回某行或列,单个值或整个矩阵
torch.view(int[, int]) -> 重新排列 Size, 若只有一个参数,则只能为 Tensor 内数目,若其中一个为 -1,则为从另一个推定
numpy_obj = tensor_obj.numpy() -> 将一个 Torch Tensor 转换为 NumPy 数组
tensor_obj = torch.from_numpy(numpy_obj) -> 将一个 NumPy 数组转换为 Torch Tensor
注:NumPy 对象与 Tensor 对象共享内存
torch.cuda.is_available() -> 判断是否有 CUDA 可以使用
obj.to(device, [dtype]) -> 将 Tensor 移动到任何设备中,可以更改类型
参考链接:https://github.com/zergtant/pytorch-handbook
https://pytorch-cn.readthedocs.io/zh/latest/package_references/torch/#creation-ops