Я пытаюсь построить архитектуру LSTM для прогнозирования заболеваемости (0% -100%).
Я построил модель ANN, и она соответствует mse = 0.8, что приемлемо для моего случая.
import numpy
numpy.random.seed(8)
def build_dropout_model2(rate):
model = Sequential()
model.add(Dense(1000, input_shape=(10,), activation="relu"))
model.add(Dense(500, activation="relu"))
model.add(Dense(1)) model.summary()
model.compile(loss="mean_squared_error", optimizer="adam", metrics=["mean_squared_error"])
model2 = build_dropout_model2()
return model
Вот моя модель LSTM:
def lstm_model():
model = Sequential()
model.add(LSTM(10, input_shape=(1,10), return_sequences= True))
model.add(Dropout(0.2))
model.add(LSTM(100, return_sequences= True))
model.add(LSTM(100, return_sequences= False))
model.add(Dense(1,activation="linear"))
model.compile(optimizer='adam',loss='mean_squared_errorrmetrics=['mean_squared_error'])
return model
Lstm=lstm_model()
newlstmhis = lstm.fit(xtrr,ytr,epochs=1000 , validation_data=(xtstt, ytst),verbose=2, shuffle=True)
Я попробовал несколько советов, таких как изменение оптимизатора, номера узла слоя и значения выпадения без каких-либо улучшений, и эта модель не сходится mse = 12.4. Не могли бы вы, ребята, основываясь на вашем опыте, помочь мне советом. И спасибо всем