Пример прогнозирования временных рядов с помощью рекуррентной нейронной сети LSTM | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 4 мая, печатный экземпляр отправим 8 мая.

Опубликовать статью в журнале

Авторы: , ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №9 (404) март 2022 г.

Дата публикации: 05.03.2022

Статья просмотрена: 2107 раз

Библиографическое описание:

Мейзер, М. В. Пример прогнозирования временных рядов с помощью рекуррентной нейронной сети LSTM / М. В. Мейзер, Е. Д. Северьянова, В. В. Мокшин. — Текст : непосредственный // Молодой ученый. — 2022. — № 9 (404). — С. 13-15. — URL: https://moluch.ru/archive/404/89260/ (дата обращения: 20.04.2024).



В статье рассматривается пример использования рекуррентных нейронных сетей LSTM для прогнозирования временных рядов. В качестве временного ряда используется набор данных, составленный из курса доллара США по отношению к российскому рублю за период с 1 февраля 2019 по 26 февраля 2022 г.

Ключевые слова: прогнозирование, временные ряды, многослойная нейронная сеть, LSTM.

В настоящее время задача прогнозирования временных рядов остается актуальной. Искусственные нейронные сети являются одним из самых популярных инструментов при прогнозировании временных рядов, они хорошо справляются с задачей классификации, решают сложные вопросы анализа коммутационных соединений, распознавания образов с высоким быстродействием и гарантией правильного результата.

Рекуррентная нейронная сеть глубокого обучения (Long Short Term Memory (LSTM)) имеет способность улавливать закономерности в данных временных рядов и вследствие этого может использоваться для прогнозирования будущего тренда данных. Традиционные нейронные сети не обладают таким свойством. Структура LSTM похожа на цепочку, которая вместо одного слоя нейронной сети содержит четыре. Эти слои взаимодействуют особенным образом. Схема структуры LSTM представлена на рисунке 1.

Схема структуры LSTM

Рис. 1. Схема структуры LSTM

На схеме, представленной выше, фрагменты нейронной сети A принимают входные значения x t-1 , x t , x t+1 и возвращают значения h t-1 , h t , h t+1 .

В качестве примера изучается временной ряд, составленный из курса доллара США по отношении к российскому рублю за период с 1 февраля 2019 по 26 февраля 2022 г [3]. В качестве таймфрейма взяты одни сутки и цена закрытия рассматриваемого курса валюты. В результате формируется временной ряд, состоящий из 755 значений. Данные разделяются на 2 части, первая часть, состоящая из 600 значений, служит для обучения нейронной сети, а вторая, состоящая из 155 значений, для проверки корректности обучения.

Для реализации был использован язык программирования Python и бесплатный облачный сервис Google Colab. Использованы следующие библиотеки: matplotlib, numpy, pandas, torch, warnings, seaborn.

В связи с тем, что курс доллара стремительно вырос за последний год, требуется стандартизировать имеющиеся данные. Для этого применяется нормализация линейной функции (минимальное/максимальное масштабирование), после которой исходные данные будут находиться в диапазоне от 0 до 1. Необходимо применять нормализацию только по отношению к тренировочному набору данных во избежание утечки информации в тестовый набор.

Для обучения нейронной сети была построена модель рекуррентной нейронной сети LSTM со следующими параметрами обучения: длина последовательности, равная 300; количество единиц скрытого слоя, равное 100; количество элементов вывода, равное 1.

Далее представлен код обучения нейронной сети:

Обучение нейронной сети, используя выше представленный код, завершилось при потере 0.0000137182.

Результат прогнозирования нейронной сети представлен на рисунке 2. Синим цветом на графике показаны правильные выходные данные из набора, а оранжевым — цветом данные, спрогнозированные нейронной сетью.

Результаты прогнозирования и реальные значения

Рис. 2. Результаты прогнозирования и реальные значения

Как можно увидеть, данные нейронной сети и правильные выходные данные различаются, из чего делается вывод, что полученный алгоритм не точен. Однако алгоритм смог уловить общую тенденцию.

Литература:

1. LSTM — сети долгой краткосрочной памяти [Электронный ресурс]. — Режим доступа: URL: https://habr.com/ru/company/wunderfund/blog/331310/

2. PyTorch-прогнозирование временных рядов с помощью циклической нейронной сети LSTM [Электронный ресурс]. — Режим доступа: URL: https://russianblogs.com/article/67341398207/

3. Динамика официального курса валюты [Электронный ресурс]. — Режим доступа: URL: https://www.cbr.ru/currency_base/dynamics/?UniDbQuery.Posted=True&UniDbQuery.so=1&UniDbQuery.mode=1&UniDbQuery.date_req1=&UniDbQuery.date_req2=&UniDbQuery.VAL_NM_RQ=R01239&UniDbQuery.From=01.02.2019&UniDbQuery.To=26.02.2022

4. Нильсен, Эйлин. Практический анализ временных рядов: прогнозирование со статистикой и машинное обучение.: Пер. с англ. — СПб.: ООО “Диалектика”, 2021. — 544 с.: ил. — Парал. тит. англ.

Основные термины (генерируются автоматически): LSTM, нейронная сеть, данные, временной ряд, курс доллара США, результат прогнозирования, рекуррентная нейронная сеть, ряд, схема структуры.


Ключевые слова

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

Похожие статьи

GRU и LSTM: современные рекуррентные нейронные сети

Рекуррентные нейронные сети (Recurrent Neural Network, RNN) — класс моделей машинного обучения

Рассмотрим подробнее структуру LSTM-слоя. Центральным понятием здесь является

Как и другие рекуррентные нейронные сети, LSTM и GRU (особенно двух- и...

Использование нейронных сетей в задаче прогнозирования...

прогнозирование временных рядов, LSTM-сети, рекуррентные нейронные сети.

В настоящей работе исследуются различные архитектуры глубоких нейронных сетей для прогнозирования временного ряда горизонтальной дальности видимости в аэропорту Манас.

Методология моделирования динамики валютного курса

Для прогнозирования валютного курса используют методы фундаментального (ФА) и технического (ТА) анализа, которые являются основой

Анализируется ряд доходности в виде логарифмических разностей валютного курса. Для определения периодических компонент и их...

Применение интеллектуальных технологий для анализа...

Нейронная сеть — это система, состоящая из многих простых вычислительных элементов, или нейронов, определенным образом связанных между собой. Наиболее распространенными являются многослойные сети, в которых нейроны объединены в слои.

Математические модели оценки валютных рисков

Однако для получения точных результатов, необходимы исторические данные достаточно больших объемов.

Главным недостатком метода является полная зависимость от ретроспективных данных и от их особенностей.

Использование Online Handwriting Database для генерации...

LSTMрекуррентная нейронная сеть, способная обучаться долговременным зависимостям. Она содержит LSTM-модули, которые позволяют запоминать информацию как на короткие, так и на длинные промежутки времени. Данный процесс внутри модуля регулируется фильтрами...

Предпрогнозный анализ временных рядов финансовых данных...

Библиографическое описание: Кратович, П. В. Предпрогнозный анализ временных рядов финансовых данных на основе методов

Фрактальный анализ является новым методом для описания эволюционных процессов и прогнозирования экономических временных рядов.

Искусственные нейронные сети | Статья в журнале...

Нейронная сеть берет на вход два числа и должна на выходе дать другое число — ответ.

Нейронная сеть— это последовательность нейронов, соединенных между собой синапсами [2]. Структура нейронной сети

GRU и LSTM: современные рекуррентные нейронные сети.

Применение нейронных сетей в экономике | Статья в журнале...

Среди рекуррентных сетей можно выделить сети Хопфилда и сети Кохонена. С помощью сетей Хопфилда можно обрабатывать неупорядоченные

Нейронная сеть используется тогда, когда неизвестны виды связи между входом и выходом, если бы были точные данные о связах...

Похожие статьи

GRU и LSTM: современные рекуррентные нейронные сети

Рекуррентные нейронные сети (Recurrent Neural Network, RNN) — класс моделей машинного обучения

Рассмотрим подробнее структуру LSTM-слоя. Центральным понятием здесь является

Как и другие рекуррентные нейронные сети, LSTM и GRU (особенно двух- и...

Использование нейронных сетей в задаче прогнозирования...

прогнозирование временных рядов, LSTM-сети, рекуррентные нейронные сети.

В настоящей работе исследуются различные архитектуры глубоких нейронных сетей для прогнозирования временного ряда горизонтальной дальности видимости в аэропорту Манас.

Методология моделирования динамики валютного курса

Для прогнозирования валютного курса используют методы фундаментального (ФА) и технического (ТА) анализа, которые являются основой

Анализируется ряд доходности в виде логарифмических разностей валютного курса. Для определения периодических компонент и их...

Применение интеллектуальных технологий для анализа...

Нейронная сеть — это система, состоящая из многих простых вычислительных элементов, или нейронов, определенным образом связанных между собой. Наиболее распространенными являются многослойные сети, в которых нейроны объединены в слои.

Математические модели оценки валютных рисков

Однако для получения точных результатов, необходимы исторические данные достаточно больших объемов.

Главным недостатком метода является полная зависимость от ретроспективных данных и от их особенностей.

Использование Online Handwriting Database для генерации...

LSTMрекуррентная нейронная сеть, способная обучаться долговременным зависимостям. Она содержит LSTM-модули, которые позволяют запоминать информацию как на короткие, так и на длинные промежутки времени. Данный процесс внутри модуля регулируется фильтрами...

Предпрогнозный анализ временных рядов финансовых данных...

Библиографическое описание: Кратович, П. В. Предпрогнозный анализ временных рядов финансовых данных на основе методов

Фрактальный анализ является новым методом для описания эволюционных процессов и прогнозирования экономических временных рядов.

Искусственные нейронные сети | Статья в журнале...

Нейронная сеть берет на вход два числа и должна на выходе дать другое число — ответ.

Нейронная сеть— это последовательность нейронов, соединенных между собой синапсами [2]. Структура нейронной сети

GRU и LSTM: современные рекуррентные нейронные сети.

Применение нейронных сетей в экономике | Статья в журнале...

Среди рекуррентных сетей можно выделить сети Хопфилда и сети Кохонена. С помощью сетей Хопфилда можно обрабатывать неупорядоченные

Нейронная сеть используется тогда, когда неизвестны виды связи между входом и выходом, если бы были точные данные о связах...

Задать вопрос