Shortcuts

torch.movedim

torch.movedim(input, source, destination) 张量

input的维度从source位置移动到destination位置。

未明确移动的 input 的其他维度将保留其原始顺序,并出现在 destination 中未指定的位置。

Parameters
  • 输入 (张量) – 输入张量。

  • (inttupleints) – 要移动的维度的原始位置。这些必须是唯一的。

  • 目标 (inttupleints) – 每个原始维度的目标位置。这些也必须是唯一的。

示例:

>>> t = torch.randn(3,2,1)
>>> t
tensor([[[-0.3362],
        [-0.8437]],

        [[-0.9627],
        [ 0.1727]],

        [[ 0.5173],
        [-0.1398]]])
>>> torch.movedim(t, 1, 0).shape
torch.Size([2, 3, 1])
>>> torch.movedim(t, 1, 0)
tensor([[[-0.3362],
        [-0.9627],
        [ 0.5173]],

        [[-0.8437],
        [ 0.1727],
        [-0.1398]]])
>>> torch.movedim(t, (1, 2), (0, 1)).shape
torch.Size([2, 1, 3])
>>> torch.movedim(t, (1, 2), (0, 1))
tensor([[[-0.3362, -0.9627,  0.5173]],

        [[-0.8437,  0.1727, -0.1398]]])
优云智算