Init

lớp cuối cùng công khai

Hằng số

Sợi dây MẶC ĐỊNH_NAME

Phương pháp công khai

khoảng trống tĩnh
thêm ( Phạm vi phạm vi, bộ khởi tạo Op )
Đăng ký một op làm công cụ khởi tạo biểu đồ.
ban đầu tĩnh
tạo ( Phạm vi phạm vi)
Phương thức xuất xưởng để tạo một thao tác thực thi tất cả các công cụ khởi tạo của biểu đồ.

Phương pháp kế thừa

Hằng số

Chuỗi cuối cùng tĩnh công khai DEFAULT_NAME

Giá trị không đổi: "init"

Phương pháp công khai

thêm khoảng trống tĩnh công khai (Phạm vi phạm vi , Trình khởi tạo Op )

Đăng ký một op làm công cụ khởi tạo biểu đồ.

Sau đó, các bộ khởi tạo đã đăng ký sẽ được nhóm thành một đơn vị tính toán duy nhất bằng cách thêm và thực hiện thao tác init từ một phiên biểu đồ. Đây là điều không thể thực hiện được nếu được thực hiện trong một phiên háo hức.

Xem thêm

Tạo ban đầu tĩnh công khai ( Phạm vi phạm vi)

Phương thức xuất xưởng để tạo một thao tác thực thi tất cả các công cụ khởi tạo của biểu đồ.

Tất cả các công cụ khởi tạo được thêm vào biểu đồ thông qua tf.initAdd được nhóm lại với nhau thành một đơn vị tính toán duy nhất trong biểu đồ. Sau đó, thao tác này phải được thêm vào bất kỳ biểu đồ nào bằng cách sử dụng một hoặc nhiều variables và được thực hiện một lần trước khi chạy biểu đồ để các trạng thái biến được khởi tạo đúng cách.

Khi biểu đồ được xây dựng bởi cùng một quy trình đang chạy phiên, các trình khởi tạo có thể được gọi bằng cách thực thi điểm cuối duy nhất này. Ví dụ:

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

Khi biểu đồ được xây dựng bằng một quy trình riêng biệt, các trình khởi tạo có thể được gọi bằng cách chạy init op theo tên của nó, mặc định là DEFAULT_NAME . Ví dụ:

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

Thông số
phạm vi phạm vi hiện tại
Trả lại
  • một nhóm op tất cả các công cụ khởi tạo được thêm vào biểu đồ
Ném
Ngoại lệ Đối số bất hợp pháp nếu môi trường thực thi trong phạm vi không phải là biểu đồ