(self, xWxr_t, xWxz_t, xWxh_t, h_t1)
| 91 | self.params = [self.Wxr, self.Whr, self.br, self.Wxz, self.Whz, self.bz, self.Wxh, self.Whh, self.bh, self.h0] |
| 92 | |
| 93 | def get_ht(self, xWxr_t, xWxz_t, xWxh_t, h_t1): |
| 94 | r = T.nnet.sigmoid(xWxr_t + h_t1.dot(self.Whr) + self.br) |
| 95 | z = T.nnet.sigmoid(xWxz_t + h_t1.dot(self.Whz) + self.bz) |
| 96 | hhat = self.f(xWxh_t + (r * h_t1).dot(self.Whh) + self.bh) |
| 97 | h = (1 - z) * h_t1 + z * hhat |
| 98 | return h |
| 99 | |
| 100 | def recurrence(self, xWxr_t, xWxz_t, xWxh_t, is_start, h_t1, h0): |
| 101 | h_t = T.switch( |