tensorflow:: ops:: SegmentSum
#include <math_ops.h>
Computes the sum along segments of a tensor.
Summary
Read the section on segmentation for an explanation of segments.
Computes a tensor such that \(output_i = \sum_j data_j\) where sum is over j
such that segment_ids[j] == i
.
If the sum is empty for a given segment ID i
, output[i] = 0
.
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.
For example:
c = tf.constant([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]]) tf.math.segment_sum(c, tf.constant([0, 0, 1])).numpy() array([[5, 5, 5, 5], [5, 6, 7, 8]], dtype=int32)
Args:
- scope: A Scope object
- segment_ids: A 1-D tensor whose size is equal to the size of
data
's first dimension. Values should be sorted and can be repeated.
Caution: The values are always validated to be sorted on CPU, never validated on GPU.
Returns:
Output
: Has same shape as data, except for dimension 0 which has sizek
, the number of segments.
Constructors and Destructors |
|
---|---|
SegmentSum(const ::tensorflow::Scope & scope, ::tensorflow::Input data, ::tensorflow::Input segment_ids)
|
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
SegmentSum
SegmentSum( const ::tensorflow::Scope & scope, ::tensorflow::Input data, ::tensorflow::Input segment_ids )
node
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const