Нейронная сеть LSTM, выводящая плоский массив прогнозовPython

Программы на Python
Ответить
Anonymous
 Нейронная сеть LSTM, выводящая плоский массив прогнозов

Сообщение Anonymous »

Я обучаю нейронную сеть LSTM для прогнозирования будущих цен фьючерсных контрактов. Мои входные данные — 100 значений открытого интереса и 100 значений цен закрытия, а выходные данные — 100 последующих цен закрытия.
Модель, кажется, имеет правильную логику и предсказывает общую тенденцию, но выходной массив очень плоский. MAE составляет около 7e-4, что неплохо, и прогнозируемые значения находятся в правильном диапазоне (например, 80 000 долларов США), но массив не увеличивается или не уменьшается существенно; все цифры очень близки к 80 000 долларов США.
Вот код моей модели:

Код: Выделить всё

# Define inputs
input1 = Input(shape=(100, 1))
input2 = Input(shape=(100, 1))

# Create LSTM layers for each input
lstm1 = layers.LSTM(units=100, return_sequences=True)(input1)
lstm1 = layers.Dropout(0.2)(lstm1)
lstm1 = layers.LSTM(units=100, return_sequences=True)(lstm1)
lstm1 = layers.Dropout(0.2)(lstm1)
lstm1 = layers.LSTM(units=100)(lstm1)
lstm1 = layers.Dropout(0.2)(lstm1)

lstm2 = layers.LSTM(units=100, return_sequences=True)(input2)
lstm2 = layers.Dropout(0.2)(lstm2)
lstm2 = layers.LSTM(units=100, return_sequences=True)(lstm2)
lstm2 = layers.Dropout(0.2)(lstm2)
lstm2 = layers.LSTM(units=100)(lstm2)
lstm2 = layers.Dropout(0.2)(lstm2)

# Concatenate all LSTM outputs
merged = layers.concatenate([lstm1, lstm2])

# Add a Dense layer for the merged output
output = layers.Dense(100)(merged)

# Create and compile the model
model = Model(inputs=[input1, input2], outputs=output)
optimizer = Adam(learning_rate=0.01)
model.compile(loss='mse', optimizer=optimizer)
Что я могу сделать, чтобы улучшить модель, чтобы она генерировала более динамичные прогнозы?
Изображение

Спасибо за любую помощь! Пожалуйста, проголосуйте за мой вопрос, чтобы помочь)< /п>

Подробнее здесь: https://stackoverflow.com/questions/791 ... tion-array
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»