torch.transpose¶
- torch.transpose(input, dim0, dim1) Tensor¶
返回 input 的轉置版本張量。給定的維度
dim0和dim1被交換。如果
input是跨步張量 (strided tensor),則生成的out張量與其底層的儲存共享記憶體,因此改變其中一個的內容會改變另一個的內容。如果
input是稀疏張量 (sparse tensor),則生成的out張量 *不* 與input張量共享底層的儲存。如果
input是具有壓縮佈局(SparseCSR, SparseBSR, SparseCSC 或 SparseBSC)的稀疏張量 (sparse tensor),則引數dim0和dim1必須要麼都是批處理維度 (batch dimensions),要麼都是稀疏維度 (sparse dimensions)。稀疏張量的批處理維度是稀疏維度之前的維度。注意
互換 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()。