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: int32, int64.
A 1-D tensor whose size is equal to the size of data's
first dimension. Values should be sorted and can be repeated.
[null,null,["Last updated 2024-04-26 UTC."],[],[],null,["# tf.math.segment_sum\n\nComputes the sum along segments of a tensor.\n\n#### View aliases\n\n\n**Compat aliases for migration**\n\nSee\n[Migration guide](https://www.tensorflow.org/guide/migrate) for\nmore details.\n\n[`tf.compat.v1.math.segment_sum`](https://www.tensorflow.org/api_docs/python/tf/math/segment_sum), [`tf.compat.v1.segment_sum`](https://www.tensorflow.org/api_docs/python/tf/math/segment_sum)\n\n\u003cbr /\u003e\n\n tf.math.segment_sum(\n data: Annotated[Any, ../../tf/raw_ops/Any],\n segment_ids: Annotated[Any, ../../tf/raw_ops/Any],\n name=None\n ) -\u003e Annotated[Any, ../../tf/raw_ops/Any]\n\nRead\n[the section on segmentation](https://tensorflow.org/api_docs/python/tf/math#Segmentation)\nfor an explanation of segments.\n\nComputes a tensor such that\n\\\\(output_i = \\\\sum_j data_j\\\\) where sum is over `j` such\nthat `segment_ids[j] == i`.\n\nIf the sum is empty for a given segment ID `i`, `output[i] = 0`.\n**Caution:** On CPU, values in `segment_ids` are always validated to be sorted, and an error is thrown for indices that are not increasing. On GPU, this does not throw an error for unsorted indices. On GPU, out-of-order indices result in safe but unspecified behavior, which may include treating out-of-order indices as the same as a smaller following index. \n\n#### For example:\n\n c = tf.constant([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]])\n tf.math.segment_sum(c, tf.constant([0, 0, 1])).numpy()\n array([[5, 5, 5, 5],\n [5, 6, 7, 8]], dtype=int32)\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ---- ||\n|---------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `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`. |\n| `segment_ids` | A `Tensor`. Must be one of the following types: `int32`, `int64`. A 1-D tensor whose size is equal to the size of `data`'s first dimension. Values should be sorted and can be repeated. \u003cbr /\u003e | **Caution:** The values are always validated to be sorted on CPU, never validated on GPU. |\n| `name` | A name for the operation (optional). |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ------- ||\n|---|---|\n| A `Tensor`. Has the same type as `data`. ||\n\n\u003cbr /\u003e"]]