Menghitung propagasi maju sel GRU untuk 1 langkah waktu.
Args x: Masukan ke sel GRU. h_prev: Menyatakan input dari sel GRU sebelumnya. w_ru: Matriks bobot untuk gerbang reset dan pembaruan. w_c: Matriks bobot untuk gerbang koneksi sel. b_ru: Vektor bias untuk gerbang reset dan update. b_c: Vektor bias untuk gerbang koneksi sel.
Mengembalikan r: Output dari gerbang reset. u: Output dari gerbang pembaruan. c: Output dari gerbang koneksi sel. h: Keadaan sel GRU saat ini.
Catatan tentang notasi variabel:
Penggabungan a dan b diwakili oleh a_b Hasil kali titik elemen a dan b diwakili oleh ab Produk titik elemen-bijaksana diwakili oleh \circ Perkalian matriks diwakili oleh *
Bias diinisialisasi dengan : `b_ru` - constant_initializer(1.0) `b_c` - constant_initializer(0.0)
Op kernel ini alat berikut persamaan matematika:
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
Metode Publik
Output <T> | c () |
statis <T meluas Nomor> GRUBlockCell <T> | |
Output <T> | h () |
Output <T> | r () |
Output <T> | u () |
Metode yang Diwarisi
Metode Publik
public static GRUBlockCell <T> membuat ( Lingkup lingkup, Operan <T> x, Operan <T> hPrev, Operan <T> WRU, Operan <T> WC, Operan <T> Bru, Operan <T> bC)
Metode pabrik untuk membuat kelas yang membungkus operasi GRUBlockCell baru.
Parameter
cakupan | lingkup saat ini |
---|
Kembali
- contoh baru GRUBlockCell