tf.raw_ops.UnsortedSegmentProd
Stay organized with collections
Save and categorize content based on your preferences.
Computes the product along segments of a tensor.
tf.raw_ops.UnsortedSegmentProd(
data, segment_ids, num_segments, name=None
)
Read
the section on segmentation
for an explanation of segments.
This operator is similar to the unsorted segment sum operator found
(here).
Instead of computing the sum over segments, it computes the product of all
entries belonging to a segment such that:
\(output_i = \prod_{j...} data[j...]\) where the product is over tuples
j...
such that segment_ids[j...] == i
.
For example:
c = tf.constant([[1,2,3,4], [5,6,7,8], [4,3,2,1]])
tf.unsorted_segment_prod(c, tf.constant([0, 1, 0]), num_segments=2)
# ==> [[ 4, 6, 6, 4],
# [5, 6, 7, 8]]
If there is no entry for a given segment ID i
, it outputs 1.
If the given segment ID i
is negative, then the corresponding value is
dropped, and will not be included in the result.
Args |
data
|
A Tensor . Must be one of the following types: float32 , float64 , int32 , uint8 , int16 , int8 , complex64 , int64 , qint8 , quint8 , qint32 , bfloat16 , uint16 , complex128 , half , uint32 , uint64 .
|
segment_ids
|
A Tensor . Must be one of the following types: int32 , int64 .
A tensor whose shape is a prefix of data.shape .
|
num_segments
|
A Tensor . Must be one of the following types: int32 , int64 .
|
name
|
A name for the operation (optional).
|
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 2022-10-27 UTC.
[null,null,["Last updated 2022-10-27 UTC."],[],[],null,["# tf.raw_ops.UnsortedSegmentProd\n\nComputes the product 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.raw_ops.UnsortedSegmentProd`](https://www.tensorflow.org/api_docs/python/tf/raw_ops/UnsortedSegmentProd)\n\n\u003cbr /\u003e\n\n tf.raw_ops.UnsortedSegmentProd(\n data, segment_ids, num_segments, name=None\n )\n\nRead\n[the section on segmentation](https://tensorflow.org/api_docs/python/tf/math#Segmentation)\nfor an explanation of segments.\n\nThis operator is similar to the unsorted segment sum operator found\n[(here)](../../../api_docs/python/math_ops#UnsortedSegmentSum).\nInstead of computing the sum over segments, it computes the product of all\nentries belonging to a segment such that:\n\n\\\\(output_i = \\\\prod_{j...} data\\[j...\\]\\\\) where the product is over tuples\n`j...` such that `segment_ids[j...] == i`.\n\n#### For example:\n\n c = tf.constant([[1,2,3,4], [5,6,7,8], [4,3,2,1]])\n tf.unsorted_segment_prod(c, tf.constant([0, 1, 0]), num_segments=2)\n # ==\u003e [[ 4, 6, 6, 4],\n # [5, 6, 7, 8]]\n\nIf there is no entry for a given segment ID `i`, it outputs 1.\n\nIf the given segment ID `i` is negative, then the corresponding value is\ndropped, and will not be included in the result.\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`, `uint16`, `complex128`, `half`, `uint32`, `uint64`. |\n| `segment_ids` | A `Tensor`. Must be one of the following types: `int32`, `int64`. A tensor whose shape is a prefix of `data.shape`. |\n| `num_segments` | A `Tensor`. Must be one of the following types: `int32`, `int64`. |\n| `name` | A name for the operation (optional). |\n\n\u003cbr /\u003e\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"]]