tf.math.unsorted_segment_sqrt_n  |  TensorFlow v2.0.0 (original) (raw)

Computes the sum along segments of a tensor divided by the sqrt(N).

View aliases

Compat aliases for migration

SeeMigration guide for more details.

tf.compat.v1.math.unsorted_segment_sqrt_n, tf.compat.v1.unsorted_segment_sqrt_n

tf.math.unsorted_segment_sqrt_n(
    data, segment_ids, num_segments, name=None
)

Read the section on segmentationfor an explanation of segments.

This operator is similar to the unsorted segment sum operator foundhere. Additionally to computing the sum over segments, it divides the results by sqrt(N).

\(output_i = 1/sqrt(N_i) \sum_{j...} data[j...]\) where the sum is over tuples j... such that segment_ids[j...] == i with \N_i\ being the number of occurrences of id \i\.

If there is no entry for a given segment ID i, it outputs 0.

Note that this op only supports floating point and complex dtypes, due to tf.sqrt only supporting these types.

If the given segment ID i is negative, the value is dropped and will not be added to the sum of the segment.

Args
data A Tensor with floating point or complex dtype.
segment_ids An integer tensor whose shape is a prefix of data.shape.
num_segments An integer scalar Tensor. The number of distinct segment IDs.
name A name for the operation (optional).
Returns
A Tensor. Has same shape as data, except for the first segment_ids.rankdimensions, which are replaced with a single dimension which has sizenum_segments.