Esempio n. 1
0
 def build_training_graph(self):
     self.run_extension('ext_regularize_pre_grad')
     self.grads = OrderedDict(izip(self.params,
                                   T.grad(self.cost, self.params)))
     self.run_extension('ext_grad')
     grads = self.optimizer.get_updates(self.grads)
     for key, val in grads.items():
         self.updates[key] = val
     self.run_extension('ext_regularize_post_grad')
     return self.build_theano_graph(self.inputs, self.outputs, self.updates)
Esempio n. 2
0
            unit='tanh',
            init_W=init_W,
            init_U=init_U,
            init_b=init_b)

output = FullyConnectedLayer(name='output',
                             parent=['h1', 'h2', 'h3'],
                             parent_dim=[200, 200, 200],
                             nout=frame_size,
                             unit='sigmoid',
                             init_W=init_W,
                             init_b=init_b)

nodes = [h1, h2, h3, output]

params = OrderedDict()
for node in nodes:
    params.update(node.initialize())
params = init_tparams(params)

s1_0 = h1.get_init_state(batch_size)
s2_0 = h2.get_init_state(batch_size)
s3_0 = h3.get_init_state(batch_size)


def inner_fn(x_t, s1_tm1, s2_tm1, s3_tm1):

    s1_t = h1.fprop([[x_t], [s1_tm1, s2_tm1, s3_tm1]], params)
    s2_t = h2.fprop([[s1_t], [s2_tm1, s1_tm1, s3_tm1]], params)
    s3_t = h3.fprop([[s2_t], [s3_tm1], s1_tm1, s2_tm1], params)
    y_hat_t = output.fprop([s1_t, s2_t, s3_t], params)