Deep learning 用于不同长度输入序列预训练的LSTM自动编码器
我需要一些帮助来理解用深度学习解决问题的最佳方法是什么。 我的数据库中有许多未标记序列和一些标记序列。 我想检索每个带标签序列的标签。 序列有不同的长度,通常很长。 到目前为止,我一直在考虑做以下工作:Deep learning 用于不同长度输入序列预训练的LSTM自动编码器,deep-learning,keras,recurrent-neural-network,sequences,autoencoder,Deep Learning,Keras,Recurrent Neural Network,Sequences,Autoencoder,我需要一些帮助来理解用深度学习解决问题的最佳方法是什么。 我的数据库中有许多未标记序列和一些标记序列。 我想检索每个带标签序列的标签。 序列有不同的长度,通常很长。 到目前为止,我一直在考虑做以下工作: 使用LSTM自动编码器作为“预训练步骤”,学习使用未标记数据的序列的简化表示 使用相同的模型对标记序列进行编码 使用另一个模型从简化表示中检索标记数据(LSTM、SVM等) 我的问题是: 如何处理不同长度的序列? 到目前为止,我已经为自动编码器部分尝试了以下方法(使用Keras后端Theano)
任何帮助都将不胜感激。谢谢。您可以将LSTM的输入形状设置为(无,2),让Keras动态决定序列长度。这可能与您有关:谢谢您的回复!但如果我使用(无,2)作为输入_形状,我想我不能使用RepeatVector,对吗?或者我应该向这个函数传递什么参数?
model = Sequential()
model.add(Masking(mask_value=0, input_shape=(None,2)))
model.add(LSTM(32, input_shape = (8785,2), return_sequences = True))
model.add(LSTM(32, input_shape = (8785,2), return_sequences = True))
model.add(LSTM(32, input_shape = (8785,2)))
model.add(RepeatVector(8785))
model.add(LSTM(32, input_shape = (8785,2), return_sequences = True))
model.add(LSTM(32, input_shape = (8785,2), return_sequences = True))
model.add(LSTM(32, input_shape = (8785,2), return_sequences = True))
model.add(TimeDistributed(Dense(2)))