# tensorflow::ops::UnsortedSegmentProd

#include <math_ops.h>

Computes the product along segments of a tensor.

## Summary

Read the section on segmentation for an explanation of segments.

This operator is similar to tf.math.unsorted_segment_sum, 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.math.unsorted_segment_prod(c, tf.constant([0, 1, 0]), num_segments=2).numpy() array([[4, 6, 6, 4], [5, 6, 7, 8]], dtype=int32)

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. Caution: On CPU, values in segment_ids are always validated to be less than num_segments, and an error is thrown for out-of-bound indices. On GPU, this does not throw an error for out-of-bound indices. On Gpu, out-of-bound indices result in safe but unspecified behavior, which may include ignoring out-of-bound indices or outputting a tensor with a 0 stored in the first dimension of its shape if num_segments is 0.

Args:

• scope: A Scope object
• segment_ids: A tensor whose shape is a prefix of data.shape. The values must be less than num_segments.

Caution: The values are always validated to be in range on CPU, never validated on GPU.

Returns:

• Output: Has same shape as data, except for the first segment_ids.rank dimensions, which are replaced with a single dimension which has size num_segments.

### Constructors and Destructors

UnsortedSegmentProd(const ::tensorflow::Scope & scope, ::tensorflow::Input data, ::tensorflow::Input segment_ids, ::tensorflow::Input num_segments)

### Public attributes

operation
Operation
output
::tensorflow::Output

### Public functions

node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const

## Public attributes

### operation

Operation operation

### output

::tensorflow::Output output

## Public functions

### UnsortedSegmentProd

 UnsortedSegmentProd(
const ::tensorflow::Scope & scope,
::tensorflow::Input data,
::tensorflow::Input segment_ids,
::tensorflow::Input num_segments
)

### node

::tensorflow::Node * node() const

### operator::tensorflow::Input

 operator::tensorflow::Input() const

### operator::tensorflow::Output

 operator::tensorflow::Output() const
[]
[]