1- 张量
1.1 创建张量
1)根据列表
1 | import torch |
2)根据numpy数组
1 | import torch |
3)根据Tensor
1 | import torch |
4)根据形状
1 | shape=(2,3) |
1.2 张量的属性
属性 | 解释 |
---|---|
shape | 形状 |
dtype | 数据类型 |
device | 在哪个设备上 |
1.3 张量操作
1.3.1 张量判断
操作 | 解释 |
---|---|
is_tensor() | 是否为tensor |
is_complex() | 元素为复数 |
is_floating_point() | 元素为浮点数 |
numel() | 元素个数 |
1.3.2 创建操作
操作 | 解释 |
---|---|
tensor() | 根据内容创建张量 |
zeros() ones() eye() empty() full(形状, 数值) |
全0矩阵 全1矩阵 单位矩阵 未初始化的张量 单元素填充 |
zeros_like() ones_like() |
全0矩阵 全1矩阵 |
arange() | 范围:[ ) |
range() | 范围:[ ],steps指定步长 |
linspace() logspace |
范围:[ ],steps指定个数 确定底数,生成一系列指数 |
1.3.3 索引,切片,拼接,变异
操作 | 解释 |
---|---|
cat(tensors , dim=0) | 按维度拼接(拼谁谁变长,其他维度相等) |
stack(tensors , dim=0) | 按维度堆叠(会新增维度) |
chunk(input, chunks, dim=0) | 平均切成chunks段 |
dsplit(input, indices_or_sections) hsplit() split() |
按维度2(深度)切割 按维度1(高度)切割 切割 |
dstack(tensors, *, out=None) hstack() |
按维度3叠加(新增维度) 按维度2拼接 |
reshape(input, shape) | 改变形状 |
squeeze(input, dim=None) | 压缩值为1的维度 |
-
1 | import torch |
1 | import torch |
1 | import torch |
1 | import torch |
1 | import torch |
- torch.logspace(start, end, steps, base=10.0, ***, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor
1 | import torch |
- torch.cat(tensors, dim=0, ***, out=None) → Tensor
1 | import torch |
1 | import torch |
1 | import torch |
1 | import torch |
1 | import torch |
1 | import torch |