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 布局张量的稀疏维度的转置同样会生成具有相反布局的结果。
示例
>>> 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()
.