Spec-Zone.ru › TensorFlow 2.4

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", ...) из имени входного градиента Tensor. Эта строка используется в качестве суффикса при создании объекта градиента 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.

© 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/r2.4/api_docs/python/tf/raw_ops/TensorArrayGradV3

Spec-Zone.ru

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