Warnung: Diese API ist veraltet und wird in einer zukünftigen Version von TensorFlow entfernt, nachdem der Ersatz stabil ist.

EagerSession

öffentliche Abschlussklasse EagerSession

Eine Umgebung, in der TensorFlow-Vorgänge eifrig ausgeführt werden können.

Eifrige Ausführung ist eine zwingende Programmierumgebung, die Vorgänge sofort auswertet, ohne Diagramme zu erstellen. Operationen geben konkrete Werte zurück, anstatt ein Berechnungsdiagramm zu erstellen, das später ausgeführt werden soll, wie bei Graph und Session .

Dies erleichtert die Entwicklung mit TensorFlow- und Debug-Modellen, da es sich eher wie eine Standard-Programmierbibliothek verhält.

Instanzen einer EagerSession sind threadsicher.

Verschachtelte Klassen

Aufzählung EagerSession.DevicePlacementPolicy Steuert, wie zu handeln ist, wenn versucht wird, eine Operation auf einem bestimmten Gerät auszuführen, einige Eingangstensoren jedoch nicht auf diesem Gerät vorhanden sind.
Klasse EagerSession.Options
Aufzählung EagerSession.ResourceCleanupStrategy Steuert, wie TensorFlow-Ressourcen bereinigt werden, wenn sie nicht mehr benötigt werden.

Öffentliche Methoden

synchronisierte Leere
close ()
statische EagerSession
create ()
Gibt eine EagerSession , die mit Standardoptionen konfiguriert ist.
statische EagerSession
getDefault ()
Gibt die Standard-Eifersitzung zurück

Nach der Initialisierung bleibt die Standard-Eifersitzung für die gesamte Lebensdauer der Anwendung aktiv, im Gegensatz zu Sitzungen, die von create() oderbuild() abgerufen wurden und nach ihrer Verwendung geschlossen werden sollten.

statische EagerSession
initDefault ( EagerSession.Options- Optionen)
Initialisiert die Standard-Eifersitzung, die während der gesamten Lebensdauer der Anwendung aktiv bleibt.
OperationBuilder
opBuilder (String-Typ, String-Name)
Gibt einen Builder zurück, um eine neue Operation zu erstellen.
statische EagerSession.Options
Optionen ()
Gibt ein Objekt zurück, das eine EagerSession mit benutzerdefinierten Optionen konfiguriert und EagerSession .

Vererbte Methoden

Öffentliche Methoden

public synchronized void close ()

öffentliche statische EagerSession create ()

Gibt eine EagerSession , die mit Standardoptionen konfiguriert ist.

WARNUNG: Instanzen EagerSession von dieser Methode zurück müssen explizit durch den Aufruf befreit werden close() , wenn sie nicht mehr benötigt werden . Dies könnte mit der Technik "Try-with-Resources" erreicht werden.

Anwendungsbeispiel:

try (EagerSession session = EagerSession.create()) {
   Ops tf = Ops.create(session);
   // build execute operations eagerly...
 
 }

öffentliche statische EagerSession getDefault ()

Gibt die Standard-Eifersitzung zurück

Nach der Initialisierung bleibt die Standard-Eifersitzung für die gesamte Lebensdauer der Anwendung aktiv, im Gegensatz zu Sitzungen, die von create() oderbuild() abgerufen wurden und nach ihrer Verwendung geschlossen werden sollten.

Der Standardsatz von EagerSession.Options wird verwendet, um die Sitzung beim ersten Aufruf zu initialisieren. Um dieses Verhalten zu überschreiben, können Sie initDefault(Options) vor diesem ersten Aufruf mit einem anderen initDefault(Options) aufrufen.

Anwendungsbeispiel:

// Starting to build eager operations using default session, by calling
 // EagerSession.getDefault() implicitly
 Ops tf = Ops.create();

 // Starting to build eager operations using default session, by calling
 // EagerSession.getDefault() explicitly
 Ops tf = Ops.create(EagerSession.getDefault());
 

Kehrt zurück
  • Standard eifrige Sitzung

public static EagerSession initDefault (Optionen für EagerSession.Options )

Initialisiert die Standard-Eifersitzung, die während der gesamten Lebensdauer der Anwendung aktiv bleibt.

Diese Methode wird implizit beim ersten Aufruf von getDefault() aufgerufen, kann aber auch explizit aufgerufen werden, um Standardoptionen zu überschreiben.

Beachten Sie, dass das IllegalArgumentException Aufrufen dieser Methode eine IllegalArgumentException da die Standardsitzung nach ihrer IllegalArgumentException nicht mehr geändert werden kann. Daher ist es wichtig, es explizit zu initialisieren, bevor getDefault() zum ersten Mal von einem Thread aus aufgerufen wird.

Anwendungsbeispiel:

// Initializing default session to override default options is valid but
 // is optional
 EagerSession.initDefault(EagerSession.options().async(true));

 // Starting to build eager operations using default session, by calling
 // EagerSession.getDefault() implicitly
 Ops tf = Ops.create();

 // Initializing default session more than once or after using it is not
 // permitted and throws an exception
 EagerSession.initDefault(EagerSession.options().async(true));  // throws
 

Parameter
Optionen Optionen zum Erstellen einer Standardsitzung
Kehrt zurück
  • Standard eifrige Sitzung
Würfe
Illegale staatliche Ausnahme wenn die Standardsitzung bereits initialisiert ist
Siehe auch

public OperationBuilder opBuilder (String-Typ, String-Name)

Gibt einen Builder zurück, um eine neue Operation zu erstellen.

Parameter
Art der Operation (dh identifiziert die auszuführende Berechnung)
Name um auf die erstellte Operation in diesem Umgebungsbereich zu verweisen.
Kehrt zurück
  • ein OperationBuilder zum Erstellen einer Operation, wenn build() aufgerufen wird. Wenn build() nicht aufgerufen wird, können einige Ressourcen auslaufen.

public static EagerSession.Options options ()

Gibt ein Objekt zurück, das eine EagerSession mit benutzerdefinierten Optionen konfiguriert und EagerSession .

WARNUNG: Instanzen EagerSession von dieser Methode zurück müssen explizit durch den Aufruf befreit werden close() , wenn sie nicht mehr benötigt werden . Dies könnte mit der Technik "Try-with-Resources" erreicht werden.

Anwendungsbeispiel:

try (EagerSession session = EagerSession.options().async(true).build()) {
   Ops tf = Ops.create(session);
   // build execute operations eagerly and asynchronously...
 
 }