tf.math.unsorted_segment_prod
Вычисляет произведение по сегментам тензора.
tf.math.unsorted_segment_prod(
data, segment_ids, num_segments, name=None
)
Прочитайте раздел о сегментации для объяснения сегментов.
Этот оператор похож на оператор суммирования по сегментам без сортировки, который можно найти (здесь). Вместо вычисления суммы по сегментам он вычисляет произведение всех элементов, принадлежащих сегменту таким образом:
\(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.unsorted_segment_prod(c, tf.constant([0, 1, 0]), num_segments=2) # ==> [[ 4, 6, 6, 4], # [5, 6, 7, 8]]
Если для данного идентификатора сегмента нет записи i, он выводит 1.
Если заданный идентификатор сегмента i отрицателен, соответствующее значение отбрасывается и не включается в результат.
| Аргументы | |
|---|---|
data | А Tensor. Должен быть одним из следующих типов: float32, float64, int32, uint8, int16, int8, complex64, int64, qint8, quint8, qint32, bfloat16, uint16, complex128, half, uint32, uint64. |
segment_ids | А Tensor. Должен быть одним из следующих типов: int32, int64. Тензор, форма которого является префиксом формы data.shape. |
num_segments | А Tensor. Должен быть одним из следующих типов: int32, int64. |
name | Имя операции (необязательно). |
| Возвращает | |
|---|---|
А Tensor. Имеет тот же тип, что и data. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/math/unsorted_segment_prod