多个LSTM模型输出形状,用于预测时间序列数据中的序列

问题描述

我正在建立许多LSTM来预测时间序列。

原始时间序列数据形状:nx23

'ATTCG' 'ATGCC' ... 'ATGCA' 
'ATGTG' 'ATTGC' ... 'AATGA'
...
'ATTCG' 'ATGCC' ... 'ATGCA'

我已经处理了数据,以使一个数据点的时间窗口为3。处理后的数据用于时间序列预测形状nx3x5x4。因此,每个数据点的最终形状为(no of time steps x number of character in seq x no of unique characters)

  x       y
3X5X4   3X5X4
3X5X4   3X5X4
...
3X5X4   3X5X4

我需要在每个时间点输出5x4,以便对照y(一个热编码序列)进行检查。我考虑过以以下方式实现它,但是由于(5x4)形状而导致输出形状不正确并且出现严重错误

model.add(LSTM(units=(5x4),input_shape=(3,(5x4)),return_sequences=True))
model.compile(loss='binary_crossentropy',optimizer='adam',metrics=['accuracy'])
model.summary()

但是,如果我弄平onehot编码的序列,我的数据将采用以下形式。

  x       y
3X20   3X20
3X20   3X20
...
3X20   3X20

并且LSTM模型可以完美运行。

model.add(LSTM(units=20,20),metrics=['accuracy'])
model.summary()

但是此模型提供了3x20的暗淡输出,我无法在上面输出softmax

任何建议如何获得可叠加softmax的5x4输出方法都会有很大帮助。

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)