tf.roll
Сдвигает элементы тензора вдоль оси.
tf.roll(
input, shift, axis, name=None
)
Используется в блокнотах
| Используется в руководствах |
|---|
Элементы сдвигаются в положительном направлении (к большим индексам) на величину смещения shift вдоль измерения axis. Отрицательные значения shift сдвигают элементы в противоположном направлении. Элементы, перемещаемые за последнюю позицию, переходят в начало, и наоборот. Можно указать несколько сдвигов вдоль нескольких осей.
Например:
# 't' is [0, 1, 2, 3, 4] roll(t, shift=2, axis=0) ==> [3, 4, 0, 1, 2] # shifting along multiple dimensions # 't' is [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]] roll(t, shift=[1, -2], axis=[0, 1]) ==> [[7, 8, 9, 5, 6], [2, 3, 4, 0, 1]] # shifting along the same axis multiple times # 't' is [[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]] roll(t, shift=[2, -3], axis=[1, 1]) ==> [[1, 2, 3, 4, 0], [6, 7, 8, 9, 5]]
| Аргументы | |
|---|---|
input | Tensor. |
shift | Tensor. Должен иметь один из следующих типов: int32, int64. Размерность должна быть 0-D или 1-D. shift[i] задаёт количество позиций, на которое элементы сдвигаются в положительном направлении (к большим индексам) вдоль измерения, заданного параметром axis[i]. Отрицательные сдвиги перемещают элементы в противоположном направлении. |
axis | Tensor. Должен иметь один из следующих типов: int32, int64. Размерность должна быть 0-D или 1-D. axis[i] задаёт измерение, вдоль которого должен выполняться сдвиг shift[i]. Если одна и та же ось указана несколько раз, общий сдвиг для этой оси будет равен сумме всех относящихся к ней сдвигов. |
name | Имя операции (необязательно). |
| Возвращает | |
|---|---|
Tensor. Имеет тот же тип, что и input. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/roll