Keras LSTM训练多个序列

时间:2018-11-25 20:36:04

标签: python tensorflow machine-learning keras lstm

我是深度学习的新手,正在尝试训练神经网络来预测给定Y_n的序列X_n,其中Y_n是一个数字,X_n是一个向量。假设我有多个训练序列(X_n, Y_n),每个训练序列的长度不同,那么最佳的训练方法是什么?以下是我的代码,这可以工作还是我需要复位状态之类的东西?我的目标是每次输入新的训练序列时都要更新权重,但是我也不想完全覆盖旧的训练。谢谢。

inputD = len(feature)
model = Sequential()
model.add(LSTM(input_dim=inputD,output_dim=10,return_sequences=True))
model.add(LSTM(10,return_sequences=True))
model.add(Dense(5,activation='relu'))
model.add(Dense(5,activation='relu'))
model.add(Dense(1,activation='sigmoid'))
model.compile(loss='binary_crossentropy',optimizer='adam',metrics=['accuracy'])
for j in range(5):
    trainX = df[df['id'] == j][feature].values
    trainY = df[df['id'] == j]['Y'].values
    trainX = numpy.reshape(trainX, (1, trainX.shape[0], trainX.shape[1]))
    trainY = numpy.reshape(trainY, (1, trainY.shape[0], 1))
    model.fit(trainX, trainY, epochs=100, batch_size=50,verbose=2)

0 个答案:

没有答案