тензорный поток:: опс:: ТензорМассивГрад
#include <data_flow_ops.h>
Создает TensorArray для хранения градиентов значений в данном дескрипторе.
Краткое содержание
Если данный градиент TensorArray уже существует, возвращает ссылку на него.
Блокирует размер исходного TensorArray , отключив его флаг динамического размера.
Примечание о входном потоке flow_in:
Дескриптор flow_in заставляет выполнять поиск градиента только после того, как произошли некоторые другие операции. Например, когда прямой TensorArray имеет динамический размер, запись в этот TensorArray может изменить размер объекта. Градиент TensorArray имеет статический размер в зависимости от размера прямого TensorArray при выполнении этой операции. Более того, этим вызовом замораживается размер прямого TensorArray . В результате поток используется для обеспечения того, чтобы вызов создания градиента TensorArray происходил только после выполнения всех операций записи.
В случае TensorArrays с динамическим размером вычисление градиента должно выполняться только для операций чтения, которые сами были связаны через поток и происходили только после выполнения всех операций записи. Таким образом, окончательный размер прямого TensorArray будет известен при вызове этой операции.
Примечание об атрибуте источника:
Вызовы градиента TensorArray используют объект-аккумулятор TensorArray . Если несколько градиентов рассчитываются и выполняются в одном сеансе, несколько узлов градиента могут случайно пройти через один и тот же аккумулятор TensorArray . Это двойное значение и обычно нарушает поток градиента TensorArray .
Решение состоит в том, чтобы определить, какой вызов градиента вызывает этот конкретный градиент TensorArray . Это выполняется путем идентификации уникальной строки (например, «gradients», «gradients_1», ...) из имени входного градиента Tensor . Эта строка используется в качестве суффикса при создании здесь объекта градиента TensorArray ( source
атрибута).
source
атрибута добавляется в качестве суффикса к имени прямого TensorArray при выполнении создания/поиска, так что каждый отдельный расчет градиента получает свой собственный аккумулятор TensorArray .
Аргументы:
- область: объект области.
- handle: Дескриптор прямого TensorArray .
- flow_in: скаляр с плавающей точкой, обеспечивающий правильную цепочку операций.
- source: исходная строка градиента, используемая для принятия решения о том, какой градиент TensorArray возвращать.
Возврат:
Конструкторы и деструкторы | |
---|---|
TensorArrayGrad (const :: tensorflow::Scope & scope, :: tensorflow::Input handle, :: tensorflow::Input flow_in, StringPiece source) |
Публичные атрибуты | |
---|---|
flow_out | |
grad_handle | |
operation |
Публичные атрибуты
поток_выход
::tensorflow::Output flow_out
grad_handle
::tensorflow::Output grad_handle
операция
Operation operation
Общественные функции
ТензорМассивГрад
TensorArrayGrad( const ::tensorflow::Scope & scope, ::tensorflow::Input handle, ::tensorflow::Input flow_in, StringPiece source )