Spec-Zone.ru › TensorFlow

tf.raw_ops.TensorArrayGradV3

Создаёт TensorArray для хранения градиентов значений в заданном обработчике.

Псевдонимы

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

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.raw_ops.TensorArrayGradV3

tf.raw_ops.TensorArrayGradV3(
    handle, flow_in, source, name=None
)

Если заданный градиент TensorArray уже существует, возвращает ссылку на него.

Фиксирует размер исходного TensorArray, отключив флаг динамического размера.

Примечание об входном потоке flow_in:

Обработчик потока flow_in гарантирует, что выполнение поиска градиента произойдёт только после выполнения других операций. Например, при динамическом размере входного TensorArray записи в этот TensorArray могут изменить размер объекта. Градиент TensorArray имеет статический размер, основанный на размере входного TensorArray в момент выполнения этой операции. Кроме того, размер входного TensorArray замораживается этим вызовом. В результате, поток используется для обеспечения того, что вызов для генерации градиентного TensorArray произойдёт только после выполнения всех записей.

В случае динамически размерных TensorArray вычисление градиента должно выполняться только для операций чтения, которые сами были объединены через поток, чтобы произойти только после выполнения всех записей. Таким образом, конечный размер входного TensorArray будет известен при вызове этой операции.

Примечание об атрибуте source:

Вызовы градиента TensorArray используют объект накопителя TensorArray. Если несколько градиентов вычисляются и выполняются в одной сессии, несколько узлов градиента могут случайно пройти через один и тот же накопитель TensorArray. Это приведёт к двойному учёту и, как правило, нарушит поток градиента TensorArray.

Решение заключается в определении, в каком вызове градиента вычисляется этот конкретный градиент TensorArray. Это выполняется путём определения уникальной строки (например, «gradients», «gradients_1», ...) из имени входного тензора градиента. Эта строка используется в качестве суффикса при создании объекта градиента TensorArray здесь (атрибут source).

Атрибут source добавляется как суффикс к имени входного TensorArray при выполнении создания/поиска, чтобы каждое отдельное вычисление градиента получало собственный накопитель TensorArray.

Аргументы
handle A Tensor типа resource. Обработчик входного TensorArray.
flow_in A Tensor типа float32. Вещественный скаляр, обеспечивающий правильное объединение операций.
source A string. Строка источника градиента, используемая для определения градиента TensorArray, который нужно вернуть.
name Имя операции (необязательно).
Возвращаемое значение
Кортеж объектов Tensor (grad_handle, flow_out).
grad_handle A Tensor типа resource.
flow_out A Tensor типа float32.

© 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/python/tf/raw_ops/TensorArrayGradV3

Spec-Zone.ru

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