tensorflow::ops::UnsortedSegmentProd
#include <math_ops.h>
Вычисляет произведение по сегментам тензора.
Краткое описание
Прочитайте раздел о сегментации для объяснения сегментов.
Этот оператор похож на tf.math.unsorted_segment_sum. Вместо вычисления суммы по сегментам, он вычисляет произведение всех элементов, принадлежащих сегменту, таким образом:
\(output_i = \prod_{j...} data[j...]\) где произведение берется по наборам j..., таким образом, что segment_ids[j...] == i.
Например:
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)
Если для данного идентификатора сегмента нет элементов, i он выводит 1.
Если указанный идентификатор сегмента i отрицательный, соответствующее значение отбрасывается и не включается в результат. Внимание: на процессоре CPU значения segment_ids всегда проверяются на соответствие условию, что они меньше num_segments, а при выходе за пределы допустимого диапазона генерируется ошибка. На GPU такая проверка не выполняется. На GPU выход за пределы допустимого диапазона приводит к безопасной, но неопределённой поведению, которое может включать игнорирование выходящих за пределы индексов или вывод тензора с 0 в первом измерении формы, если num_segments равно 0.
Args:
- scope: Объект Scope
- segment_ids: Тензор, форма которого является префиксом
data.shape. Значения должны быть меньшеnum_segments.
Внимание: на процессоре CPU значения всегда проверяются на соответствие диапазону, на GPU — нет.
Returns:
-
Output: Имеет такую же форму, как и данные, за исключением первыхsegment_ids.rankизмерений, которые заменяются одним измерением размеромnum_segments.
| Конструкторы и деструкторы | |
|---|---|
UnsortedSegmentProd(const ::tensorflow::Scope & scope, ::tensorflow::Input data, ::tensorflow::Input segment_ids, ::tensorflow::Input num_segments) |
| Общедоступные атрибуты | |
|---|---|
operation | |
output | |
| Общедоступные функции | |
|---|---|
node() const | ::tensorflow::Node * |
operator::tensorflow::Input() const | |
operator::tensorflow::Output() const | |
Общедоступные атрибуты
operation
Operation operation
output
::tensorflow::Output output
Общедоступные функции
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
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/cc/class/tensorflow/ops/unsorted-segment-prod