GRUBlockCell

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

Tính toán tốc độ lan truyền tiến của ô GRU trong 1 bước thời gian.

Args x: Nhập vào ô GRU. h_prev: Trạng thái đầu vào từ ô GRU trước đó. w_ru: Ma trận trọng số cho cổng reset và update. w_c: Ma trận trọng số cho cổng kết nối cell. b_ru: Vector thiên vị cho cổng reset và update. b_c: Vector thiên vị cho cổng kết nối cell.

Trả về r: Đầu ra của cổng reset. u: Đầu ra của cổng cập nhật. c: Đầu ra của cổng kết nối cell. h: Trạng thái hiện tại của ô GRU.

Lưu ý về ký hiệu của các biến:

Sự kết hợp của a và b được biểu thị bằng a_b Tích dấu chấm theo phần tử của a và b được biểu thị bằng ab Tích dấu chấm theo phần tử được biểu thị bằng \circ Phép nhân ma trận được biểu thị bằng *

Độ lệch được khởi tạo bằng : `b_ru` - constant_initializer(1.0) `b_c` - constant_initializer(0.0)

Kernel op này thực hiện các phương trình toán học sau:

x_h_prev = [x, h_prev]
 
 [r_bar u_bar] = x_h_prev * w_ru + b_ru
 
 r = sigmoid(r_bar)
 u = sigmoid(u_bar)
 
 h_prevr = h_prev \circ r
 
 x_h_prevr = [x h_prevr]
 
 c_bar = x_h_prevr * w_c + b_c
 c = tanh(c_bar)
 
 h = (1-u) \circ c + u \circ h_prev
 

Phương pháp công khai

Đầu ra <T>
c ()
tĩnh <T mở rộng Số> GRUBlockCell <T>
tạo ( Phạm vi phạm vi, Toán hạng <T> x, Toán hạng <T> hPrev, Toán hạng <T> wRu, Toán hạng <T> wC, Toán hạng <T> bRu, Toán hạng <T> bC)
Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động GRUBlockCell mới.
Đầu ra <T>
h ()
Đầu ra <T>
r ()
Đầu ra <T>
bạn ()

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

Phương pháp công khai

Đầu ra công khai <T> c ()

public static GRUBlockCell <T> create ( Phạm vi phạm vi, Toán hạng <T> x, Toán hạng <T> hPrev, Toán hạng <T> wRu, Toán hạng <T> wC, Toán hạng <T> bRu, Toán hạng <T> bC)

Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động GRUBlockCell mới.

Thông số
phạm vi phạm vi hiện tại
Trả lại
  • một phiên bản mới của GRUBlockCell

Đầu ra công khai <T> h ()

Đầu ra công khai <T> r ()

Đầu ra công khai <T> u ()