Раздел 1. Введение, которое закладывает фундамент вашего исследования
Прогнозирование временных рядов является краеугольным камнем для принятия решений в множестве областей — от финансовых рынков и управления цепями поставок до метеорологии и энергетики. Однако классические методы часто пасуют перед сложными, нестационарными временными рядами, поведение которых меняется со временем. Эта сложность порождает острую потребность в более совершенных, интеллектуальных инструментах анализа, способных улавливать скрытые закономерности в данных.
Одним из таких инструментов являются сети Кохонена, или самоорганизующиеся карты (SOM). Этот тип нейронных сетей, использующий обучение без учителя, представляет собой мощное средство для кластеризации и визуализации многомерных данных. Применение SOM для анализа временных рядов — нетривиальная, но перспективная задача, позволяющая выявлять типовые состояния системы и строить более точные прогнозы.
Целью данной дипломной работы является исследование эффективности применения сетей Кохонена для кластеризации и последующего прогнозирования финансовых временных рядов (на примере индекса Dow Jones). Для достижения этой цели были поставлены следующие задачи:
- Изучить теоретические основы временных рядов и существующие методы их прогнозирования.
- Проанализировать архитектуру и алгоритмы обучения самоорганизующихся карт Кохонена.
- Разработать гибридную модель, сочетающую кластеризацию данных с помощью SOM и применение локальных прогностических моделей.
- Провести программную реализацию разработанной модели и выполнить экспериментальные расчеты.
- Оценить точность полученных прогнозов с использованием стандартных метрик и сравнить их с базовыми подходами.
Раздел 2. Обзор литературы, где вы становитесь экспертом в предметной области
Качественное исследование начинается с анализа того, что уже было сделано. Обзор существующих работ позволяет не только продемонстрировать глубокое понимание предметной области, но и выявить то «белое пятно», которое и заполнит ваша работа. Структурировать обзор целесообразно по трем ключевым направлениям.
В первую очередь, следует рассмотреть классические методы прогнозирования. К ним относятся авторегрессионные модели (AR), модели скользящего среднего (MA), их комбинации (ARMA, ARIMA) и методы экспоненциального сглаживания. Важно не просто перечислить их, а критически оценить, указав на их фундаментальные ограничения: как правило, они требуют стационарности ряда и предполагают линейную зависимость между значениями.
Далее необходимо перейти к более современным, нейросетевым подходам. Здесь рассматриваются нейронные сети прямого распространения (MLP) и рекуррентные нейронные сети (RNN), включая их продвинутые архитектуры LSTM и GRU, которые хорошо зарекомендовали себя в работе с последовательностями. Этот блок должен показать, что вы знакомы с передовыми методами в области.
Центральное место в обзоре должен занять детальный анализ сетей Кохонена (SOM). Здесь нужно раскрыть их суть: это нейронные сети с обучением без учителя, основное предназначение которых — снижение размерности и кластеризация. Следует описать их архитектуру, принцип конкурентного обучения и ключевые сферы применения. Важно показать, как исследователи уже пытались применять SOM для анализа временных рядов — например, для выявления паттернов рыночного поведения или кластеризации состояний сложной системы. Синтезировав эту информацию, вы сможете четко сформулировать научную новизну вашей работы: например, использование специфического способа векторизации данных или применение нового типа прогностической модели внутри кластеров, найденных SOM.
Раздел 3. Методология исследования, где теория встречается с вашей задачей
Этот раздел является теоретическим ядром вашей дипломной работы. Его цель — академически точно и исчерпывающе описать методологический аппарат, чтобы любой другой исследователь мог понять и потенциально воспроизвести ваш эксперимент. В центре внимания здесь — самоорганизующаяся карта Кохонена и ее адаптация к задаче прогнозирования.
Самоорганизующаяся карта Кохонена (SOM) — это нейросеть, которая преобразует многомерное входное пространство в карту меньшей размерности, чаще всего двумерную решетку. Каждый нейрон этой решетки характеризуется вектором весов той же размерности, что и входные данные. Обучение сети происходит по принципу конкуренции:
- Инициализация: Весам нейронов карты присваиваются случайные значения.
- Конкуренция: Для каждого входного вектора из обучающей выборки находится «нейрон-победитель» (Best Matching Unit, BMU) — тот, чей вектор весов наиболее близок к входному вектору (например, по евклидову расстоянию).
- Кооперация и Адаптация: Вектор весов нейрона-победителя, а также веса его «соседей» на карте, корректируются таким образом, чтобы стать еще ближе к входному вектору. Степень коррекции и радиус соседства со временем уменьшаются, что обеспечивает «затухание» процесса обучения.
Ключевой методологический вопрос — как применить этот инструмент, созданный для статических векторов, к динамическому временному ряду. Самый распространенный и эффективный подход — это преобразование временного ряда в набор векторов признаков с помощью метода «скользящего окна».
Суть метода «скользящего окна»: ряд преобразуется в набор обучающих примеров, где каждый пример — это вектор (окно) из N последовательных наблюдений ряда, а целевое значение — это (N+1)-е наблюдение. Таким образом, мы превращаем задачу прогнозирования последовательности в задачу обучения с учителем на векторах.
Именно эти векторы и подаются на вход сети Кохонена. В результате обученная сеть кластеризует все возможные состояния (паттерны) временного ряда. Каждый нейрон на карте будет представлять собой прототип определенного поведения ряда (например, «резкий рост», «плавное падение», «боковое движение»). Это позволяет перейти от анализа всего сложного ряда к анализу его отдельных, более простых и однородных сегментов.
Раздел 4. Проектирование экспериментальной установки
После описания теоретической методологии необходимо превратить ее в конкретный и воспроизводимый план эксперимента. Этот раздел демонстрирует практический подход и внимание к деталям.
1. Набор данных (Dataset): В качестве данных для исследования будут использованы исторические котировки индекса Dow Jones Industrial Average (DJIA) за период с 2010 по 2020 год. Данные будут получены из открытого финансового архива (например, Yahoo Finance). Использование такого известного индекса обеспечивает сопоставимость результатов.
2. Предварительная обработка данных: Перед подачей в модель данные пройдут несколько этапов подготовки:
- Проверка на наличие пропусков и их корректная обработка (например, интерполяцией).
- Нормализация данных (например, Min-Max Scaling) для приведения всех значений к диапазону. Это необходимо для корректной работы нейронной сети.
- Проверка ряда на стационарность с помощью теста Дики-Фуллера для понимания его свойств.
3. Программное обеспечение: Эксперимент будет реализован на языке программирования Python 3.9 с использованием следующих ключевых библиотек: Pandas для манипуляции с данными, NumPy для численных операций и Scikit-learn для реализации некоторых алгоритмов и метрик.
4. Метрики оценки качества: Для объективной оценки точности прогнозов будут использованы следующие метрики:
- MSE (Mean Squared Error): Среднеквадратичная ошибка. Чувствительна к большим ошибкам.
- RMSE (Root Mean Squared Error): Корень из среднеквадратичной ошибки. Интерпретируется в тех же единицах, что и сам ряд.
- MAE (Mean Absolute Error): Средняя абсолютная ошибка. Показывает среднее отклонение прогноза от факта.
- MAPE (Mean Absolute Percentage Error): Средняя абсолютная процентная ошибка. Позволяет сравнивать точность на разных временных рядах.
Выбор этих метрик позволит составить комплексное представление о сильных и слабых сторонах предложенной модели.
Раздел 5. Практическая реализация и программный код
Этот раздел служит доказательством того, что теоретические наработки были успешно воплощены в работающий программный продукт. Здесь важно не просто привести листинги кода, а пошагово объяснить логику каждого этапа, сопровождая ключевые фрагменты подробными комментариями.
Весь процесс можно представить в виде следующего алгоритма:
- Загрузка и предварительная обработка данных. На этом шаге с помощью библиотеки Pandas происходит чтение CSV-файла с котировками. Затем данные очищаются и нормализуются, как было описано в предыдущем разделе. После этого с помощью метода «скользящего окна» временной ряд преобразуется в массив векторов для обучения.
- Создание и обучение сети Кохонена. Инициализируется модель SOM, задаются ее ключевые гиперпараметры: размер карты (например, 10×10 нейронов), количество эпох обучения, начальный радиус соседства и скорость обучения. Затем на подготовленных векторах происходит обучение сети. Этот процесс заключается в итеративной подстройке весов нейронов.
- Кластеризация данных. После обучения каждый вектор из нашего набора данных (каждый сегмент временного ряда) пропускается через обученную карту. Ему в соответствие ставится «нейрон-победитель». Таким образом, весь исходный временной ряд разбивается на кластеры, где каждый кластер — это набор сегментов с похожей динамикой.
- Построение локальных моделей прогнозирования. Это ключевой этап гибридного подхода. Вместо одной сложной модели для всего ряда, мы строим множество простых моделей — по одной для каждого кластера (нейрона) на карте. В качестве такой модели может выступать, например, простая авторегрессия или даже простое усреднение. Логика в том, что прогнозировать поведение однородных, простых паттернов гораздо легче.
- Формирование итогового прогноза. Чтобы сделать прогноз на следующий шаг, мы берем последний доступный сегмент временного ряда, находим для него нейрон-победитель на карте Кохонена и используем соответствующую ему локальную прогностическую модель для генерации предсказания.
Такое пошаговое описание с фрагментами кода демонстрирует не только результат, но и весь ход мысли, лежащий в основе практической реализации.
Раздел 6. Анализ полученных результатов, где цифры начинают говорить
В этом разделе сухие цифры и графики должны превратиться в убедительные доказательства эффективности (или неэффективности) предложенного метода. Цель — объективно и беспристрастно представить результаты эксперимента, сравнить их с базовой моделью и сделать первичные выводы.
Представление результатов должно быть структурировано. Во-первых, это количественная оценка. Результаты расчета метрик точности для гибридной модели (SOM + локальный прогноз) и для базовой модели (например, простой авторегрессии, примененной ко всему ряду) сводятся в таблицу.
Модель | MSE | RMSE | MAE | MAPE (%) |
---|---|---|---|---|
Базовая модель (ARIMA) | 0.0085 | 0.0922 | 0.0715 | 1.54 |
Гибридная модель (SOM + AR) | 0.0061 | 0.0781 | 0.0598 | 1.28 |
Комментарий к таблице должен подчеркнуть, что гибридный подход демонстрирует более низкие значения всех ошибок, что свидетельствует о его превосходстве над базовым методом.
Во-вторых, это качественная, визуальная оценка. Строится график, на котором одновременно отображаются реальный временной ряд и прогноз, полученный от модели. Визуальный анализ позволяет оценить, в каких именно участках модель справляется лучше, а в каких хуже. Например, можно обнаружить, что модель отлично предсказывает периоды низкой волатильности, но дает сбои во время резких рыночных шоков. Этот анализ помогает глубже понять поведение модели.
Раздел 7. Обсуждение результатов и формулирование выводов
Получить результаты — это лишь половина дела. Самая важная часть научного процесса — это их правильная интерпретация, осмысление и встраивание в общий контекст знаний. Этот раздел отвечает на главный вопрос: «Что все это значит?».
Начать следует с интерпретации результатов. Почему гибридная модель показала себя лучше? Вероятный ответ заключается в том, что сеть Кохонена эффективно разделила сложный, нестационарный процесс на несколько более простых и квазистационарных подпроцессов (кластеров). Для каждого такого простого паттерна локальная модель смогла построить более точный прогноз, чем глобальная модель, пытавшаяся «объять необъятное».
Далее необходимо честно и открыто признать ограничения исследования. Это признак академической зрелости. К ним можно отнести:
- Использование только одного набора данных (финансового), что не позволяет обобщить выводы на другие типы временных рядов (например, метеорологические).
- Выбор простой авторегрессионной модели в качестве локального прогнозиста; возможно, более сложные модели (например, небольшие нейросети) внутри кластеров дали бы еще лучший результат.
- Отсутствие исчерпывающего подбора гиперпараметров сети Кохонена, который мог бы дополнительно повысить ее эффективность.
На основе ограничений логично вытекают направления для будущих исследований: протестировать подход на данных из разных областей, исследовать различные типы моделей для прогнозирования внутри кластеров, применить алгоритмы оптимизации для подбора гиперпараметров SOM.
В заключительной части раздела необходимо вернуться к цели и задачам, поставленным во введении, и последовательно сформулировать выводы по каждой из них. Это создает ощущение завершенности и логической стройности всей дипломной работы.
Раздел 8. Финальные штрихи и подготовка к защите
Основная исследовательская и практическая работа завершена. Теперь ваша задача — придать ей вид законченного продукта и подготовиться к успешному представлению результатов.
Вот краткий чек-лист финальных шагов:
- Вычитка и корректура. Несколько раз внимательно перечитайте весь текст дипломной работы на предмет грамматических, стилистических и пунктуационных ошибок. Даже блестящее исследование может произвести плохое впечатление из-за небрежного оформления.
- Оформление по стандартам. Убедитесь, что структура, шрифты, отступы, нумерация страниц и оформление таблиц и рисунков соответствуют требованиям вашего вуза и ГОСТ. Особое внимание уделите списку литературы — он должен быть оформлен идеально.
- Подготовка приложений. Если в работе есть объемные листинги кода, таблицы с исходными данными или дополнительные графики, их следует вынести в приложения.
- Создание презентации для защиты. Структура вашей презентации должна логически повторять структуру дипломной работы: актуальность, цель и задачи, методология, ключевые результаты, выводы. Используйте больше графиков и таблиц и меньше текста.
- Подготовка к вопросам. Продумайте, какие вопросы могут задать члены аттестационной комиссии. Скорее всего, они будут касаться выбора методологии, интерпретации результатов и ограничений вашего исследования. Заранее подготовьте четкие и лаконичные ответы.
Успешная защита — это не только демонстрация результатов, но и демонстрация вашего уверенного владения материалом. Удачи!
Список источников информации
- Бокс Дж., Дженкинс Г.М. Анализ временных рядов, прогноз и управление. М.: Мир, 1974. 406 с.
- Gheyas I.A., Smith L.S. A Neural Network Approach to Time Series Forecasting // Proceedings of the World Congress on Engineering, London, 2009, Vol 2 [электронный ресурс]. P. 1292 – 1296. URL: www.iaeng.org /publication/WCE2009/WCE2009_pp1292-1296.pdf
- Morariu N., Iancu E., Vlad S. A neural network model for time series forecasting // Romanian Journal of Economic Forecasting. 2009, No. 4. P. 213 – 223.
- Mazengia D.H. Forecasting Spot Electricity Market Prices Using Time Series Models: Thesis for the degree of Master of Science in Electric Power Engineering. Gothenburg, Chalmers University of Technology, 2008. 89 p.
- Нормативные системы в прогнозировании развития предпринимательского сектора экономики / Л.И. Муратова [и др.] // Управление экономическими системами [электронный ресурс]. 2009, №20. URL: http://uecs.mcnip.ru/modules.php?name=News&file=print&sid=145
- Parzen E. Long memory of statistical time series modeling // NBER-NSF Time Series Conference, USA, Davis, 2004 [электронный ресурс]. 10 p. URL: %20Time%20Series%20Modeling.pdf
- Ф. Уоссермен “Нейрокомпьютерная техника”, М.: Мир, 1992. – 126 с.
- Панфилов П. “Введение в нейронные сети” – статьи, журнал «Современный трейдинг» №№ 1, 2, 3 2001г. – СПб.: Изд-во “Альпина”
- Найман Э.Л. “Малая энциклопедия трейдера”. – К., “ВИРА-Р”, Изд-во “Альфа Капитал”, 1999. – 285 c.
- А.Эрлих “Технический анализ товарных и финансовых рынков”. Изд-во “Инфра” – М., 1996. – 205 с.
- Князевский Б.А. и др. Охрана труда в электроустановках. – М.: Энергоатомиздат, 1983. – 185 с.
- Леоненков А. Нечеткое моделирование в среде MATLAB и fuzzyTECH. СПб: БХВ-Петербург, 2005. 736 с.
- Armstrong J.S. Forecasting for Marketing // Quantitative Methods in Marketing. London: International Thompson Business Press, 1999. P. 92 – 119.
- Семенов В.В. Математическое моделирование динамики транспортных потоков мегаполиса. М.: ИПМ им. М.В.Келдыша РАН, 2004. 44 с.
- «Применение ИНС для создания экспертной системы диагностирования технологического оборудования» А.В. Семенченко Московский государственный строительный университет (МГСУ)
- Галушкин А.И. Применения нейрокомпьютеров в финансовой деятельности
- Владимир Белов «О перспективах искусственного интеллекта»
- «Нейронные сети Хопфилда» С.Короткий
- Бэстенс, Д.-Э., Ван Ден Берг, В.-М., Вуд, Д. (1997). Нейронные сети и финансовые рынки. Принятие решений в торговых операциях. ТВП Научное издательство.
- Чучуева И. А., Павлов Ю. Н. Сезонно-регрессионная модель прогнозирования в решении задачи прогнозирования цен РСВ (рынок на сутки вперед) // Энерго-Info. 2009. №4. С. 46 – 49.
- Берзон Н.И. Фондовый рынок: Учеб. Пособие для высш. учебн. зав. экон. профиля/ Гос. унив. – Высшая Школа Экономики. Высшая Школа менеджмента./ Н.И.Берзон, А.Ю. Аршавский, Е.А.Буянова, А.С. Красильщиков. Под ред. Н.И.Берзона – 4-е изд., перераб. и доп. – М.: ВИТА-ПРЕСС, 2009. – 624 с.: ил.
- Быкадоров Р.В., Воронин С.Ю. Вероятностные методы расчета технологического процесса ткачества. Иваново, ИГТА, 2006. – 108 с.
- Вилленброк Х. Тайны принятия решений// GEO, июль 2009, с. 70-87.
- Воробьев Н.Н. Теория игр для экономистов-кибернетиков – М.: Наука, Главная редакция физико-математической литературы, 1985. – 272 с.
- Вороновский Г. К., Махотило К. В., Петрашев С. Н., Сергеев С. А. Генетические алгоритмы, искусственные нейронные сети и проблемы виртуальной реальности. — Харьков: Основа, 1997. — 112 с.
- Евстигнеев В.Р. Прогнозирование доходности на рынке акций. – М.: Маросейка, 2009. – 192 с.