segment_min

paddle.incubate. segment_min ( data, segment_ids, name=None ) [source]

Warning

API “paddle.incubate.tensor.math.segment_min” is deprecated since 2.4.0, and will be removed in future versions. Please use “paddle.geometric.segment_min” instead. Reason: paddle.incubate.segment_min will be removed in future

Segment min operator.

Calculate the minimum elements of input data which with the same index in segment_ids. It computes a tensor such that

\[out_i = \min_{j \in \{segment\_ids_j == i \} } data_{j}\]

where min is over j such that segment_ids[j] == i.

Parameters
  • data (tensor) – a tensor, available data type float32, float64, int32, int64.

  • segment_ids (tensor) – a 1-d tensor, which have the same size with the first dimension of input data. available data type is int32, int64.

  • name (str, optional) – Name for the operation (optional, default is None). For more information, please refer to Name.

Returns

Tensor, the minimum result.

Examples

>>> import paddle
>>> data = paddle.to_tensor([[1, 2, 3], [3, 2, 1], [4, 5, 6]], dtype='float32')
>>> segment_ids = paddle.to_tensor([0, 0, 1], dtype='int32')
>>> out = paddle.incubate.segment_min(data, segment_ids)
>>> print(out)
Tensor(shape=[2, 3], dtype=float32, place=Place(cpu), stop_gradient=True,
[[1., 2., 1.],
 [4., 5., 6.]])