Python 具有一个特征的多时间步keras嵌入层修改

Python 具有一个特征的多时间步keras嵌入层修改,python,keras,deep-learning,lstm,embedding,Python,Keras,Deep Learning,Lstm,Embedding,我有一个序列预测问题,给定序列中最后的n项,我需要预测下一项。现在有N=60k序列,对于每个序列N,我有6个事件,我想预测下一个(本例中为第7个)事件。数据集如下所示 seq_inputs = [ ["AA1", "BB3", "CC4","DD5","AA2", "CC8", "CC11"], #CC11 is target ["FF1"

我有一个序列预测问题,给定序列中最后的
n
项,我需要预测下一项。现在有
N=60k
序列,对于每个序列
N
,我有
6个事件
,我想
预测下一个(本例中为第7个)事件
。数据集如下所示

seq_inputs = [
["AA1", "BB3", "CC4","DD5","AA2", "CC8", "CC11"], #CC11 is target
["FF1", "DD3", "FF6","KK8","AA5", "CC8", "AA2"]   #AA2 will be target
..
..
] # there are 60k of them i.e len(seq) = 60000
我到目前为止所做的:

seq = [[[ 1],
        [10],
         [200],
        [5],
         [3],
        [90],
         ],

       [[ 95],
        [15],
         [4],
        [11],
         [78],
        [43],
        ],
       ...
       ...
      ... #60,000 of them
      ]
现在,我将其作为下一个单词预测问题,并使用嵌入+LSTm

首先,我使用
keras tokenizer.text\u to_sequence()

从这个数字转换序列中,我将最后一个作为目标,前六个作为输入(下面只是一个虚拟示例)

我将目标转换为类别,如下所示:

targets = to_categorical(targets, num_classes=vocabulary_size)
因此,我将其作为

model = Sequential()
model.add(Embedding(vocabulary_size, 32, input_length=seq_len)) #seq_length
model.add(LSTM(80,return_sequences=True))
..
..
..
model.fit(train_inputs,train_targets,epochs=50,verbose=1,batch_size=32)
目前,我的测试性能非常差,我觉得我没有很好地将LSTM用于顺序任务,因此我想将此问题转化为具有单个功能的多对一序列问题,其中每个序列有6个具有单个功能的时间步。比如说

输入(6个时间步,n(60k)中的每个序列n有一个特征):

seq = [[[ 1],
        [10],
         [200],
        [5],
         [3],
        [90],
         ],

       [[ 95],
        [15],
         [4],
        [11],
         [78],
        [43],
        ],
       ...
       ...
      ... #60,000 of them
      ]
目标

targets = [40,3, ... , ... ]
问题:我如何修改这个网络,特别是嵌入层,以采用这种输入形式,其中每个序列/行只有6个时间步和一个特征。此外,我对6个时间步和一个未来的理解是否正确,如果是,我还需要在网络中修改什么