Spec-Zone.ru › TensorFlow C++

tensorflow::ops::SegmentMinV2

#include <math_ops.h>

Вычисляет минимальное значение по сегментам тензора.

Резюме

Прочитайте раздел о сегментации для объяснения сегментов.

Вычисляет тензор, такой что \(output_i = \min_j(data_j)\) где min по j, при условии, что segment_ids[j] == i.

Если минимум пуст для данного идентификатора сегмента i, выводится наибольшее возможное значение для конкретного числового типа, output[i] = numeric_limits::max().

Примечание: этот оператор в настоящее время поддерживается только с jit_compile=True.

Предупреждение: на процессоре значения в segment_ids всегда проверяются на упорядоченность, и при указании индексов, не увеличивающихся в порядке, генерируется ошибка. На графическом процессоре ошибка не генерируется для неупорядоченных индексов. На графическом процессоре неопределённое, но безопасное поведение возникает при использовании индексов в неправильном порядке, что может включать обработку индексов в неправильном порядке как одинаковых с последующим меньшим индексом.

Единственное различие с SegmentMin — дополнительный вход num_segments. Это помогает в оценке формы выходных данных во время компиляции. num_segments должен быть согласован с segment_ids. Например, Max(segment_ids) должен быть равен num_segments - 1 для 1-мерного segment_ids. При несогласованном num_segments оператор всё равно выполняется. Единственное различие заключается в том, что выходные данные принимают размер num_segments независимо от размера segment_ids и data. При num_segments, меньшем ожидаемого размера выходных данных, последние элементы игнорируются, а при num_segments, большем ожидаемого размера выходных данных, последние элементы присваиваются наибольшему возможному значению для конкретного числового типа.

Например:

.function(jit_compile=True) ... def test(c): ... return tf.raw_ops.SegmentMinV2(data=c, segment_ids=tf.constant([0, 0, 1]), num_segments=2) c = tf.constant([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]]) test(c).numpy() array([[1, 2, 2, 1], [5, 6, 7, 8]], dtype=int32)

Аргументы:

  • scope: Объект Scope
  • segment_ids: 1-мерный тензор, размер которого равен размеру первого измерения data. Значения должны быть отсортированы и могут повторяться. Значения должны быть меньше num_segments.

Предупреждение: на процессоре значения всегда проверяются на упорядоченность, на графическом процессоре — никогда.

Возвращает:

  • Output: Имеет такую же форму, как и данные, за исключением первых segment_ids.rank измерений, которые заменяются одним измерением с размером num_segments.
Конструкторы и деструкторы
SegmentMinV2(const ::tensorflow::Scope & scope, ::tensorflow::Input data, ::tensorflow::Input segment_ids, ::tensorflow::Input num_segments)
Общедоступные атрибуты
operation
Operation
output
::tensorflow::Output
Общедоступные функции
node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const

Общедоступные атрибуты

operation

Operation operation

выход

::tensorflow::Output output

Общедоступные функции

SegmentMinV2

 SegmentMinV2(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input data,
  ::tensorflow::Input segment_ids,
  ::tensorflow::Input num_segments
)

узел

::tensorflow::Node * node() const 

operator::tensorflow::Вход

operator::tensorflow::Input() const 

operator::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/api_docs/cc/class/tensorflow/ops/segment-min-v2

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API