гии: материалы XV Всерос. науч.-практ. конф., Санкт-Петербург, 22-23 ноября 2011. СПб.: Изд-во РГПУ им. А.И. Герцена, 2011. С. 28.
2. Доклад о состоянии и об охране окружа-
ющей среды Сахалинской области в 2012 году / Министерство природных ресурсов и охраны окружающей среды Сахалинской области. Южно-Сахалинск, 2013. 214 с.
ДВОЙНОВА Наталья Федоровна - кандидат сельскохозяйственных наук, доцент кафедры жизнедеятельности и гражданской обороны. Сахалинский государственный университет. Россия. Южно-Сахалинск. E-mail: [email protected]
DVOJNOVA, Nataljya Fedorovna - Candidate of Agricultural Sciences, Assistant Professor of Life and Civil Defense. Sakhalin State University. Russia. Yuzhno-Sakhalinsk. E-mail: [email protected]
УДК 65.011.56
ФИНАНСОВОЕ ПРОГНОЗИРОВАНИЕ НА ОСНОВЕ АППАРАТА
НЕЙРОННЫХ СЕТЕЙ
Л.Ф. Лаврентьев, В.П. Филиппов
Изучены вопросы прогнозирования на основе аппарата искусственных нейронных сетей (ИНС), подробно описана ИНС на основе обратного распространения ошибки - популярного способа обучения многослойных ИНС, а также приведен аналитический обзор применения ИНС в финансовой сфере. Рассмотрены методы валютного прогнозирования, определены подходы к прогнозированию курса американского доллара по отношению к российскому рублю (USD/ RUB). Представлены эксперименты по применению искусственной нейронной сети для прогнозирования курса USD/RUB.
Ключевые слова: искусственные нейронные сети; моделирование; прогнозирование; финансовые показатели; курс американского доллара; финансовая сфера; валюта.
L.F. Lavrentyev, V.P. Filippov. FORECASTING OF FINANCIAL INDICATORS ON THE BASIS OF THE DEVICE OF NEURAL NETWORKS
The problem of forecasting on the basis of artificial neural networks (Ann), detailed IRB on the basis of a backward errors expansion of popular way of learning multilayer ins), and also an analytical review of the application of Ann in the financial sector. The considered methods of currency forecasting, determined approaches to the prediction of the U.S. dollar relative to the Russian rouble (USD/RUB). Describes the experimental application of artificial neural networks to predict the rate of USD/RUB.
Keywords: artificial neural networks; modeling; forecasting; financial indicators; the rate of the U.S. dollar; financial sector; currency.
В настоящее время существует большое количество программных пакетов, использующих возможности технологии ИНС. Есть универсальные программы, решающие с помощью ИНС задачи от распознавания речи и образов до решения задач прогнозирования [1]. Сферами применения искусственных нейронных сетей могут быть финансы, экономика, производство, медицина, энергетика, военная промышленность и авиация, искусственный интеллект, научные исследования и т.д. Именно нейрогенетические технологии открыли возможности для приемлемого решения задач, не имеющих эффективной реализации в рамках последовательной парадигмы реализации вычислительного процесса на ЭВМ Фон-Неймановского типа [2; 3].
Целью написания данной работы являлось изучение финансовых прогнозов, разработка методов прогнозирования основанных на аппарате искусственных нейронных сетей. На основе этих методов возможно предсказание значения переменных, важных в процессе принятия управленческих решений в финансовой сфере.
Исследование задачи проводилось c помощью пакета STATISTICA Automated Neural Networks (SANN). SANN предоставляет разнообразные функциональные возможности для работы с очень сложными задачами, включающие не только новейшие архитектуры ИНС и алгоритмы обучения, но также и новые подходы к построению нейросетевых архитектур
с возможностью перебора различных функций активаций и ошибок, что позволяет проще интерпретировать результаты. Также существует автоматический поиск подходящей архитектуры сети любой сложности. В системе STATISTICA Automated Neural Networks реализованы следующие основные типы нейронных сетей: сети на радиальных базисных функциях, самоорганизующиеся карты Кохонена, многослойные персептроны.
Приведенные выше архитектуры используются в задачах регрессии, классификации, временных рядах (с непрерывной или категориальной зависимой переменной) и кластеризации.
SANN может использовать следующие алгоритмы обучения: градиентный спуск, сопряженные градиенты, обратного распространения ошибки, BFGS, Кохонена, метод k-сред-них.
Размеры нейронной сети, создаваемой пользователем, могут быть практически любого размера и ограничены только аппаратными возможностями компьютера.
Для прогнозирования курса USD/RUB было проведено исследование влияния получаемой ошибки прогнозирования от формы представления исходных данных, а также зависимость скорости обучения сети и ошибки прогнозирования от используемой структуры ИНС.
В качестве исходных данных были взяты измерения курса USD/RUB с 01.04.2013 г по 15.04.2013 г. (рис. 1, всего 555 измерений). Прогнозировалось как значение курса на любой момент времени, так и его среднее значение за день.
Каждый эксперимент включал в себя несколько этапов:
На первом этапе формируется обучающая выборка. При этом определяется вид представления исходных данных (включая исторические и прогнозируемые данные) и формируются их наборы.
Второй этап является самым ресурсоемким, так как на нем происходит обучение НС с использованием сформированной на первом этапе обучающей выборки.
Критерием прекращения обучения было прохождение сетью 1000 итераций, одновременно контролировалось поведение графика обучения, и выход его на плато также мог сигнализировать о возможности прекращения обучения.
Тестирование обучения сети, проходящее одновременно с обучением, явилось третьим этапом. После ввода данных SANN сообщает количество введенных данных. Пользователь может проверить правильность ввода данных, попросив SANN вывести их в соответствующее окно. Затем выбирается конфигурация ИНС «многослойный персептрон» (Multilayer Perceptron), причем размер окна обучающей выборки выбран в объеме 37 наблюдений (количество наблюдений за 1 день). В создаваемой сети в скрытом слое будет содержаться 19 нейронов. Это число не произвольное, а принятое по рекомендации Советника SANN. Советник работает по сравнительно простому алгоритму: считает среднее арифметическое количество элементов входного и выходного слоев и выдает его за рекомендуемое число нейронов скрытого слоя. Система имеет в своем составе еще Интеллектуального Решателя проблем,
Рис. 1. Курс USD/RUB в первой половине апреля 2013 г.
который помогает разобраться пользователю в сложных случаях.
SANN показывает конфигурацию выбранной искусственной нейронной сети (рис. 2). Она имеет 37 входных элементов, 19 нейронов скрытого слоя и один синапс на выходе. Из рис. 2 видно, что каждый входной элемент соединен с каждым нейроном скрытого слоя.
Рис. 2. Конфигурация нейронной сети 37-19-1
Следующий этап - выбор режима обучения и его проверка. Используя Главное меню и подменю SANN, необходимо сообщить системе о выборе режима «Обучение - Контроль обучения - Тестирование сети» (Train-Verify-Test).
Распределение элементов по этапам обучения: на 398 элементах нейронная сеть обучалась, 90 элементов использовались для контроля обучения и 30 элементов участвовали в тестировании. В качестве метода обучения ИНС был выбран Train/Multilayer Perceptrons/ Back Propagation (Обучение - Многослойный Пер-септрон - Обратное распространение). Количество итераций обучения нейронной сети было выбрано равным 1000.
В процессе обучения ИНС устанавливает веса связей между входными нейронами и нейронами скрытого слоя. При этом вполне возможно неоптимальное назначение весов. Для большей точности для выхода из возможного локального минимума рекомендуется «встряхнуть» установленные веса и провести обучение сети заново, для этого есть кнопка Jog Weights.
В нижней части рис. 3 в окне Training Error Graph показано, как уменьшается ошибка прогноза по мере обучения ИНС (с увеличением числа циклов итераций).
Обученная сеть производит прогноз и вы-
Рис. 3. Система показывает, как проходит процесс обучения ИНС
дает результаты прогноза вместе с оценкой ошибки прогнозирования (рис. 4).
ЩЗИЖ:.. Е 1 Щ
File Edit View Image Colors Help
$ File Edit Train Statistics Run Options Window Help ЦЩ $¡iflo ¡SIMM Net Mil 1И [lifSN И
ÜÜH * 1
ШШгЫ02315 Verify j0.02532 Test 0.03233
№IPI VARU T.VARI E.VAR1 EfrÖf 1 : ШШШШШШ
38 29.37371 29.37 0.003706 0.005977
39 29.34988 29.35 -0.0001156 0.0001865
40 29.33249 29.39 -0.05751 0.09276
41 29.38222 29.38 0.002216 0.003574
29.39475 29.4 -0.00525 0.008467
43 29.40886 -0.02114 0.0341
44 29.44299 29.45 -0.00701 0.01131
45 29.47103 29.45 0.0210! 0.03392
4G 29.46754 29.46 0.007545 0.0121693
29.44192 29.44 0.001916 0.00309
48 29.42101 29.43 -0.008994 0.01451
49 29.41557 29.46 -0.04443 0.07167
ш= 29.45424 29.4 0.05424 0.08748
51 29.40299 29.42 -0.01701 0.02743
29.41471 29.44 -0.02529 0.0407836
53 29.43497 29.45 -0.0150; 0.02425
54 29.46256 29.48 -0.01744 0.02812
55: 29.49724 29.49 0.007244 0.01168
56 29.49583 29.5 -0.004173 0.00673
29.51989 29.51 0.009886 0.01594
<1 1 M
|1019x802x16M
Рис. 4. Вывод результатов обучения ИНС с оценкой погрешности
В левой колонке показаны номера наблюдений за курсом USD/RUB, вторая колонка (Vari) содержит спрогнозированный курс, а в третьей (T.Vari) указывается фактический курс USD/ RUB. Далее располагаются колонки с оценками погрешности обучения: (E/Vari) - абсолютная погрешность и среднеквадратичная ошибка (Error).
Отдельные исследователи [1] считают, что выборки, предназначенные для контроля и тестирования, не участвующие в обучении сети, могут содержать полезную информацию для обучения. Поэтому разработчики системы предусмотрели механизм «перемешивания» входных данных, который дает возможность в процессе обучения и контроля изменять состав данных в обучающей, контролирующей и тестирующей выборках. Наш эксперимент (№2) не подтвердил это мнение, наоборот, без «перемешивания» средняя погрешность прогнозов составила 0,9%, а с «перемешиванием» - 3,31%. По нашему мнению, данный инструмент эффективен в задачах с кластеризацией объектов и при распознавании образов.
Следующий эксперимент (№3) касается анализа влияния на обучение ИНС количества итераций - «эпох обучения». В предыдущих
экспериментах было установлено 1000 итераций. В третьем эксперименте, используя ту же конфигурацию сети, при установке 50 итераций, результат был довольно неожиданным, ошибка возросла (в 1,5-2 раза), но не настолько, как предполагалось (в 5-10 раз). Это говорит о том, что, применяя более простые ИНС, не способные производить значительное число итераций, можно получать вполне приемлемые результаты. Последующие эксперименты показали, что приемлемую точность прогноза можно получить, используя 100 итераций для обучения сети.
Рис. 5. Структура нейронной сети 15-8-1
Эксперименты №4 и №5 проводились с целью выявления зависимости качества обучения и точности прогнозирования нейронной сети от ее сложности. При уменьшении количества входных элементов до 15, Советник рекомендует принять количество нейронов скрытого слоя равным 8. На рис. 5 приведена структура выбранной нейронной сети. На рис. 6 представлен график обучения этой сети. Обучение проводилось без перемешивания выборок (эксперимент №4) и с перемешиванием (эксперимент №5). Расчет средних ошибок показал, что данный вариант сети без перемешивания работает точнее, чем сеть 37-19-1. Мы считаем, что на это повлияло уменьшение размеров входной сети (с 37 до 15), что вызвало большее число шагов обучения за одну «эпоху» и, следовательно, получение большего объема обучающей информации, кроме того, в выборке из 15 элементов содержится меньше противоречивых данных, что ранее мешало обучению сети. Эксперимент показал, что перемешивание выборок положительно влияет на качество обучения нейронной сети. После перемешивания выборок величина ошибок уменьшается почти в 3 раза. По нашему мнению, это связано с тем, что шаг перемещения окна обучающей выбор-
Рис. 6. График обучения ИНС 15-8-1
ки (15) имеет меньшие размеры, чем выборки контроля и тестирования, и при перемешивании система на входе получает много новой обучающей информации.
Эксперимент № 6. Хорошие характеристики достаточно простой сети делают интересной проверку еще более простого варианта ИНС. Для этого необходимо создать ИНС с 8 элементами во входном слое, 4 нейронами в скрытом слое и с одним выходным элементом (8-4-1). Структура сети показана на рис. 7.
Рис. 7. Структура ИНС 8-4-1
Эксперимент показал, что ошибка обучения возросла, по нашему мнению, за счет меньшей глубины анализа входных данных, и темп обучения оказался еще ниже, чем у предыдущей сети.
Анализ вариантов структур ИНС привел к выводу, что для наших целей оптимальной является нейронная сеть 15-8-1.
Эксперименты №7 и №8. Как видно из рис. 1, колебания курса доллара имеют определенные ограничения, например, нижняя граница находится на уровне 29,2 руб. Иначе говоря,
график состоит из постоянной и вариативной составляющих. Представляется целесообразным вводить в ИНС лишь вариативную часть, т.е. провести нормализацию функции USD/ RUB, отсекая от значений переменной константу. Для промежутка 1-15 апреля такой константой является 29 руб. При большой вариативности входных данных можно применить более универсальную нормализацию
X = (х - W )/(W - W ),
4 rnm^ 4 max min''
где х - фактическое значение входной переменной,
X - нормализованное значение переменной,
W - минимальное значение переменной
min г
за период наблюдения,
W - максимальное значение переменной
max
за период наблюдения.
Эксперименты показали, что ввод нормализованных данных повышает качество обучения сети и точность прогноза.
Как видно из таблицы, выбранный метод дает погрешность не более 3% и может быть применен в наших экспериментах по прогнозированию курса USD/RUB.
В ходе подготовки публикации был проведен анализ теоретико-методологических аспектов прогнозирования, анализ известных моделей искусственных нейронных сетей, выбрана модель искусственной нейронной сети, обеспечивающая эффективное решение задачи прогнозирования, исследована предложенная модель и экспериментально реализованы тестовые примеры для выбранной модели. В дальнейшем планируется изучение влияния на
Оценка погрешности выбранного метода прогнозирования
Дата Фактический курс Середина дня Отклонение Отклонение, в %
2 апреля 29,46 29,61 0,15 0,509
3 апреля 29,49 29,57 0,08 0,260
4 апреля 29,65 29,18 -0,47 -1,601
5 апреля 29,77 30,22 0,45 1,512
6 апреля 29,47 28,87 -0,60 -2,036
7 апреля 29,62 30,37 0,75 2,532
8 апреля 29,56 28,67 -0,89 -3,00
9 апреля 29,53 29,23 -0,30 -1,016
10 апреля 29,53 28,78 -0,75 -2,540
12 апреля 29,32 29,77 0,45 1,535
13 апреля 29,35 29,48 0,13 0,455
14 апреля 29,39 29,09 -0,30 -1,022
15 апреля 29,37 29,20 -0,17 -0,572
точность прогноза других методов обучения сети и использования нейронных сетей в маркетинговых исследованиях.
Список литературы
1. Еремин Д.М., Гарцеев И.Б. Искусственные нейронные сети в интеллектуальных системах управления. М.: МИРЭА, 2004. 75 с.
2. Злобин В.К., Ручкин В.Н. Нейросети и
нейрокомпьютеры. СПб.: БХВ-Петербург, 2011. 256 с.
3. Нейронные сети. Statistica Neural Networks: Методология и технологии современного анализа данных / под ред. В.П. Боровикова. М.: Горячая линия - Телеком, 2008. 392 с.
4. Ширяев В.И. Финансовые рынки. Нейронные сети, хаос и нелинейная динамика. М.: Ли-броком,2013.232 с.
ЛАВРЕНТЬЕВ Леонид Федорович - старший преподаватель кафедры математических и инструментальных методов экономики. Чебоксарский кооперативный институт (филиал) Российского университета кооперации. Россия. Чебоксары. E-mail: [email protected]
ФИЛИППОВ Владимир Петрович - кандидат физико-математических наук, доцент кафедры математических и инструментальных методов экономики. Чебоксарский кооперативный институт (филиал) Российского университета кооперации. Россия. Чебоксары. E-mail: [email protected]
LAVRENTYEV, Leonid Fedorovich - Senior Lecturer of Department of Mathematical and Tool Methods of Economy. Cheboksary Cooperative Institute (branch) of the Russian University of Cooperation. Russia. Cheboksary. E-mail: [email protected]
FILIPPOV, Vladimir Petrovich - Candidate of Physico-mathematical Sciences, Associate Professor of Department of Mathematical and Tool Methods of Economy. Cheboksary Cooperative Institute (branch) of the Russian University of Cooperation. Russia. Cheboksary. E-mail: filippov_v_p@ rambler.ru