Сравнение свёрточных и рекуррентных искусственных нейронных сетей в задаче прогнозирования временных рядов

Фирстков Артём Леонидович

Аннотация


Фирстков А.Л. СРАВНЕНИЕ СВЁРТОЧНЫХ И РЕКУРРЕНТНЫХ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ В ЗАДАЧЕ ПРОГНОЗИРОВАНИЯ
ВРЕМЕННЫХ РЯДОВ, магистерская диссертация: 63 стр., 14 рис., 3 таблиц, 47 библ. назв, приложений 2.
Ключевые слова: искусственные нейронные сети, свёрточные сети, LSTM, машинное обучение, прогнозирование, временной ряд, криптовалюта, PyTorch.
Работа посвящена сравнению эффективности свёрточных (CNN) и рекуррентных (LSTM) нейронных сетей как методов машинного обучения, используемых для прогнозирования временных рядов.
Обработка данных, разработка и обучение ИНС выполнены на языке программирования Python, с использованием фреймворка PyTorch, в среде разработки Colab. Процесс обучения был распараллелен с использованием графического ускорителя. Программная реализация приведена в приложениях. Набором данных для исследования служит выборка из временного ряда
цены биткоина в долларах США в период с 01.01.2016 по 28.05.2020 с интервалом час. Разработанные модели позволяют сделать прогнозы временных рядов на 4 временных интервала. После обучения моделей выполнено сравнение полученных прогнозов и исторических цен. В результате сравнения выявлено, что 4 используемые архитектуры нейронных сетей могут прогнозировать временные ряды с высокой точностью (средняя ошибка лучших архитектур не превышает двух процентов). Наиболее точный прогноз дала LSTM сеть, её средняя абсолютная ошибка на тестовой выборке составила менее 1.5%.
Firstkov A.L. COMPARISON OF CONVOLUTIONAL AND RECURRENT
ARTIFICIAL NEURAL NETWORKS IN THE PROBLEM OF FORECASTING
TIME SERIES, qualifying work: 63 pages, 14 figures, 3 tables, 47 sources of literature, 2 appendices.
Keywords: artificial neural networks, convolutional networks, LSTM, machine learning, forecasting, time series, cryptocurrency, PyTorch.
The work is devoted to comparing the effectiveness of convolutional (CNN) and recurrent (LSTM) neural networks as machine learning methods used to predict time series.
Data processing, development and training of ANNs are done in the Python programming language, using the PyTorch framework, in the Colab development environment. The learning process was parallelized using a graphics accelerator. The software implementation is given in the applications. The data set for the study is a sample of the time series of the price of bitcoin in US dollars from 01.01.2016 to 05.28.2020 with an interval of an hour.
The developed models make it possible to make time series forecasts for 4 time intervals. After training the models, the comparison of the obtained forecasts and historical prices is performed. The comparison revealed that the neural network architectures used can predict time series with high accuracy (the average error of the best architectures does not exceed two percent). The LSTM network gave the most accurate forecast; its average absolute error on test sample was less
than 1.5%.