Roll

public final class Roll

Rolls the elements of a tensor along an axis.

The elements are shifted positively (towards larger indices) by the offset of `shift` along the dimension of `axis`. Negative `shift` values will shift elements in the opposite direction. Elements that roll passed the last position will wrap around to the first and vice versa. Multiple shifts along multiple axes may be specified.

For example:

# '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]]
 

Public Methods

Output<T>
asOutput()
Returns the symbolic handle of a tensor.
static <T, U extends Number, V extends Number> Roll<T>
create(Scope scope, Operand<T> input, Operand<U> shift, Operand<V> axis)
Factory method to create a class wrapping a new Roll operation.
Output<T>
output()
Has the same shape and size as the input.

Inherited Methods

Public Methods

public Output<T> asOutput ()

Returns the symbolic handle of a tensor.

Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.

public static Roll<T> create (Scope scope, Operand<T> input, Operand<U> shift, Operand<V> axis)

Factory method to create a class wrapping a new Roll operation.

Parameters
scope current scope
shift Dimension must be 0-D or 1-D. `shift[i]` specifies the number of places by which elements are shifted positively (towards larger indices) along the dimension specified by `axis[i]`. Negative shifts will roll the elements in the opposite direction.
axis Dimension must be 0-D or 1-D. `axis[i]` specifies the dimension that the shift `shift[i]` should occur. If the same axis is referenced more than once, the total shift for that axis will be the sum of all the shifts that belong to that axis.
Returns
  • a new instance of Roll

public Output<T> output ()

Has the same shape and size as the input. The elements are shifted positively (towards larger indices) by the offsets of `shift` along the dimensions of `axis`.