def create_lstm_layer(self, input_dim):
"""Create a LSTM layer of a model."""
inp = Input(shape=(input_dim, self.embedding_dim,))
inp_dropout = Dropout(self.ldrop_val)(inp)
ker_in = glorot_uniform(seed=self.seed)
rec_in = Orthogonal(seed=self.seed)
outp = LSTM(self.hidden_dim, input_shape=(input_dim, self.embedding_dim,),
kernel_regularizer=None,
recurrent_regularizer=None,
bias_regularizer=None,
activity_regularizer=None,
recurrent_dropout=self.recdrop_val,
dropout=self.inpdrop_val,
kernel_initializer=ker_in,
recurrent_initializer=rec_in,
return_sequences=True)(inp_dropout)
outp_dropout = Dropout(self.dropout_val)(outp)
model = Model(inputs=inp, outputs=outp_dropout, name="LSTM_encoder")
return model
评论列表
文章目录