TensorFlow函数:tf.manip.roll
2018-09-12 14:57 更新
tf.manip.roll函数
tf.manip.roll(
input,
shift,
axis
)
定义在:tensorflow/python/ops/manip_ops.py.
沿轴线滚动张量的元素.
沿着axis的维度,通过shift的偏移,元素正向移动(朝向更大的指数).
负值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有相同的类型.