megengine.functional.transpose¶
- transpose(inp, pattern)[源代码]¶
根据给定模板交换形状和步长(stride)。
- 参数
inp (
Tensor
) – 输入张量。a list of integers including 0, 1, … ,
ndim
-1, and any number of'x'
char in dimensions where this tensor should be broadcasted. For examples:(
'x'
) -> 将一个0维向量(标量)放入一个1维向量中(0, 1) -> 等价的2维向量
(1, 0) -> 将第一维和第二维互换
(
'x'
, 0) -> 将1维向量 (N to 1xN) 中的数排成一行(0,
'x'
) -> 将一维向量 (N to Nx1)中的数排成一列(2, 0, 1) -> AxBxC 变为 CxAxB
(0,
'x'
, 1) -> AxB 变为 Ax1xB(1,
'x'
, 0) -> AxB 变为 Bx1xA(1,) -> 这样就删除了第0维。最终一定变为可以广播的维度 (1xA to A)
- 返回类型
- 返回
输出张量。
实际案例
import numpy as np from megengine import tensor import megengine.functional as F x = tensor(np.array([[1, 1], [0, 0]], dtype=np.int32)) out = F.transpose(x, (1, 0)) print(out.numpy())
输出:
[[1 0] [1 0]]