我正在尝试使用双向LSTM作为编码器。我设置了return_sequence=True
和return_state=True
,得到了一个长度为5的输出列表。
# define model
inputs1 = Input(shape=(3, 1))
lstm1 = Bidirectional(merge_mode = 'ave', layer = LSTM(3, return_sequences=True, return_state = True))(inputs1)
model = Model(inputs=inputs1, outputs=lstm1)
# define input data
data = array([0.1, 0.2, 0.3]).reshape((1,3,1))
# make and show prediction
pred = model.predict(data)
双向lstm的输出长度为5
len(pred) # 5
双向LSTM的所有输出波形为
for num,i in enumerate(pred):
print(num, ': ',i.shape)
输出
0 : (1, 3, 3)
1 : (1, 3)
2 : (1, 3)
3 : (1, 3)
4 : (1, 3)
因为它是双向的,我假设其中两个是隐藏状态,两个是细胞状态。告诉我顺序。谢谢
1条答案
按热度按时间h7appiyu1#
所以,我一直在寻找答案,我发现它在这个kaggle