Init

публичный финальный класс Init

Константы

Нить DEFAULT_NAME

Публичные методы

статическая пустота
add (область видимости , инициализатор операции )
Зарегистрируйте операцию в качестве инициализатора графа.
статическая инициализация
создать (область действия )
Фабричный метод для создания операции, выполняющей все инициализаторы графа.

Унаследованные методы

Константы

общедоступная статическая финальная строка DEFAULT_NAME

Постоянное значение: «init»

Публичные методы

public static void add (область области действия , инициализатор операции )

Зарегистрируйте операцию в качестве инициализатора графа.

Зарегистрированные инициализаторы затем группируются как единая единица вычислений путем добавления и выполнения операции init из графического сеанса. Это пустая операция, если она выполняется в активном сеансе.

Смотрите также

public static Init create (область действия )

Фабричный метод для создания операции, выполняющей все инициализаторы графа.

Все инициализаторы, добавленные в граф через tf.initAdd , группируются как одна единица вычислений в графе. Затем эту операцию необходимо добавить к любому графику с использованием одной или нескольких variables и выполнить один раз перед запуском графа, чтобы состояния переменных были правильно инициализированы.

Когда граф строится тем же процессом, который запускает сеанс, инициализаторы могут быть вызваны путем выполнения этой единственной конечной точки. Например:

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());
     
   }
 }
 }

Когда граф создается отдельным процессом, инициализаторы можно вызвать, запустив операцию init по его имени, которое по умолчанию имеет значение DEFAULT_NAME . Например:

// 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());
   }
 }
 }

Параметры
объем текущий объем
Возврат
  • операция, группирующая все инициализаторы, добавленные в граф
Броски
IllegalArgumentException если среда выполнения в области видимости не является графом