tf.math.unsorted_segment_sum

Computes the sum along segments of a tensor.

View aliases

Compat aliases for migration

See Migration guide for more details.

tf.compat.v1.math.unsorted_segment_sum, tf.compat.v1.unsorted_segment_sum

tf.math.unsorted_segment_sum(
    data: Annotated[Any, tf.raw_ops.Any],
    segment_ids: Annotated[Any, tf.raw_ops.Any],
    num_segments: Annotated[Any, tf.raw_ops.Any],
    name=None
) -> Annotated[Any, tf.raw_ops.Any]

Read the section on segmentation for an explanation of segments.

Computes a tensor such that \(output[i] = \sum_{j...} data[j...]\) where the sum is over tuples j... such that segment_ids[j...] == i. Unlike SegmentSum, segment_ids need not be sorted and need not cover all values in the full range of valid values.

If the sum is empty for a given segment ID i, output[i] = 0. If the given segment ID i is negative, the value is dropped and will not be added to the sum of the segment.

num_segments should equal the number of distinct segment IDs.

c = [[1,2,3,4], [5,6,7,8], [4,3,2,1]]
tf.math.unsorted_segment_sum(c, [0, 1, 0], num_segments=2).numpy()
array([[5, 5, 5, 5],
       [5, 6, 7, 8]], dtype=int32)

Args

data A Tensor. Must be one of the following types: float32, float64, int32, uint8, int16, int8, complex64, int64, qint8, quint8, qint32, bfloat16, qint16, quint16, uint16, complex128, half, uint32, uint64.
segment_ids A Tensor. Must be one of the following types: int16, int32, int64. A tensor whose shape is a prefix of data.shape. The values must be less than num_segments.

Returns

A Tensor. Has the same type as data.

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.

Last updated 2024-04-26 UTC.