Init

classe final pública Init

Constantes

Corda DEFAULT_NAME

Métodos Públicos

vazio estático
add (escopo do escopo , inicializador Op )
Registre uma operação como inicializador do gráfico.
inicialização estática
criar (escopo do escopo )
Método de fábrica para criar uma operação executando todos os inicializadores de um gráfico.

Métodos herdados

Constantes

String final estática pública DEFAULT_NAME

Valor Constante: "init"

Métodos Públicos

public static void add (escopo do escopo , inicializador Op )

Registre uma operação como inicializador do gráfico.

Os inicializadores registrados são então agrupados como uma única unidade de computação adicionando e executando uma operação init a partir de uma sessão gráfica. Este é um ambiente autônomo se executado em uma sessão ansiosa.

Veja também

public static Init create (escopo do escopo)

Método de fábrica para criar uma operação executando todos os inicializadores de um gráfico.

Todos os inicializadores adicionados a um gráfico por meio de tf.initAdd são agrupados como uma única unidade de computação no gráfico. Esta operação deve então ser adicionada a qualquer gráfico usando uma ou mais variables ​​e executada uma vez antes de executar o gráfico para que os estados das variáveis ​​sejam inicializados corretamente.

Quando o gráfico é construído pelo mesmo processo que está executando a sessão, os inicializadores podem ser invocados executando este único terminal. Por exemplo:

try (Graph g = new Graph()) {
   Variable<TInt32> x = tf.variable(tf.constant(10));  // initAdd is called implicitly
   Variable<TInt32> y = tf.variable(tf.constant(20));  // idem
   Add<TInt32> z = tf.math.add(x, y);

   try (Session s = new Session(g)) {
     s.run(tf.init());  // initialize all variables

     try (TInt32 t = (TInt32)s.runner().fetch(z).run().get(0)) {
       assertEquals(30, t.data().getInt());
     
   }
 }
 }

Quando o gráfico é construído por um processo separado, os inicializadores podem ser invocados executando a operação init pelo seu nome, cujo padrão é DEFAULT_NAME . Por exemplo:

// Building the model
 try (Graph g = new Graph()) {
   Variable<TInt32> x = tf.variable(tf.constant(10));  // initAdd is called implicitly
   Variable<TInt32> y = tf.variable(tf.constant(20));  // idem
   Add<TInt32> z = tf.withName("z").math.add(x, y);

   tf.init();  // add variables initializers to the graph, as Init.DEFAULT_NAME
   // ...exporting graph as a saved model...
 

 ...

 // Running the model
 try (SavedModelBundle model = SavedModelBundle.load("/path/to/model", "train")) {
   model.session().run(Init.DEFAULT_NAME);

   try (TInt32 t = (TInt32)s.runner().fetch("z").run().get(0)) {
     assertEquals(30, t.data().getInt());
   }
 }
 }

Parâmetros
escopo escopo atual
Devoluções
  • uma operação agrupando todos os inicializadores adicionados ao gráfico
Lança
Exceção de argumento ilegal se o ambiente de execução no escopo não for um gráfico