Я пытаюсь построить архитектуру LSTM для прогнозирования заболеваемости (0% -100%). Мой вход - это массив с размером 4760x10 (от числа больных в городе на возраст, количество консультаций .....). Мой вывод или y - уровень заболеваемости.
Я новичок в машинном обучении, и я попробовал несколько советов, таких как изменение оптимизатора, номер узла слоя и значение выпадения, и моя модель не сходилась (самое низкое значение mse = 616.245). Я также пытался масштабировать свои данные с помощью MinMaxScaler. Не могли бы вы, ребята, помочь мне советом изменить архитектуру или обработку данных, чтобы помочь модели сходиться.
вот модель lstm, которая дает мне mse = 616.245
def build_modelz4():
model = Sequential()
model.add(LSTM(10, input_shape=(1, 10), return_sequences=True))
model.add(LSTM(84, return_sequences= True))
model.add(LSTM(84, return_sequences=False))
model.add(Dense(1,activation='linear'))
model.compile(loss='mean_squared_error', optimizer='adam', metrics=['mean_squared_error'] )
model.summary()
return model
lstmz4 = build_modelz4()
checkpointer = ModelCheckpoint(filepath="weightslstmz4.hdf5", verbose=1, save_best_only=True)
newsclstmhis = lstmz4.fit(trainX,trainY,epochs=1000,batch_size=221, validation_data=(testX, testY) ,verbose=2, shuffle=False, callbacks=[checkpointer])
Обратите внимание, что когда я использовал модель ann, она сходится с mse = 0.8. Так что с lstm должно сходиться
и заранее спасибо