ИССЛЕДОВАНИЕ АЛГОРИТМОВ ОБУЧЕНИЯ НЕЙРОННЫХ СЕТЕЙ ДЛЯ ПРОГНОЗИРОВАНИЯ ХАОТИЧЕСКИХ ВРЕМЕННЫХ РЯДОВ

Обложка

Цитировать

Полный текст

Аннотация

Цель. Обучить нейронные сети (RNN и LSTM) с помощью разных методов поиска минимума функции потерь для решения задачи прогнозирования хаотических временных рядов, затем оценить получившиеся результаты.

Методы. Были выбраны алгоритмы:Adam, Nadam, SGD, Levenberg–Marquardt. В качестве источника генерации хаотических временных рядов была взята система Лоренца при параметрах σ = 10, ρ = 28, β = 8/3. Обучение и настройка сетей проводилась с использованием языка программирования Python и его главных библиотек для обучения нейронных сетей: tensorflow, keras, numpy. Для оценки топологических параметров нелинейных временных рядов была использована библиотека nolista. Построение графиков осуществлялось с помощью библиотек plotly и matplotlib. На этапе подготовки данных была использована теорема Такенса о реконструкции фазового пространства для построения матрицы из временных рядов с определенной задержкой.

Результаты. Было показано, что с помощью выбранных моделей нейронных сетей можно уменьшить MAE в задаче прогнозирования до 0,000896.

Выводы. Хорошо показали себя алгоритмы минимизации функции потерь Levenberg–Marquardt и Аdam.

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

Полный текст

Необходимо начать с разъяснения понятия хаотического временного ряда (ХВР). Известно, что скалярный временной ряд – суть массив из n чисел , представляющих собой значения некоторой измеренной (наблюдаемой) динамической переменной x(t) с некоторым постоянным шагом τ по времени, . Тогда можно определить ХВР как скалярный временной ряд, который был порожден хаотической динамической системой. Введем формальное определение хаотической системы, которое представлено, например, в [1]. То есть, подвергнем ось времени дискретизации, тогда динамическая система может быть записана в виде:

                                                                  ,                                                                  (1)

где    – метрическое пространство. Отметим, что последовательность вида ,  т.е. , где , называется траекторией системы (отображения).

Тогда  будет являться хаотическим отображением, если соблюдены условия:

  • неустойчиво к начальным условиям. Иными словами:   ;
  • топологически транзитивно. Иными словами, – плотное множество в M;
  • Периодические траектории системы плотны в M. То есть в любой окрестности любой точки из M найдется хотя бы одна периодическая траектория.

Из первого пункта приведенного выше определения можно сделать вывод, что предсказать поведение ХВР крайне трудно из-за неочевидного поведения траекторий. Ниже будут приведены графики некоторых ХВР для наглядного подтверждения этого факта.

Одна из самых известных хаотических систем – это система Лоренца:

                                                     ,                                                              (2)

где , ,  – наперед заданные параметры. В текущей работе эта система будет далее использоваться для генерации ХВР.

ХВР возникают во многих областях человеческой деятельности [2–7]. В частности, к таковым относятся: инженерное дело, финансовые рынки, управление энергией. Приведем конкретные примеры.

В инженерном деле xаотическое поведение можно наблюдать в системax управления, электронныx схемах и механических системах. В [4] авторами наблюдалось хаотическое поведение на RL-diode схеме, где хаотическим поведением обладало напряжение на резисторе (рисунок 1) при определенных значениях входного напряжения и индуктивности катушки.

Рис. 1. ХВР напряжения на резисторе [4]

Далее, в области финансовых рынков накопилось достаточно эмпирических исследований, которые показали, что стохастические процессы не всегда описывают динамику финансовых рядов [5]. То есть, изменения цен не всегда являются случайным. Например, в работе [6] рассматривалась цена открытия фондового индекса S&P500 в период с 2014 по 2015 год (рисунок 2). По методу вычисления максимальной экспоненты Ляпунова исследователями было установлено, что цена обладает слабо выраженным хаотическим поведением.

Рис. 2. ХВР цены открытия S&P500 [6]

Затем, можно привести в пример работу [7] из области управления энергией, в которой авторы оценивали нагрузку на электросеть (рисунок 3). Может показаться, что хаотическая динамика в подобных измерениях отсутствует из-за явно выраженной сезонности, однако это не так. Хаотическая динамика обеспечивается в присутствии других факторов (погода, экономическая ситуация и т.д.).

Рис. 3. Нагрузка на электросеть [7]

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

Итак, в рамках этой работы задача прогнозирования ХВР была решена с использованием языка программирования Python и его главных библиотек для обучения нейронных сетей: tensorflow, keras, numpy. Для оценки топологических параметров нелинейных временных рядов была использована библиотека nolista. Построение графиков осуществлялось с помощью библиотек plotly и matplotlib.

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

Условия и методы исследования

В данной работе была поставлена следующая задача: имеется ХВР , где x(t) суть x-координата системы Лоренца при параметрах σ = 10, ρ = 28, β = 8/3, необходимо вычислить , используя нейронные сети.

Приведем план решения задачи после генерации ХВР:

  • Проведем нормализацию данных. Заменим все на , где и  – максимальное и минимальное значения на исходной выборке соответственно. Очевидно, что таким образом все  окажутся в сегменте . Такая нормализация способствует ускорению сходимости функции потерь.
  • Проведем трансформацию временного ряда в матрицу для обучения сетей. Отметим, что в поставленной задаче крайне плохо себя показывает трансформация по методу скользящего окна из-за хаотической динамики. В связи с этим учтём теорему Такенса о реконструкции динамической системы [8], тогда временной ряд будет преобразован таким образом:

                       ,                                   (3)

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

  • Зададим гиперпараметры, затем обучим RNN и LSTM сети, используя широко известные алгоритмы минимизации критерия качества: Adam, Nadam, SGD, Levenberg–Marquardt. RNN и LSTM выбраны по той причине, что они отлично себя показывают в предсказывании последовательностей в силу способности запоминать предыдущие результаты.

Прокомментируем настройку гиперпараметров нейронных сетей. Ниже, в таблице 1, представлены выбранные значения для некоторых из них. Отметим, что SGD используется с поправкой Нестерова и «моментом» (momentum), чтобы немного ускорить сходимость. В структуре обеих сетей во входном слое количество нейронов равно , а в выходном слое расположен один нейрон. В структуре RNN сети задан лишь один скрытый слой из 16 нейронов. В структуре LSTM сети заданы два скрытых слоя из 64 нейронов. В обеих сетях в выходном слое задана линейная функция активации, а в скрытых слоях задан гиперболический тангенс. Отметим, что по методу ложных ближайших соседей определяется лишь левая граница значения размерности пространства вложения, которая получилась равной 3 (рисунок 4). Однако допустимо взять близкое значение, например, равное 5, так как это может поспособствовать улучшению качества прогноза. Также далее приведен график получившейся функции взаимной информации (рисунок 5).

Таблица 1

Гиперапараметры нейронных сетей

Гиперпараметр

Значение

Максимальное кол-во эпох

300

Кол-во батчей

32

Обучающее множество

17640

Множество валидации

1960

Тестовое множество

1000

Настройка SGD

Исходная скорость обучения = 0,15; momentum = 0,7

Настройка Adam

Исходная скорость обучения = 0,001

Настройка Nadam

Исходная скорость обучения = 0,001

Настройка Levenberg-Marquardt

Исходная скорость обучения = 0,1

Функция потерь/Метрика

Среднеквадратическая ошибка (MSE)/Средняя абсолютная ошибка (MAE)

Временной лаг

16

Размерность пространства вложения

5

 

Рис. 4. Результат применения метода ложных ближайших соседей

Рис. 5. График функции взаимной информации

Результаты и их обсуждение

Как было указано выше, минимизируемая функция во всех случаях – это среднеквадратическая ошибка. Однако для простоты понимания качества прогноза была введена метрика – средняя абсолютная ошибка. Рассмотрим полученные MAE после обучения выбранных нейронных сетей (таблица 2).

Таблица 2

Результаты обучения

RNN

Алгоритм

MAE на тестовом множестве

Эпохи

Adam

0,0035

300

Nadam

0,0024

300

SGD

0,0023

215

Levenberg–Marquardt

0,0014

20

LSTM

Алгоритм

MAE на тестовом множестве

Эпохи

Adam

0,0008958

300

Nadam

0,0016

300

SGD

0,0053

240

Levenberg–Marquardt

0,0015

25

 

Не трудно обозначить лидирующие результаты. В случае RNN это Levenberg–Mаrquardt с , а в случае LSTM это Adam c . В столбце «Эпохи» в случае SGD и Levenberg–Marquardt указаны такие номера эпох, начиная с которых среднеквадратическая ошибка на обучающем множестве стабилизировалась. В случае с Levenberg–Marquardt очевидно, что не требуется большого количества эпох для достижения стабильного значения функции потерь, поскольку в этом методе используются производные второго порядка, которые значительно ускоряют поиск минимума. Однако из-за этого время минимизации по Levenberg–Marquardt гораздо дольше, чем у остальных алгоритмов. В случае с SGD, как было указано выше, ускорить сходимость помогает поправка Нестерова вместе с «моментом».

Оценим качество прогноза на рисунках 6–8. На рисунке 6 изображен временной ряд целиком, зеленым цветом отмечены действительные значения, красным – спрогнозированные значения с помощью LSTM сети, обученной по алгоритму Adam. На рисунке 7 отмечены все спрогнозированные значения в масштабированном виде. Можно заметить, что спрогнозированные значения практически точно накладываются на истинные, поскольку за «красной» частью на графике почти не видны «зеленые» значения. На рисунке 8 можно сравнить истинное значение со спрогнозированным в точке с номером 19268. Абсолютная ошибка в этой точке примерно равна 0,007. То есть, в третьем знаке наступает существенная разница между значениями.

Рис. 6. X-координата системы Лоренца

Рис. 7. Масштабированное изображение спрогнозированных значений

Рис. 8. Максимальное приближение в произвольно выбранной точке

Заключение

Таким образом, можно сделать вывод, что с помощью выбранных нейронных сетей (RNN и LSTM) в поставленной задаче прогнозирования можно достичь хороших результатов:  на 1000 точках в тестовом множестве. Наиболее хорошо показали себя алгоритмы: Levenberg–Marquardt c  на RNN сети и Аdam c  на LSTM сети. Заметим, что даже простая RNN сеть из 16 нейронов в скрытом слое способна демонстрировать приемлемое качество прогноза с большим горизонтом прогнозирования. Кроме того, использованная громоздкая LSTM сеть не сильно улучшает результат RNN сети. В связи с этим можно попробовать подобрать такие архитектуры нейронных сетей, с помощью которых получится улучшить результат на несколько порядков.

×

Об авторах

Марк Юрьевич Лазутов

Самарский университет

Автор, ответственный за переписку.
Email: lazutov.mark@mail.ru

студент 3 курса Института информатики и кибернетики Самарского университета

Россия, 443086, Россия, г. Самара, Московское шоссе, 34

Дмитрий Андреевич Савельев

Самарский университет

Email: dmitrey.savelyev@yandex.ru
Scopus Author ID: 55546118200

к.ф.-м.н., доцент, кафедра технической кибернетики Самарского университета

Россия, 443086, Россия, г. Самара, Московское шоссе, 34

Список литературы

  1. Лоскутов А. Ю. Очарование хаоса // УФН. 2010. T. 180. № 12. С. 1305–1329.
  2. Sangiorgio M., Dercole F. Robustness of LSTM neural networks for multi-step forecasting of chaotic time series // Chaos, Solitons & Fractals. 2020. Vol. 139. P. 110045.
  3. Lara–Benítez P., Carranza–García M., Riquelme J. C. An experimental review on deep learning architectures for time series forecasting. International Journal of Neural Systems. 2021. Vol. 31. № 4. P. 2130001.
  4. Hanias M. P., Karras D. A. Improved Multistep Nonlinear Time Series Prediction by ap-plying Deterministic Chaos and Neural Network Techniques in Diode Resonator Circuits // IEEE International Symposium on Intelligent Signal Processing, Alcala de Henares, Spain. 2007. P. 1–6.
  5. Faggini, M., Bruno B., Parziale, A. Does Chaos Matter in Financial Time Series Analysis? // International Journal of Economics and Financial Issues. 2019. Vol. 9. № 4. P. 18–24.
  6. Xiaoxiang G., Yutong S., Jingli R. Low dimensional mid-term chaotic time series prediction by delay parameterized method // Information Sciences. 2020. Vol. 516. P. 1–19.
  7. Short-term power load forecasting using integrated methods based on long short-term memory / W. Zhang, J. Qin, F. Mei [et al.] // Science China Technological Sciences. 2020. Vol. 63. P. 614–624.
  8. Takens F. Detecting strange attractors in turbulence // Lecture Notes in Mathematics, Springer–Verlag, Berlin. 1980. Vol. 898. P. 366–381.

Дополнительные файлы

Доп. файлы
Действие
1. JATS XML

© Вестник молодых учёных и специалистов Самарского университета, 2023

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution-ShareAlike 4.0 International License.

Вестник молодых учёных и специалистов Самарского университета

Сетевое издание, журнал

ISSN 2782-2982 (Online)

Учредитель и издатель сетевого издания, журнала: федеральное государственное автономное образовательное учреждение высшего образования «Самарский национальный исследовательский университет имени академика С.П. Королева» (Самарский университет), Московское шоссе, 34, 443086,  Самарская область, г. Самара, Российская Федерация.

Сетевое издание зарегистрировано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций, регистрационный номер ЭЛ № ФС 77-86495 от 29.12.2023

Выписка из реестра зарегистрированных СМИ

Устав сетевого издания

Главный редактор: Андрей Брониславович Прокофьев, доктор технических наук, доцент, заведующий кафедрой теории двигателей летательных аппаратов

2 выпуска в год

0+. Цена свободная. 

Адрес редакции: 443011, Самарская область, г. Самара, ул. Академика Павлова, д. 1, Совет молодых учёных и специалистов, каб. 513 корпуса 22 а.

Адрес для корреспонденции: 443086, Самарская область, г. Самара, Московское шоссе, 34, Самарский национальный исследовательский университет (Самарский университет), 22а корпус, каб. 513.

Тел: (846) 334-54-43

e-mail: smuissu@ssau.ru

Доменное имя: VMUIS.RU (справка о принадлежности домена)электронный адрес в сети Интернет:  https://vmuis.ru/smus.

Прежнее свидетельство – периодическое печатное издание, журнал «Вестник молодых учёных и специалистов Самарского университета», зарегистрировано Управлением Федеральной службы по надзору в сфере связи, информационных технологий и массовых коммуникаций по Самарской области, регистрационный номер серии ПИ № ТУ63-00921 от 27 декабря 2017 г.

© Самарский университет

 

Данный сайт использует cookie-файлы

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта.

О куки-файлах