Merken Sie den Termin vor! Google I / O kehrt vom 18. bis 20. Mai zurück Registrieren Sie sich jetzt
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Tensorflow :: ops :: TensorArrayGrad

#include <data_flow_ops.h>

Erstellt ein TensorArray zum Speichern der Werteverläufe im angegebenen Handle.

Zusammenfassung

Wenn der angegebene TensorArray- Gradient bereits vorhanden ist, wird ein Verweis darauf zurückgegeben.

Sperrt die Größe des ursprünglichen TensorArray durch Deaktivieren des Flags für die dynamische Größe.

Ein Hinweis zur Eingabe flow_in:

Das Handle flow_in erzwingt, dass die Ausführung der Gradientensuche erst erfolgt, nachdem bestimmte andere Operationen aufgetreten sind. Wenn beispielsweise das Forward- TensorArray eine dynamische Größe hat, kann das Objekt durch Schreiben in dieses TensorArray die Größe ändern. Der Gradient TensorArray hat eine statische Größe basierend auf der Größe des Vorwärts- TensorArray, wenn diese Operation ausgeführt wird. Darüber hinaus wird die Größe des Forward- TensorArray durch diesen Aufruf eingefroren. Infolgedessen wird der Ablauf verwendet, um sicherzustellen, dass der Aufruf zum Generieren des Gradienten TensorArray erst erfolgt, nachdem alle Schreibvorgänge ausgeführt wurden.

Bei TensorArrays mit dynamischer Größe sollte die Gradientenberechnung nur für Leseoperationen durchgeführt werden, die selbst über den Flow verkettet wurden, damit sie erst nach Ausführung aller Schreibvorgänge ausgeführt werden. Auf diese Weise ist die endgültige Größe des Forward- TensorArray bekannt, wenn diese Operation aufgerufen wird.

Ein Hinweis zum Quellattribut:

TensorArray- Gradientenaufrufe verwenden ein TensorArray- Akkumulatorobjekt. Wenn mehrere Gradienten berechnet und in derselben Sitzung ausgeführt werden, können die mehreren Gradientenknoten versehentlich durch denselben Akkumulator TensorArray fließen . Diese Doppelzählung zählt und unterbricht im Allgemeinen den TensorArray- Gradientenfluss.

Die Lösung besteht darin, zu identifizieren, welcher Gradient diesen bestimmten TensorArray- Gradienten aufruft . Dies erfolgt durch Identifizieren einer eindeutigen Zeichenfolge (z. B. "Gradienten", "Gradienten_1", ...) aus dem Namen des Eingabegradienten Tensor . Diese Zeichenfolge wird als Suffix verwendet , wenn die Erstellung TensorArray Objekt gradient hier (die source ).

Die source wird als Suffix an dem Vorwärts-hinzugefügt TensorArray den Namen , wenn die Erstellung der Durchführung / Nachschlagen, so daß jede separate Gradientenberechnung seinen eigenen erhält TensorArray Akkumulator.

Argumente:

  • scope: Ein Scope- Objekt
  • Griff: Der Griff zum vorderen TensorArray .
  • flow_in: Ein Float-Skalar, der die ordnungsgemäße Verkettung von Operationen erzwingt.
  • source: Die Gradientenquellenzeichenfolge, mit der entschieden wird, welcher Gradienten TensorArray zurückgegeben werden soll.

Kehrt zurück:

Konstruktoren und Destruktoren

TensorArrayGrad (const :: tensorflow::Scope & scope, :: tensorflow::Input handle, :: tensorflow::Input flow_in, StringPiece source)

Öffentliche Attribute

flow_out
grad_handle
operation

Öffentliche Attribute

flow_out

::tensorflow::Output flow_out

grad_handle

::tensorflow::Output grad_handle

Operation

Operation operation

Öffentliche Funktionen

TensorArrayGrad

 TensorArrayGrad(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input handle,
  ::tensorflow::Input flow_in,
  StringPiece source
)