Нейронечеткая модель анализа и прогнозирования временных рядов

УДК 004.852

Д. В. Катасёва, А. С. Катасёв, А. П. Кирпичников, Б. Э. Абянов

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

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

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

Keywords: neuro fuzzy model, fuzzy logic, neural network, time series, forecasting.

This article focuses on the neuro fuzzy model development for time series forecasting. Analyzed existing modeling forecasting. The necessity of using a hybrid neuro fuzzy model. We describe a technique of preparation initial data for analysis. For constructing the model using the MatLab. Testing of the model was based on the bootstrap method estimates. These estimates, as well as a comparison with the neural network model indicated the effectiveness of neuro-fuzzy model and its suitability for the task.

Введение

В настоящее время решение практических задач на основе анализа и прогнозирования временных рядов находит широкое применение в различных сферах человеческой деятельности [5,6,15]. Получение прогнозных значений по исходным данным временного ряда актуально для решения задач планирования в экономике, торговле, управлении, оценке рисков информационной безопасности, а также при построении интеллектуальных систем поддержки принятия решений.

Для решения подобных задач широкое применение получили различные методы моделирования [11,16], в частности адаптивные методы искусственного интеллекта - нечеткие нейронные сети [14]. Успешность их применения основана на сочетании достоинств нейронных сетей [8,9,10,12,13] (возможность адаптивного самообучения) и нечетких систем [1,4,7] (простота лингвистической интерпретации получаемого с их помощью результата). Поэтому, целью данного исследования является построение нейронечеткой модели, оценка ее адекватности и возможности эффективного практического использования для анализа и прогнозирования временных рядов.

Анализ моделей прогнозирования

Модели прогнозирования временных рядов можно разделить на две большие группы [3]: статические и структурные. В моделях первой группы зависимость между прогнозными и реальными значениями временного ряда задана аналитически. Примерами таких моделей являются регрессионные, авторегрессионные модели, а также модели экспоненциального сглаживания.

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

Рассмотрим сравнительную характеристику указанных моделей прогнозирования (см. табл. 1).

Таблица 1 - Сравнительная характеристика моделей прогнозирования

Модель Достоинства Недостатки

1 2 3

Регрессионная - простая, гибкая, прозрачная для пользователя при моделировании; - четко формализованная при анализе и проектировании - наличие трудностей при выявлении зависимостей в анализируемых данных; - наличие трудностей при анализе и моделировании нелинейных зависимостей

Авторегрессионная - простая при моделировании; - четко формализованная при анализе и проектировании; - имеет большое количество применений - высокая трудоемкость построения модели; - сложность при анализе и моделировании нелинейных зависимостей; - не высокая адаптивность к анализируемым данным

Экспоненциального сглаживания - простая при моделировании; - четко формализованная при анализе и проектировании - не высокая гибкость; - узкая сфера применения построенных моделей

Нейросетевая - нелинейная; - масштабируемая, адаптивная; - четко формализованная при анализе и проектировании; - имеет большое количество применений - непрозрачная (черный ящик); - трудности при выборе архитектуры нейронной сети; - высокие требования к качеству данных для обучения; - неоднозначность использования алгоритма обучения; - требует большого количества ресурсов при обучении

Окончание табл. 1

1 2 3

Цепь Маркова - простая при моделировании; - четко формализованная при анализе и проектировании - невозможность анализа процессов с длинной памятью; - узкая сфера применения

Дерево решений - масштабируемая; - быстрая и простая в обучении; - позволяет учитывать качественные признаки - неоднозначность использования алгоритма при построении дерева решений

Как видно из таблицы, ни одна из указанных моделей не обладает существенными достоинствами относительно других моделей. Поэтому в настоящее время актуальность получило применение гибридных моделей принятия решений. Одним из гибридных подходов к анализу и моделированию временных рядов являются нечеткие нейронные сети. Данные модели обладают преимуществами нейросете-вых технологий, а также технологий на основе математического аппарата нечеткой логики, которая позволяет строить интерпретируемые модели. Наиболее популярной нечеткой нейронной сетью для прогнозирования является сеть ANFIS, основанная на системе нечеткого логического вывода Сугено. Рассмотрим реализацию этапа подготовки исходных данных для обучения нечеткой нейронной сети ANFIS.

Подготовка данных для анализа

Подготовка исходных данных для анализа осуществлялась на базе аналитической платформы Deductor Studio Academic 5.3 [17,18]. Исходные данные временного ряда были представлены количеством ежедневно поступающих исковых заявлений в Арбитражный суд Республики Татарстан по категории судебных споров «О неисполнении или ненадлежащем исполнении обязательств по договорам» [15]. С целью предварительной очистки и повышения эффективности анализа исходные данные были агрегированы по неделям. К полученным данным была применена спектральная обработка по методу Фурье-преобразования. В результате удалось добиться сглаживания временного ряда за счет удаления шума в измерениях показателей. Также были проведены расчеты значений автокорреляционной зависимости в исходных и полученных данных.

В таблице 2 представлены результаты автокорреляционного анализа временного ряда.

Таблица 2 - Значения автокорреляций данных временного ряда

Лаг Данные до очистки Данные после очистки

0 1 1

1 0,22 0,9

2 0,23 0,64

3 0,08 0,32

4 0,02 0,05

существенно выше в очищенных данных. При этом высокие значения коэффициентов корреляции наблюдаются при значениях лага 0, 1 и 2.

Для формирования обучающей выборки потребовалась трансформация очищенных данных временного ряда по методу скользящего окна [19]. В параметрах трансформации были заданы следующие значения:

- интервал прогноза - 1 неделя;

- горизонт прогноза - 1 неделя;

- глубина погружения - 2 недели.

Таким образом, в работе реализована следующая методика подготовки исходных данных для анализа временного ряда:

1) первичный визуальный анализ данных временного ряда на полноту измерений, наличие шумов и аномальных значений;

2) агрегация данных временного ряда по различным измерениям (день/неделя/год);

3) очистка данных временного ряда на основе метода Фурье-преобразования;

4) преобразование данных временного ряда методом скользящего окна.

Построение нейронечеткой модели

Для построения нейронечеткой модели была выбрана среда моделирования MatLab, так как этот программный продукт обладает необходимым набором инструментов для создания нечетких нейронных сетей, а именно включает пакет расширения Fuzzy Logic Toolbox [20].

Нечеткая нейронная сеть ANFIS является аналогом модели нечеткого вывода Сугено. Даная сеть позволяет выполнять аппроксимацию анализируемых данных с помощью нечетко-продукционных правил следующего вида:

ЕСЛИ x1 = A И x2 = Д ТО y1 ~ c11 ' x1 + c12 ' x2 ;

~ ТО

У2 = c21 • x1 + c22 • x2.

На рисунке 1 представлен пример структуры сети ANFIS, соответствующей данным правилам.

ЕСЛИ

x1 = А2 И x2 = В 2

Как видно из табл. 2, сила корреляционной зависимости при различных значениях временного лага

Рис. 1 - Пример структуры сети ANFIS

Как видно из данного рисунка, значение на выходе нейро-нечеткой сети Л^Ш, как и в системе нечеткого вывода Сугено, вычисляется по следующей формуле:

= У + ^2 У 2

где у1 и у2 - выходные значения нечетких правил, а М и м2 - степени срабатывания их антецедентов.

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

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

М =М:{ (Х) (х2).

Нейроны третьего слоя формируют нормализованный вес /-го правила: Д =-'— .

>с1 +М> 2

Четвертый слой вычисляет выходное значение переменной у(х1,х2) = Д •(с-1х1 + с12х2).

Нейрон пятого слоя формирует выходное значение сети по формуле: у = Д у1 + Д, у2

Таким образом, логика работы сети А^^ полностью соответствует алгоритму нечеткого логического вывода Сугено.

Для построения нейронечеткой модели, после выполнения этапов очистки, подготовки и экспортирования входных данных, необходимо выполнить следующие шаги:

- для каждой из входных лингвистических переменных задать по три нечеткие переменные с треугольной функцией принадлежности;

- в качестве функции активации выходного нейрона выбрать линейную функцию;

- для обучения нечеткой нейронной сети использовать алгоритм обратного распространения ошибки, ошибку обучения задать равной 0,05, число эпох обучения установить 1000 и обучить систему на обучающей выборке.

После выполнения указанных шагов формируется искомая нейронечеткая модель. На рисунке 2 представлена структура построенной нечеткой нейронной сети А^^.

outputmf output

Рис. 2 - Структура нейро-нечеткой сети ANFIS

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

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

Тестирование и оценка эффективности нейронечеткой модели

Для практического использования построенной модели требуется определение ее адекватности, т.е. соответствие тому, насколько точно она решает поставленную задачу прогнозирования временного ряда. Адекватность модели можно определить с помощью метода бутстреп-оценок [2]. Получение данных оценок основано на процедуре сэмплинга с замещением, который позволяет выбирать одни и те же записи из исходных данных несколько раз, формируя обучающие и тестовые выборки.

Рассмотрим частный случай данного метода, называемый 0,632-бутстрепом [18]. Суть данного метода состоит в том, что записи из исходного множества данных объема n выбираются с замещением n раз. При этом формируется другое множество данных, состоящее из n записей. Так как некоторые записи в результирующем множестве являются дубликатами, а исходное и сформированное множества данных включают равное количество записей, то некоторые из них не будут содержаться во втором множестве. Такие записи можно использовать для тестирования модели.

Вероятность выбора одной записи равна 1/n . Следовательно, вероятность того, что запись не будет выбрана, равно 1 -1/ n . Перемножив данные вероятности n раз, получим следующий результат: (1 -1/n)n и e-1 = 0,368. В данном случае получаем вероятность того, что некоторая запись не будет использована ни разу. Таким образом, при большом объеме исходных данных объем тестовых данных будет составлять около 36,8% записей, а обучающих данных - 63,2%. Некоторые записи в обучающей выборке данных будут дублироваться, за счет чего ее объем будет равен объему исходного множества.

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

На рисунке 3 представлен результат тестирования нейронечеткой модели.

Рис. 3 - Пример тестирования нейронечеткой модели

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

Рис. 4 - Диаграмма рассеяния для тестирования нейросетевой модели

Данный рисунок также иллюстрирует высокую адекватность нейросетевой модели. Однако известно [18], что результаты, полученные в процессе обучения модели на данных из обучающей выборки, и результаты тестирования модели будут пессимистичными. Это является следствием того, что обучающее множество, имея размер n, включает лишь 63% исходных записей, что не всегда является достаточным. Чтобы компенсировать недостаток данного метода, можно комбинировать ошибку на тестовом множестве stest с ошибкой обучения etran. Таким образом, получаем итоговую ошибку модели :

s= 0,632•s, , + 0,368•s, . .

> test ' tram

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

В таблице 3 приведены численные результаты экспериментов в виде значений бутстреп-оценок для нейросетевой (НС) и нейронечеткой (НН) моделей.

Таблица 3 - Бутстреп-оценки построенных моделей

выборки Оценки 1 2 3 4 5

е, tram НС 6,1 4,4 4,5 4,7 4,8

НН 3,1 3,6 3,5 3,1 3,2

^ test НС 6,2 4,7 6,8 5,5 4,7

НН 6,3 7,1 5,2 6,1 4,6

S НС 6,1 4,6 5,9 5,2 4,7

НН 5,1 5,8 4,6 5,0 4,0

S avg НС 5,3

НН 4,9

Из данной таблицы видно, что нейронечеткая и нейросетевая модель имеют достаточно низкую среднюю ошибку прогнозирования е: 4,9 и 5,3

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

Заключение

Как показали результаты проведенных исследований, построенная нейронечеткая модель показала высокую эффективность, сравнимую с нейросетевой моделью. Средняя ошибка прогнозирования временного ряда по методу бутстреп-оценки составила 4,9. Следовательно, можно утверждать, что нейро-нечеткая модель является адекватной, что позволяет ее успешно использовать для анализа и прогнозирования временных рядов в различных сферах человеческой деятельности.

Литература

1. Абдулхаков А.Р., Катасёв А.С., Кирпичников А.П. Методы редукции нечетких правил в базах знаний интеллектуальных систем // Вестник Казанского технологического университета. - 2014. - Т. 17. - № 23. - С. 389-392.

2. Антонов А.В., Соколов С.В., Чепурко В.А. Бутстреп-метод оценки характеристик надежности восстанавливаемых объектов по специфическим данным об отказах // Информационные технологии. - 2012. - № 4. -С. 50-54.

3. Иванюк В.А., Цвиркун А.Д. Обзор моделей и методов прогнозирования финансовых временных рядов // Восьмая международная конференция «Управление развитием крупномасштабных систем». - Институт проблем управления им. В.А.Трапезникова Российской академии наук; Под общей редакцией С.Н. Васильева, А.Д. Цвир-куна. - 2015. - С. 377-382.

4. Катасёв А.С., Емалетдинова Л.Ю. Нечетко-продукционная каскадная модель диагностики состояния сложного объекта // Программные системы и вычислительные методы. - 2013. - № 1. - С. 69-81.

5. Катасёв А.С., Катасёва Д.В. Интеллектуальный анализ временных рядов в системах диагностики и поддержки принятия решений // Международная научно-практическая конференция «Поиск эффективных решений в процессе создания и реализации научных разработок в российской авиационной и ракетно-космической промышленности». - 2014. -С. 481-483.

6. Катасёв А.С., Катасёва Д.В. Интеллектуальный анализ временных рядов для формирования нечетких правил диагностики состояния водоводов в нефтяной отрасли // Международная конференция по мягким вычислениям и измерениям. - 2014. - Т. 1. - С. 85-88.

7. Катасёв А.С., Катасёва Д.В. Формирование нечетких правил фильтрации нежелательных электронных сообщений в инфокоммуникационных сетях / Проблемы техники и технологий телекоммуникаций ПТиТТ-2014. Оптические технологии в телекоммуникациях ОТТ-

2014. Материалы Международных научно-технических конференций. Казань. - 2014. - С. 320-322.

8. Катасёв А.С., Катасёва Д.В., Кирпичников А.П. Нейросетевая диагностика аномальной сетевой активности // Вестник технологического университета. -

2015. - Т. 18. № 6. - С. 163-167.

9. Катасёв А.С., Катасёва Д.В., Кирпичников А.П. Нейросетевая технология классификации электронных почтовых сообщений // Вестник технологического университета. - 2015. - Т. 18. № 5. - С. 180-183.

10. Катасёв А.С., Катасёва Д.В., Кирпичников А.П. Нейросетевое прогнозирование инцидентов информационной безопасности предприятия // Вестник технологического университета. - 2015. - Т. 18. № 9. - С. 215-218.

11. Катасёв А.С., Катасёва Д.В., Кирпичников А.П., Гуме-рова Р.И. Нейросетевая модель распознавания рукописных символов в системах биометрической идентификации и аутентификации // Вестник технологического университета. - 2016. - Т. 19. № 4. - С. 122-126.

12. Катасёв А.С., Катасёва Д.В., Кирпичников А.П., Евсеева А.О. Нейросетевая модель идентификации ботов в социальных сетях // Вестник технологического университета. - 2015. - Т. 18. № 16. - С. 253-256.

13. Катасёв А.С., Катасёва Д.В., Кирпичников А.П., Кос-тюжов С.Г. Нейросетевая модель распознавания пользователей в системах дистанционного обучения // Вестник технологического университета. - 2015. - Т. 18. № 13. - С. 160-163.

14. Катасёв А.С., Катасёва Д.В., Кирпичников А.П., Семенов Я.Е. Спам-фильтрация электронных почтовых сообщений на основе нейросетевой и нейронечеткой моделей // Вестник технологического университета. - 2015. - Т. 18. № 15. - С. 217-220.

15. Катасёва Д.В. Интеллектуальный анализ временных рядов для прогнозирования нагрузок в сфере экономического правосудия // VIII Международная научно-практич. конференция «Логистика и экономика ресурсо-энергосбережения в промышленности» (ЛЭРЭП-8-2014). - 2014. - С. 311-313.

16. Катасёва Д.В. Методы анализа и прогнозирования временных рядов // Международная молодежная научная конференция «XXII Туполевские чтения (школа молодых ученых)». - 2015. - С. 115-120.

17. Кацко И.А., Паклин Н.Б. Практикум по анализу данных на компьютере: Учеб. пособие. - М.: Изд-во «КолосС», 2009. - 278 с.

18. Паклин Н.Б., Орешков В.И. Бизнес-аналитика: от данных к знаниям: учебное пособие. - 2-е изд., испр. -СПб.: Питер, 2013. - 704 с.: ил.

19. Рыбин А.Л. Метод скользящего окна для выявления участков концентрации ДТП при аудите безопасности дорожного движения // Автотранспортное предприятие. -2014. - № 10. - С. 23-26.

20. Тимшина Д.В., Работа Ю.Ю. Нечеткая логика и анализ эффективности инвестиционных проектов в среде MatLab, Fuzzy Logic Toolbox // Вестник Академии знаний. - 2014. - №> 1 (8). - С. 50-60.

© Д. В. Катасёва - аспирант кафедры систем информационной безопасности КНИТУ-КАИ, e-mail: 415pisarevadv@mail.ru; А. С. Катасёв - к-т. техн. наук, доц. кафедры систем информационной безопасности КНИТУ-КАИ, e-mail: kat_726@mail.ru; А. П. Кирпичников - д-р. физ.-мат. наук, профессор, зав. кафедрой интеллектуальных систем и управления информационными ресурсами КНИТУ, e-mail: kirpichnikov@kstu.ru; Б. Э. Абянов - магистрант кафедры систем информационной безопасности КНИТУ-КАИ, e-mail: b.abyanov@yandex.ru.

© D.V. Kataseva - Postgraduate Student of Information Security Systems Department, KNRTU named after A.N. Tupolev, e-mail: 415pisarevadv@mail.ru; A. S. Katasev - PhD, Associate Professor of Information Security Systems Department, KNRTU named after A.N. Tupolev, e-mail: kat_726@mail.ru; A. P. Kirpichnikov - Dr. Sci, Prof, Head of Intelligent Systems & Information Systems Control Department, KNRTU, e-mail: kirpichnikov@kstu.ru; B. E. Abyanov - Master Student of Information Security Systems Department, KNRTU named after A.N. Tupolev, e-mail: b.abyanov@yandex.ru.