torch.transpose¶
- torch.transpose(input, dim0, dim1) Tensor ¶
返回一个张量,它是
input
的转置版本。给定的维度dim0
和dim1
被交换。如果
input
是一个步长张量,那么生成的out
张量与input
张量共享其底层存储,因此改变其中一个的内容也会改变另一个的内容。如果
input
是一个稀疏张量,那么生成的out
张量不会与input
张量共享其底层存储。如果
input
是一个具有压缩布局的稀疏张量(SparseCSR、SparseBSR、SparseCSC 或 SparseBSC),则参数dim0
和dim1
必须都是批处理维度,或者都必须是稀疏维度。稀疏张量的批处理维度是位于稀疏维度之前。注意
交换 SparseCSR 或 SparseCSC 布局张量的稀疏维度的转置将导致布局在这两种选项之间变化。`SparseBSR`或 SparseBSC 布局张量的稀疏维度的转置也将生成具有相反布局的结果。
- 参数:
input (Tensor) – 输入张量。
dim0(int)- 要转置的第一个维度
dim1(int)- 要转置的第二个维度
示例:
>>> x = torch.randn(2, 3) >>> x tensor([[ 1.0028, -0.9893, 0.5809], [-0.1669, 0.7299, 0.4942]]) >>> torch.transpose(x, 0, 1) tensor([[ 1.0028, -0.1669], [-0.9893, 0.7299], [ 0.5809, 0.4942]])
参见
torch.t()
.