def Decoder(hidden_size, activation=None, return_sequences=True, bidirectional=False, use_gru=True):
if activation is None:
activation = ELU()
if use_gru:
def _decoder(x):
if bidirectional:
x = Bidirectional(
GRU(int(hidden_size/2), activation='linear', return_sequences=return_sequences))(x)
x = activation(x)
return x
else:
x = GRU(hidden_size, activation='linear',
return_sequences=return_sequences)(x)
x = activation(x)
return x
else:
def _decoder(x):
if bidirectional:
x = Bidirectional(
LSTM(int(hidden_size/2), activation='linear', return_sequences=return_sequences))(x)
x = activation(x)
return x
else:
x = LSTM(hidden_size, activation='linear',
return_sequences=return_sequences)(x)
x = activation(x)
return x
return _decoder
评论列表
文章目录