def __init__(self, input_dim, output_dim,
init='glorot_uniform', inner_init='orthogonal',
forget_bias_init='one', activation='tanh',
inner_activation='hard_sigmoid'):
#self.input_dim = input_dim
self.output_dim = int(output_dim / 2)
self.init = initializations.get(init)
self.inner_init = initializations.get(inner_init)
self.forget_bias_init = initializations.get(forget_bias_init)
self.activation = activations.get(activation)
self.inner_activation = activations.get(inner_activation)
self.input_dim = input_dim
#self.input = K.placeholder(input_shape)
# initial states: 2 all-zero tensor of shape (output_dim)
self.forward_lstm = LSTM(input_dim = input_dim, output_dim = self.output_dim)
self.backward_lstm = LSTM(input_dim = input_dim, output_dim = self.output_dim)
self.params = self.forward_lstm.params + self.backward_lstm.params
#if self.initial_weights is not None:
# self.set_weights(self.initial_weights)
# del self.initial_weights
评论列表
文章目录