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()。