Проблема, с которой я имею дело, заключается в прогнозировании значений временных рядов. Я смотрю на один временной ряд за раз и на основе, например, 15% входных данных, я хотел бы предсказать его будущие значения. До сих пор я сталкивался с двумя моделями:
- LSTM (долговременная кратковременная память; класс рекуррентных нейронных сетей)
- ARIMA
Я попробовал оба и прочитал некоторые статьи на них. Теперь я пытаюсь понять, как их сравнивать. Что я нашел до сих пор:
- LSTM работает лучше, если мы имеем дело с огромным количеством данных и доступно достаточно данных для обучения, тогда как ARIMA лучше для небольших наборов данных (это правильно?)
- Для ARIMA требуется ряд параметров,
(p,q,d)
которые должны рассчитываться на основе данных, в то время как LSTM не требует установки таких параметров. Однако есть некоторые гиперпараметры, которые нам нужно настроить для LSTM. - РЕДАКТИРОВАТЬ: Одно существенное различие между этими двумя, которые я заметил, читая большую статью здесь , заключается в том, что ARIMA может хорошо работать только на стационарных временных рядах (где нет сезонности, тренда и т. Д.), И вам нужно позаботиться об этом, если хочу использовать ARIMA
Кроме вышеупомянутых свойств, я не мог найти никаких других моментов или фактов, которые могли бы помочь мне выбрать лучшую модель. Я был бы очень признателен, если бы кто-нибудь мог помочь мне найти статьи, статьи или другие материалы (пока что не повезло, только некоторые общие мнения здесь и там, и ничего, основанное на экспериментах)
Я должен упомянуть, что изначально я имею дело с потоковыми данными, однако сейчас я использую наборы данных NAB, которые включают в себя 50 наборов данных с максимальным размером 20 тыс. Точек данных.