tensorflow::ops::UnsortedSegmentMax
#include <math_ops.h>
Вычисляет максимальное значение по сегментам тензора.
Краткое описание
См. раздел о сегментации для объяснения сегментов.
Этот оператор похож на tf.math.unsorted_segment_sum, но вместо вычисления суммы по сегментам вычисляет максимум таким образом, что:
\(output_i = \max_{j...} data[j...]\) где максимум берется по кортежам j... таким образом, что segment_ids[j...] == i.
Если для данного идентификатора сегмента i максимум пуст, выводится минимально возможное значение для данного типа чисел, output[i] = numeric_limits.
Если указанный идентификатор сегмента i отрицательный, соответствующее значение отбрасывается и не включается в результат.
Предупреждение: В процессоре CPU значения в segment_ids всегда проверяются на то, что они меньше num_segments, а при выходе за границы индексов выбрасывается ошибка. В графическом процессоре (GPU) это не приводит к ошибке при выходе за границы индексов. В GPU выход за пределы границ приводит к безопасному, но неопределенному поведению, которое может включать игнорирование индексов за пределами границ или вывод тензора с 0, записанным в первом измерении его формы, если num_segments равно 0.
Например:
c = tf.constant([[1,2,3,4], [5,6,7,8], [4,3,2,1]]) tf.math.unsorted_segment_max(c, tf.constant([0, 1, 0]), num_segments=2).numpy() array([[4, 3, 3, 4], [5, 6, 7, 8]], dtype=int32)
Аргументы:
- scope: Объект Scope
- segment_ids: Тензор, форма которого является префиксом
data.shape. Значения должны быть меньшеnum_segments.
Предупреждение: На процессоре CPU значения всегда проверяются на соответствие диапазону, но никогда не проверяются в графическом процессоре (GPU).
Возвращает:
-
Output: Имеет такую же форму, как данные, за исключением первыхsegment_ids.rankизмерений, которые заменяются одним измерением размеромnum_segments.
| Конструкторы и деструкторы | |
|---|---|
UnsortedSegmentMax(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
выход
::tensorflow::Output output
Публичные функции
UnsortedSegmentMax
UnsortedSegmentMax( const ::tensorflow::Scope & scope, ::tensorflow::Input data, ::tensorflow::Input segment_ids, ::tensorflow::Input num_segments )
узел
::tensorflow::Node * node() const
оператор::tensorflow::Вход
operator::tensorflow::Input() const
оператор::tensorflow::Выход
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/versions/r2.9/api_docs/cc/class/tensorflow/ops/unsorted-segment-max