Spec-Zone.ru › TensorFlow 2.9

tf.ragged.map_flat_values

Просмотреть исходный код на GitHub

Применяет op к flat_values одному или нескольким RaggedTensor.

Просмотр псевдонимов

Псевдонимы для миграции

Дополнительные сведения см. в руководстве по миграции.

tf.compat.v1.ragged.map_flat_values

tf.ragged.map_flat_values(
    op, *args, **kwargs
)

Заменяет любые RaggedTensor в args или kwargs на его flat_values тензор (который сворачивает все разряженные измерения), а затем вызывает op. Возвращает RaggedTensor, который создаётся из входных RaggedTensor и значения, возвращённого op.

Если входные аргументы содержат несколько RaggedTensors, то они должны иметь одинаковые nested_row_splits.

Это операция обычно используется для применения поэлементных операций к каждому значению в RaggedTensor.

Предупреждение: tf.ragged.map_flat_values не применяет op к каждой строке разряженного тензора. Это различие важно для операций, не являющихся поэлементными, таких как tf.reduce_sum. Если вы хотите применить операцию, не являющуюся поэлементной, к каждой строке разряженного тензора, используйте tf.map_fn вместо этого. (Возможно, вам потребуется указать output_signature при использовании tf.map_fn с разряженными тензорами.)

Примеры:

rt = tf.ragged.constant([[1, 2, 3], [], [4, 5], [6]])
tf.ragged.map_flat_values(tf.ones_like, rt)
<tf.RaggedTensor [[1, 1, 1], [], [1, 1], [1]]>
tf.ragged.map_flat_values(tf.multiply, rt, rt)
<tf.RaggedTensor [[1, 4, 9], [], [16, 25], [36]]>
tf.ragged.map_flat_values(tf.add, rt, 5)
<tf.RaggedTensor [[6, 7, 8], [], [9, 10], [11]]>

Пример с операцией, не являющейся поэлементной (обратите внимание, что map_flat_values и map_fn возвращают разные результаты):

rt = tf.ragged.constant([[1.0, 3.0], [], [3.0, 6.0, 3.0]])
def normalized(x):
  return x / tf.reduce_sum(x)
tf.ragged.map_flat_values(normalized, rt)
<tf.RaggedTensor [[0.0625, 0.1875], [], [0.1875, 0.375, 0.1875]]>
tf.map_fn(normalized, rt)
<tf.RaggedTensor [[0.25, 0.75], [], [0.25, 0.5, 0.25]]>
Аргументы
op Операция, которая должна быть применена к RaggedTensor flat_values. op обычно является поэлементной операцией (например, math_ops.add), но может быть использована любая операция, сохраняющая размер внешнего измерения. Т.е., размер значения, возвращённого op должен соответствовать размеру тензоров RaggedTensor' flat_values .
*args Аргументы для op .
**kwargs Параметры для op .
Возвращает
RaggedTensor, чьи ragged_rank совпадают с ragged_rank всех входных RaggedTensors.
Исключения
ValueError Если args не содержит RaggedTensors, или если размер входных RaggedTensors не совпадает.

© 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/python/tf/ragged/map_flat_values

Spec-Zone.ru

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