GRUBlockCellGrad

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

Tính toán tốc độ lan truyền ngược 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. 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. d_h: Độ dốc của hàm h_new wrt tới hàm mục tiêu.

Trả về d_x: Độ dốc của x wrt tới hàm mục tiêu. d_h_prev: Độ dốc của hàm h wrt tới hàm mục tiêu. d_c_bar Độ dốc của c_bar wrt tới hàm mục tiêu. d_r_bar_u_bar Độ dốc của r_bar & u_bar ghi vào hàm mục tiêu.

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

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 *

Ghi chú bổ sung cho rõ ràng:

`w_ru` có thể được phân chia thành 4 ma trận khác nhau.

w_ru = [w_r_x w_u_x
         w_r_h_prev w_u_h_prev]
 
Tương tự, `w_c` có thể được phân thành 2 ma trận khác nhau.
w_c = [w_c_x w_c_h_prevr]
 
Điều tương tự cũng xảy ra với những thành kiến.
b_ru = [b_ru_x b_ru_h]
 b_c = [b_c_x b_c_h]
 
Một lưu ý khác về ký hiệu:
d_x = d_x_component_1 + d_x_component_2
 
 where d_x_component_1 = d_r_bar * w_r_x^T + d_u_bar * w_r_x^T
 and d_x_component_2 = d_c_bar * w_c_x^T
 
 d_h_prev = d_h_prev_component_1 + d_h_prevr \circ r + d_h \circ u
 where d_h_prev_componenet_1 = d_r_bar * w_r_h_prev^T + d_u_bar * w_r_h_prev^T
 
Toán học đằng sau các Gradien dưới đây:
d_c_bar = d_h \circ (1-u) \circ (1-c \circ c)
 d_u_bar = d_h \circ (h-c) \circ u \circ (1-u)
 
 d_r_bar_u_bar = [d_r_bar d_u_bar]
 
 [d_x_component_1 d_h_prev_component_1] = d_r_bar_u_bar * w_ru^T
 
 [d_x_component_2 d_h_prevr] = d_c_bar * w_c^T
 
 d_x = d_x_component_1 + d_x_component_2
 
 d_h_prev = d_h_prev_component_1 + d_h_prevr \circ r + u
 
Phép tính bên dưới được thực hiện trong trình bao bọc python cho Gradien (không phải trong kernel gradient.)
d_w_ru = x_h_prevr^T * d_c_bar
 
 d_w_c = x_h_prev^T * d_r_bar_u_bar
 
 d_b_ru = sum of d_r_bar_u_bar along axis = 0
 
 d_b_c = sum of d_c_bar along axis = 0
 

Hằng số

Sợi dây OP_NAME Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Phương pháp công cộng

tĩnh <T mở rộng TNumber > GRUBlockCellGrad <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, Toán hạng <T> r, Toán hạng <T > u, Toán hạng <T> c, Toán hạng <T> dH)
Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động GRUBlockCellGrad mới.
Đầu ra <T>
dCBar ()
Đầu ra <T>
dHPrev ()
Đầu ra <T>
Đầu ra <T>
dX ()

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

org.tensorflow.op.RawOp
boolean cuối cùng
bằng (Đối tượng obj)
int cuối cùng
Hoạt động
()
Trả về đơn vị tính toán này dưới dạng một Operation .
chuỗi cuối cùng
boolean
bằng (Đối tượng arg0)
Lớp cuối cùng<?>
getClass ()
int
mã băm ()
khoảng trống cuối cùng
thông báo ()
khoảng trống cuối cùng
thông báoTất cả ()
Sợi dây
toString ()
khoảng trống cuối cùng
chờ đã (arg0 dài, int arg1)
khoảng trống cuối cùng
chờ đã (arg0 dài)
khoảng trống cuối cùng
Chờ đợi ()
org.tensorflow.op.Op
môi trường thực thi trừu tượng
env ()
Trả về môi trường thực thi mà op này được tạo trong đó.
hoạt động trừu tượng
()
Trả về đơn vị tính toán này dưới dạng một Operation .

Hằng số

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

Tên của op này, được biết đến bởi công cụ lõi TensorFlow

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

Phương pháp công cộng

public static GRUBlockCellGrad <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, Toán hạng <T > r, Toán hạng <T> u, Toán hạng <T> c, Toán hạng <T> dH)

Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động GRUBlockCellGrad 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 GRUBlockCellGrad

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

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

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

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