反转可变长度切片。
用法
tf.reverse_sequence(
input, seq_lengths, seq_axis=None, batch_axis=None, name=None
)
参数
-
input
一个Tensor
。要反转的输入。 -
seq_lengths
一个Tensor
。必须是以下类型之一:int32
,int64
。长度为input.dims(batch_axis)
和max(seq_lengths) <= input.dims(seq_axis)
的一维 -
seq_axis
一个int
。部分反转的维度。 -
batch_axis
可选的int
。默认为0
。执行冲销的维度。 -
name
操作的名称(可选)。
返回
- 张量。具有与输入相同的类型。
此操作首先沿维度 batch_axis
切片 input
,并且对于每个切片 i
,沿维度 seq_axis
反转第一个 seq_lengths[i]
元素。
seq_lengths
的元素必须服从 seq_lengths[i] <=
input.dims[seq_axis]
,并且 seq_lengths
必须是长度为 input.dims[batch_axis]
的向量。
沿维度 batch_axis
的输出切片 i
然后由输入切片 i
给出,沿维度 seq_axis
的第一个 seq_lengths[i]
切片反转。
示例用法:
seq_lengths = [7, 2, 3, 5]
input = [[1, 2, 3, 4, 5, 0, 0, 0], [1, 2, 0, 0, 0, 0, 0, 0],
[1, 2, 3, 4, 0, 0, 0, 0], [1, 2, 3, 4, 5, 6, 7, 8]]
output = tf.reverse_sequence(input, seq_lengths, seq_axis=1, batch_axis=0)
output
<tf.Tensor:shape=(4, 8), dtype=int32, numpy=
array([[0, 0, 5, 4, 3, 2, 1, 0],
[2, 1, 0, 0, 0, 0, 0, 0],
[3, 2, 1, 4, 0, 0, 0, 0],
[5, 4, 3, 2, 1, 6, 7, 8]], dtype=int32)>
相关用法
- Python tf.reverse用法及代码示例
- Python tf.register_tensor_conversion_function用法及代码示例
- Python tf.reshape用法及代码示例
- Python tf.repeat用法及代码示例
- Python tf.recompute_grad用法及代码示例
- Python tf.raw_ops.TPUReplicatedInput用法及代码示例
- Python tf.raw_ops.Bitcast用法及代码示例
- Python tf.raw_ops.SelfAdjointEigV2用法及代码示例
- Python tf.raw_ops.BatchMatMul用法及代码示例
- Python tf.raw_ops.OneHot用法及代码示例
- Python tf.raw_ops.ResourceScatterNdSub用法及代码示例
- Python tf.raw_ops.ReadVariableXlaSplitND用法及代码示例
- Python tf.raw_ops.GatherV2用法及代码示例
- Python tf.raw_ops.Expm1用法及代码示例
- Python tf.range用法及代码示例
- Python tf.raw_ops.BitwiseAnd用法及代码示例
- Python tf.raw_ops.UniqueWithCounts用法及代码示例
- Python tf.raw_ops.DecodeGif用法及代码示例
- Python tf.random.truncated_normal用法及代码示例
- Python tf.raw_ops.Size用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.reverse_sequence。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。