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 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 = {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:

  • scope: A Scope object
  • segment_ids: A tensor whose shape is a prefix of data.shape .

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
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