有没有让模型知道序列长度的方法?

时间:2019-09-11 06:46:10

标签: python keras sequence lstm

我想用输入形状(样本数量,时间步长,特征)训练我的LSTM模型,例如[a,b,c]在t时间是一个输入。 然后在t + 1时刻下一个输入[b,c,d]。

我的数据是这样的。

[ 
  [ [1, 2, 3], [2, 3, 4] ], # <- this is first data for training
  [ [3, 4, 5], [3, 1, 2], [2, 4, 3] ],
  [ [1, 1, 4], [1, 2, 6], [1, 5, 2], [1, 2, 5], [1, 3, 2] ]
  [ [1, 2, 3] ]
]

每个数据的长度不同(每个数据的时间步长不同)

我在数据中添加了一些填充。

[ 
  [ [1, 2, 3], [2, 3, 4], [0, 0, 0], [0, 0, 0], [0, 0, 0] ]
  [ [3, 4, 5], [3, 1, 2], [2, 4, 3], [0, 0, 0], [0, 0, 0] ],
  [ [1, 1, 4], [1, 2, 6], [1, 5, 2], [1, 2, 5], [1, 3, 2] ]
  [ [1, 2, 3], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0] ]
]

它训练得很好,但是我想让模型知道没有[0,0,0]的序列长度,因为[0,0,0]不值得使用数据。

 sequence.pad_sequences(all_data, padding='post', maxlen = max_sequence_length)

对于此代码,我为数据添加了一些填充。

0 个答案:

没有答案