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

Constants

String OP_NAME The name of this op, as known by TensorFlow core engine

Public Methods

Output <T>
asOutput ()
Returns the symbolic handle of the tensor.
static <T extends TType > Roll <T>
create ( Scope scope, Operand <T> input, Operand <? extends TNumber > shift, Operand <? extends TNumber > 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

Constants

public static final String OP_NAME

The name of this op, as known by TensorFlow core engine

Constant Value: "Roll"

Public Methods

public Output <T> asOutput ()

Returns the symbolic handle of the 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 <? extends TNumber > shift, Operand <? extends TNumber > 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`.