def setUp(self): in_size, out_size = 10, 8 self.link = links.StatefulPeepholeLSTM(in_size, out_size) self.c = chainer.Variable( numpy.random.uniform(-1, 1, (1, out_size)).astype(numpy.float32)) self.h = chainer.Variable( numpy.random.uniform(-1, 1, (1, out_size)).astype(numpy.float32))
def __init__(self, n_units, n_out, layers=2, dropout=0): super(PeepholeLSTM, self).__init__() self.layers = layers self.dropout = dropout with self.init_scope(): for l in range(layers): setattr(self, "layer_{}".format(l), L.StatefulPeepholeLSTM(None, n_units)) self.out = L.Linear(None, n_out)
def setUp(self): self.link = links.StatefulPeepholeLSTM(self.in_size, self.out_size) upward = self.link.upward.W.data upward[...] = numpy.random.uniform(-1, 1, upward.shape) lateral = self.link.lateral.W.data lateral[...] = numpy.random.uniform(-1, 1, lateral.shape) peep_i = self.link.peep_i.W.data peep_i[...] = numpy.random.uniform(-1, 1, peep_i.shape) peep_f = self.link.peep_f.W.data peep_f[...] = numpy.random.uniform(-1, 1, peep_f.shape) peep_o = self.link.peep_o.W.data peep_o[...] = numpy.random.uniform(-1, 1, peep_o.shape) c_shape = (1, self.out_size) h_shape = (1, self.out_size) x_shape = (4, self.in_size) gy_shape = (4, self.out_size) self.c = numpy.zeros(c_shape).astype(numpy.float32) self.h = numpy.zeros(h_shape).astype(numpy.float32) self.x = numpy.random.uniform(-1, 1, x_shape).astype(numpy.float32) self.gy = numpy.random.uniform(-1, 1, gy_shape).astype(numpy.float32)
def setUp(self): in_size, out_size = 10, 8 self.link = links.StatefulPeepholeLSTM(in_size, out_size)