Un entorno para ejecutar operaciones de TensorFlow con entusiasmo.
La ejecución ansiosa es un entorno de programación imperativo que evalúa las operaciones de inmediato, sin construir gráficos. Las operaciones devuelven valores concretos en lugar de construir un gráfico computacional para ejecutar más tarde, como con Graph
s y Session
s.
Esto facilita el desarrollo con TensorFlow y la depuración de modelos, ya que se comporta más como una biblioteca de programación estándar.
Las instancias de una EagerSession
son seguras para subprocesos.
Clases anidadas
enumeración | EagerSession.DevicePlacementPolicy | Controla cómo actuar cuando intentamos ejecutar una operación en un dispositivo determinado pero algunos tensores de entrada no están en ese dispositivo. | |
clase | EagerSession.Opciones | ||
enumeración | EagerSession.ResourceCleanupStrategy | Controla cómo se limpian los recursos de TensorFlow cuando ya no se necesitan. |
Métodos públicos
vacío sincronizado | cerrar () |
sesión ansiosa estática | crear () Devuelve una EagerSession configurada con opciones predeterminadas. |
sesión ansiosa estática | obtenerPredeterminado () Devuelve la sesión ansiosa predeterminada Una vez inicializada, la sesión activa predeterminada permanece activa durante toda la vida de la aplicación, a diferencia de las sesiones obtenidas de |
sesión ansiosa estática | initDefault (opciones de EagerSession.Options ) Inicializa la sesión activa predeterminada, que permanece activa durante el tiempo de vida de la aplicación. |
OperationBuilder | |
EagerSession.Options estático | opciones () Devuelve un objeto que configura y crea una EagerSession con opciones personalizadas. |
Métodos Heredados
Métodos públicos
cierre de vacío sincronizado público ()
público estático EagerSession crear ()
Devuelve una EagerSession
configurada con opciones predeterminadas.
ADVERTENCIA: Las instancias de EagerSession
devueltas por este método deben liberarse explícitamente invocando close()
cuando ya no se necesiten. Esto podría lograrse utilizando la técnica `pruebe con recursos`.
Ejemplo de uso:
try (EagerSession session = EagerSession.create()) {
Ops tf = Ops.create(session);
// build execute operations eagerly...
}
público estático EagerSession getDefault ()
Devuelve la sesión ansiosa predeterminada
Una vez inicializada, la sesión activa predeterminada permanece activa durante toda la vida de la aplicación, a diferencia de las sesiones obtenidas de create()
o EagerSession.Options.build()
, que deben cerrarse después de su uso.
El conjunto predeterminado de EagerSession.Options
se usa para inicializar la sesión en la primera llamada. Para anular este comportamiento, es posible invocar initDefault(Options)
con un conjunto diferente de opciones antes de esta primera llamada.
Ejemplo de uso:
// 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());
Devoluciones
- sesión ansiosa predeterminada
Ver también
public static EagerSession initDefault (opciones de EagerSession.Options )
Inicializa la sesión activa predeterminada, que permanece activa durante el tiempo de vida de la aplicación.
Este método se invoca implícitamente en la primera llamada a getDefault()
, pero también se puede invocar explícitamente para anular las opciones predeterminadas.
Tenga en cuenta que llamar a este método más de una vez arrojará una IllegalArgumentException
ya que la sesión predeterminada no se puede modificar una vez que se ha creado. Por lo tanto, es importante inicializarlo explícitamente antes de que se getDefault()
por primera vez desde cualquier subproceso.
Ejemplo de uso:
// 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
Parámetros
opciones | opciones a usar para construir una sesión predeterminada |
---|
Devoluciones
- sesión ansiosa predeterminada
Lanza
IllegalStateExceptionIlegalStateException | si la sesión predeterminada ya está inicializada |
---|
Ver también
público OperationBuilder opBuilder (tipo de cadena, nombre de cadena)
Devuelve un constructor para crear una nueva Operation
.
Parámetros
escribe | de la operación (es decir, identifica el cálculo a realizar) |
---|---|
nombre | para hacer referencia a la operación creada en este ámbito de entorno. |
Devoluciones
- un
OperationBuilder
para crear una operación cuando se invocaOperationBuilder.build()
. Si no se invocaOperationBuilder.build()
, es posible que se filtren algunos recursos.
opciones públicas estáticas EagerSession.Options ()
Devuelve un objeto que configura y crea una EagerSession
con opciones personalizadas.
ADVERTENCIA: Las instancias de EagerSession
devueltas por este método deben liberarse explícitamente invocando close()
cuando ya no se necesiten. Esto podría lograrse utilizando la técnica `pruebe con recursos`.
Ejemplo de uso:
try (EagerSession session = EagerSession.options().async(true).build()) {
Ops tf = Ops.create(session);
// build execute operations eagerly and asynchronously...
}