Я следую за прогнозированием тензорного потока для многоэтапных прогнозов, чтобы применить его к моему набору данных для прогнозирования 2nd column
, проблема в том, что мой набор данных содержит только 60
записей. данные в формате
Я использовал следующие параметры
TRAIN_SPLIT = 40
tf.random.set_seed(0)
past_history = 12 # history records to take into consideration
STEP = 1
BATCH_SIZE = 30
BUFFER_SIZE = 10000
EPOCHS = 200
# steps_per_epoch * batch_size = number_of_rows_in_train_data
steps_per_epoch = math.ceil(TRAIN_SPLIT / BATCH_SIZE)
validation_steps = 1
Затем я использовал MinMaxScaler
для масштабирования 4th column
и моя сеть выглядит следующим образом
multi_step_model = tf.keras.models.Sequential()
multi_step_model.add(tf.keras.layers.LSTM(8, input_shape=x_train_multi.shape[-2:]))
multi_step_model.add(tf.keras.layers.Dense(future_target))
multi_step_model.compile(optimizer=tf.keras.optimizers.RMSprop(clipvalue=1.0), loss='mse')
multi_step_history = multi_step_model.fit(train_data_multi,
epochs=EPOCHS,
steps_per_epoch=steps_per_epoch,
validation_data=val_data_multi,
validation_steps=validation_steps)
val_loss
не будет go ниже 7.0
У меня есть два вопроса,
Q1 : будет ли LSTM хорошим выбором для моделирования этой проблемы?
Q2 : что было бы наилучшей возможностью повысить точность модели?