Spec-Zone.ru › PyTorch 2

torch.roll

torch.roll(input, shifts, dims=None) → Tensor

Сдвигает элементы тензора вдоль заданной размерности(ей). Элементы, сдвинутые за пределы последней позиции, вводятся в первую позицию. Если dims равно None, тензор будет сжат в плоский вид перед сдвигом, а затем восстановлен до исходной формы.

Параметры
  • input (Тензор) – входной тензор.
  • shifts (целое число или кортеж из целых чисел) – Количество позиций, на которое сдвигаются элементы тензора. Если shifts является кортежем, dims также должен быть кортежем такой же длины, и каждая размерность будет сдвинута на соответствующее значение.
  • dims (целое число или кортеж из целых чисел) – Ось, вдоль которой выполняется сдвиг.

Пример:

>>> x = torch.tensor([1, 2, 3, 4, 5, 6, 7, 8]).view(4, 2)
>>> x
tensor([[1, 2],
        [3, 4],
        [5, 6],
        [7, 8]])
>>> torch.roll(x, 1)
tensor([[8, 1],
        [2, 3],
        [4, 5],
        [6, 7]])
>>> torch.roll(x, 1, 0)
tensor([[7, 8],
        [1, 2],
        [3, 4],
        [5, 6]])
>>> torch.roll(x, -1, 0)
tensor([[3, 4],
        [5, 6],
        [7, 8],
        [1, 2]])
>>> torch.roll(x, shifts=(2, 1), dims=(0, 1))
tensor([[6, 5],
        [8, 7],
        [2, 1],
        [4, 3]])

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.roll.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API