返回包含指定数字序列的RaggedTensor
。
用法
tf.ragged.range(
starts, limits=None, deltas=1, dtype=None, name=None,
row_splits_dtype=tf.dtypes.int64
)
参数
-
starts
向量或标量Tensor
。如果limits
不是None
,则指定每个范围的第一个条目;否则,指定范围限制,第一个条目默认为0
。 -
limits
向量或标量Tensor
。指定每个范围的独占上限。 -
deltas
向量或标量Tensor
。指定每个范围的增量。默认为1
。 -
dtype
结果张量的元素类型。如果未指定,则根据其他参数选择一个值。 -
name
操作的名称。 -
row_splits_dtype
dtype
用于返回的RaggedTensor
的row_splits
张量。tf.int32
或tf.int64
之一。
返回
-
RaggedTensor
类型为dtype
和ragged_rank=1
。
返回的 RaggedTensor
的每一行都包含一个序列:
ragged.range(starts, limits, deltas)[i] ==
tf.range(starts[i], limits[i], deltas[i])
如果 start[i] < limits[i] and deltas[i] > 0
,那么 output[i]
将是一个空列表。同样,如果 start[i] > limits[i] and deltas[i] < 0
,那么 output[i]
将是一个空列表。此行为与 Python range
函数一致,但与 tf.range
操作不同,后者在这些情况下返回错误。
例子:
tf.ragged.range([3, 5, 2]).to_list()
[[0, 1, 2], [0, 1, 2, 3, 4], [0, 1]]
tf.ragged.range([0, 5, 8], [3, 3, 12]).to_list()
[[0, 1, 2], [], [8, 9, 10, 11]]
tf.ragged.range([0, 5, 8], [3, 3, 12], 2).to_list()
[[0, 2], [], [8, 10]]
输入张量 starts
, limits
和 deltas
可以是标量或向量。向量输入必须全部具有相同的大小。标量输入被广播以匹配向量输入的大小。
相关用法
- Python tf.ragged.row_splits_to_segment_ids用法及代码示例
- Python tf.ragged.cross用法及代码示例
- Python tf.ragged.stack_dynamic_partitions用法及代码示例
- Python tf.ragged.boolean_mask用法及代码示例
- Python tf.ragged.stack用法及代码示例
- Python tf.ragged.map_flat_values用法及代码示例
- Python tf.ragged.cross_hashed用法及代码示例
- Python tf.ragged.segment_ids_to_row_splits用法及代码示例
- Python tf.ragged.constant用法及代码示例
- 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用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.ragged.range。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。