Научная статья на тему 'Методология обучения рекуррентной искусственной нейронной сети с динамической стековой памятью'

Методология обучения рекуррентной искусственной нейронной сети с динамической стековой памятью Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
838
192
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РЕКУРРЕНТНЫЕ НЕЙРОННЫЕ СЕТИ / МНОГОСЛОЙНЫЙ ПЕРСЕПТРОН / СЕТЬ ЭЛМАНА / СЕТЬ ДЖОРДАНА / ОБРАТНАЯ СВЯЗЬ / ДИНАМИЧЕСКАЯ СТЕКОВАЯ ПАМЯТЬ / ПРОГНОЗИРОВАНИЕ ВРЕМЕННЫХ РЯДОВ NEURONADS / recurrent neural networks / multilayer perceptron / Elman neural network / Jordan neural network / feedback / dynamic stack memory / time series forecasting / NeuroNADS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Пучков Е. В., Лила В. Б.

В работе предложено обобщить рекуррентные искусственные нейронные сети путем добавления задержки сигналов обратной связи скрытого слоя на несколько тактов в виде динамической стековой памяти. Это позволило обеспечить адаптивное запоминание прошлых временных событий и создать гибкий инструмент для построения не-линейных моделей. Предложенная универсальная архитектура рекуррентной искусственной нейронной сети с динамической стековой памятью обобщает такие сети, как многослойный персептрон, сеть Джордана, сеть Элмана, а также сети с нейронами, имеющими обратную связь. Представлена методология обучения универсальной нейросетевой архитектуры для решения задачи прогнозирования временного ряда, основанная на трансформации обучаю-щей выборки. Обратные связи от скрытого слоя или от выходов сети исключаются путем добавления в обучающую выборку сигналов обратной связи. Для реализации предлагаемой методологии обучения рекуррентной искусствен-ной нейронной сети с динамической стековой памятью расширены возможности нейроэмулятора NeuroNADS. Рассмотрены новая объектно-ориентированная модель нейроэмулятора и ее основные программные классы. Проведен прогноз среднемесячной плотности солнечной активности на длине волны 10,7 см на первые шесть месяцев 2012 г. на основе данных за 2010–2011 гг. Рекуррентная искусственная нейронная сеть обучалась гибридным методом, в основе которого лежат адаптивный и генетический алгоритмы. Проанализированы результаты исследования и сделан вывод, что рекуррентную искусственную нейронную сеть с динамической стековой памятью можно обучать с помощью предложенной методологии, а построенные модели искусственных нейронных сетей использовать для прогнозирования временных рядов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

METHODOLOGY OF TRAINING RECURRENT ARTIFICIAL NEURAL NETWORK WITH DYNAMIC STACK MEMORY

The work proposes to generalize recurrent artificial neural networks by adding the delay feedback signals of the hidden layer to a few bars in the form of a dynamic stack memory. It allows providing an adaptive memorization of the past time events and creating a flexible tool to create nonlinear models. The proposed universal architecture of a recurrent artificial neural network with dynamic stack memory generalizes such networks as the multilayer perceptron, Jordan and Elman neural networks, as well as neural networks with feedback neurons. The paper presents a training methodology of standard neural network architecture for solving the problem of time series forecasting. It is based on the learning sample transformation. The feedbacks from a hidden layer or outputs of the neural network are eliminated by adding feedback signals to the training set. The opportunities of NeuroNADS neural network emulator have been expanded to implement the proposed methodology of recurrent neural network with dynamic stack memory training. The article presents a new object-oriented model and main software classes of neural network emulator. Based on the data for 2010–2011 there has been predicted the average monthly density of solar activity at a 10,7 cm wavelength for the first six months of 2012. After analyzing it was concluded that the recurrent artificial neural network with dynamic stack memory can be trained using the proposed methodology and the constructed models of artificial neural networks can be used for time series forecasting.

Текст научной работы на тему «Методология обучения рекуррентной искусственной нейронной сети с динамической стековой памятью»

Программные продукты и системы /Software & Systems

№ 4 (108), 2014

УДК 004.032.26 Дата подачи статьи: 10.04.2014

DOI: 10.15827/0236-235X.108.132-135

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

(Исследование выполнено при финансовой поддержке РФФИ, проект № 14-01-00579а)

В.Б. Лила, к.т.н., ассистент, [email protected];

Е.В. Пучков, к.т.н., доцент, [email protected] (Ростовский государственный строительный университет, ул. Социалистическая, 162, г. Ростов-на-Дону, 344022, Россия)

В работе предложено обобщить рекуррентные искусственные нейронные сети путем добавления задержки сигналов обратной связи скрытого слоя на несколько тактов в виде динамической стековой памяти. Это позволило обеспечить адаптивное запоминание прошлых временных событий и создать гибкий инструмент для построения нелинейных моделей. Предложенная универсальная архитектура рекуррентной искусственной нейронной сети с динамической стековой памятью обобщает такие сети, как многослойный персептрон, сеть Джордана, сеть Элмана, а также сети с нейронами, имеющими обратную связь. Представлена методология обучения универсальной нейросетевой архитектуры для решения задачи прогнозирования временного ряда, основанная на трансформации обучающей выборки. Обратные связи от скрытого слоя или от выходов сети исключаются путем добавления в обучающую выборку сигналов обратной связи. Для реализации предлагаемой методологии обучения рекуррентной искусственной нейронной сети с динамической стековой памятью расширены возможности нейроэмулятора NeuroNADS. Рассмотрены новая объектно-ориентированная модель нейроэмулятора и ее основные программные классы. Проведен прогноз среднемесячной плотности солнечной активности на длине волны 10,7 см на первые шесть месяцев 2012 г. на основе данных за 2010-2011 гг. Рекуррентная искусственная нейронная сеть обучалась гибридным методом, в основе которого лежат адаптивный и генетический алгоритмы. Проанализированы результаты исследования и сделан вывод, что рекуррентную искусственную нейронную сеть с динамической стековой памятью можно обучать с помощью предложенной методологии, а построенные модели искусственных нейронных сетей использовать для прогнозирования временных рядов.

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

К одному из сложных видов искусственных нейронных сетей (ИНС) относятся рекуррентные, в которых имеются обратные связи [1, 2]. В первых рекуррентных ИНС главной идеей было обучение своему выходному сигналу на предыдущем шаге. Рекуррентные сети реализуют нелинейные модели, которые могут быть применены для оптимального управления процессами, изменяющимися во времени, то есть обратные связи позволяют обеспечить адаптивное запоминание прошлых временных событий. Обобщение рекуррентных ИНС позволит создать более гибкий инструмент для построения нелинейных моделей. Рассмотрим некоторые архитектуры рекуррентных ИНС.

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

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

сети, а от выходов нейронов скрытого слоя [3-5].

Для обобщения рекуррентных ИНС в статье предлагается добавить задержку сигналов обратной связи скрытого слоя на несколько тактов. Для этого добавим у слоя динамическую стековую память. Пример архитектуры такой ИНС показан на рисунке 1.

Рис. 1. Пример архитектуры рекуррентной ИНС с динамической стековой памятью нескольких предыдущих выходных сигналов скрытого слоя

Fig. 1. Recurrent artificial neural network architecture sample with dynamic stack memory of several output signals of a hidden layer

132

Программные продукты и системы /Software & Systems

№ 4 (108), 2014

Выходы скрытого слоя {сь c2, ..., ck} подаются на входные нейроны с весовыми коэффициентами {wj}-t, где i - индекс нейрона, на который подается сигнал (i = 1, 2, ..., n); j - индекс выходного сигнала нейрона скрытого слоя (j = 1, 2, ..., k); t -индекс временной задержки (t =1, 2, ..., m). Количество временных задержек будем изменять от 1 до m. Таким образом, сеть Элмана получается при m = 1, а многослойный персептрон - при m = 0.

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

Рассмотрим процесс трансформации обучающей выборки для решения задачи прогнозирования временного ряда с помощью рекуррентной ИНС с динамической стековой памятью. В качестве примера будем использовать среднемесячные значения плотности потока солнечного излучения на длине волны 10,7 за 2010-2012 гг. (табл. 1) [6].

Таблица 1

Данные о плотности потока солнечного излучения на длине волны 10,7 см за 2010-2012 гг.

Table 1

Solar radiant flux density 10,7 cm line data for 2010-2012

№ примера Дата Плотность потока излучения 10-22(Вт/м2)

1 Январь 2010 834,84

2 Февраль 2010 847,86

3 Март 2010 833,55

4 Апрель 2010 759,67

5 Май 2010 738,71

6 Июнь 2010 725,67

7 Июль 2010 799,03

8 Август 2010 797,10

9 Сентябрь 2010 811,67

10 Октябрь 2010 816,77

11 Ноябрь 2010 824,67

12 Декабрь 2010 843,23

13 Январь 2011 837,42

14 Февраль 2011 945,71

15 Март 2011 1153,87

16 Апрель 2011 1130,67

17 Май 2011 959,68

18 Июнь 2011 959,33

19 Июль 2011 942,58

20 Август 2011 1017,74

21 Сентябрь 2011 1345,00

22 Октябрь 2011 1372,90

23 Ноябрь 2011 1531,67

24 Декабрь 2011 1413,55

25 Январь 2012 1330,00

26 Февраль 2012 1067,93

27 Март 2012 1151,29

28 Апрель 2012 1131,67

29 Май 2012 1215,48

30 Июнь 2012 1204,00

Трансформируем временной ряд методом скользящих окон [7], как показано в таблице 2.

Таблица 2

Обучающая выборка ИНС для решения задачи прогнозирования, полученная в результате преобразования временного ряда методом окон

Table 2

Training set ИНС to solve a forecast task.

It was obtained as a result of time series transformation using windows method

№ примера Вход ИНС (x) Выход ИНС (y)

x1 x2 x3 y1

1 834,84 847,86 833,55 759,67

2 847,86 833,55 759,67 738,71

3 833,55 759,67 738,71 725,67

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

Так как число нейронов скрытого слоя, имеющих обратную связь с входным слоем, равно трем, размер входного вектора во время обучения ИНС при запоминании предыдущего выходного сигнала на один шаг назад увеличится на три, при запоминании двух предыдущих выходных сигналов - на шесть. Обозначим входные сигналы обучающей выборки, не изменяющиеся во время трансформации, как {x1, x2, x3}, а сигналы обратной связи - {x4, x5, x6, x7, x8, x9}. В таблице 3 приведена трансформированная обучающая выборка.

На входы {x4, x5, x6} подаются выходные сигналы скрытого слоя с задержкой на один такт {с1-1, c2-1, c3-1}, на входы {x7, x8, x9} - выходные сигналы скрытого слоя с задержкой на два такта {Cf2, c2-2, c3-2}.

Таким образом, обучение рекуррентной ИНС с динамической стековой памятью методом обратного распространения ошибки можно свести к обучению многослойного персептрона [8], трансформируя обучающую выборку. Для реализации предлагаемой методологии обучения рекуррентной ИНС с динамической стековой памятью расширены возможности нейроэмулятора Neuro-NADS [9].

Объектно-ориентированная модель рекуррентной ИНС с динамической стековой памятью представлена на диаграмме классов (рис. 2).

В отличие от класса Layer, который является контейнером для нейронов многослойного пер-септрона, класс LayerMemory содержит память stackOut, реализованную в виде стека предыдущих сигналов слоя. Размер стека задается с помощью свойства stackSize. На схеме (рис. 3) память слоя изображена в виде стека выходных сигналов слоя {y'1, y"2, ..., y"n}, где n - размер стека. Каждая ячейка стека y-i состоит из массива выходов нейронов слоя {y1, y2, ...,yn}. Стек организован так,

133

Программные продукты и системы /Software & Systems

№ 4 (108), 2014

Таблица 3

Добавление в обучающую выборку рекуррентной ИНС выходных сигналов скрытого слоя

Table 3

Adding output signals of a hidden layer to recurrent artificial neural network training set

№ Вход ИНС (x) Выход ИНС (y)

п/п x1 x2 x.3 x4 x5 x6 x7 x8 x9 y1

1 834,84 847,86 833,55 0 0 0 0 0 0 759,67

2 847,86 833,55 759,67 cf1 c/1 c3-1 0 0 0 738,71

3 833,55 759,67 738,71 cf1 c/1 c3-1 cf2 c/2 c3-2 725,67

что после переполнения памяти последняя ячейка yn удаляется, вся очередь сдвигается на одну позицию, так что у1 = y"(i-1).

Спрогнозируем среднемесячную плотность солнечной активности на длине волны 10,7 см на первые шесть месяцев 2012 г. на основе данных за 2010-2011 гг. из таблицы 1. Для этого построим и обучим рекуррентную ИНС с динамической сте-

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

Обучение проведем гибридным алгоритмом [10]. Параметры алгоритма: шаг обучения - 0,3, максимальное количество особей в поколении -10, коэффициент мутации - 0,1. Критерии остановки обучения: среднеквадратическая ошибка -0,001, количество эпох - 1 000.

Один из лучших результатов обучения ИНС представлен на сайте журнала (http://www.swsys. ru/uploaded/image/2014-4-dop/11 .jpg, http://www.

swsys.ru/uploaded/image/2014-4-dop/12jpg). Пока-

затели ошибок прогнозирования временного ряда следующие: среднеквадратическая ошибка (MSE) - 0,00154, средняя абсолютная ошибка на обучающей выборке (MAPE) - 2,6 %, средняя абсолютная ошибка на тестовой выборке (MAPE) -15,5 %, средняя абсолютная ошибка на обучающей выборке (MAE) - 25,21, средняя абсолютная ошибка на тестовой выборке (MAE) - 181,37.

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

Литература

1. Хайкин С. Нейронные сети: полный курс. 2-е изд.; [пер. с англ.]. М.: Вильямс, 2006. 1104 с.

134

Программные продукты и системы /Software & Systems

№ 4 (108), 2014

2. Каллан Р. Основные концепции нейронных сетей; [пер. с англ.]. М.: Вильямс, 2001. 290 с.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3. Бодянский Е.В., Руденко О.Г. Искусственные нейронные сети: архитектуры, обучение, применения. Харьков: Теле-тех, 2004. 369 с.

4. Осовский С. Нейронные сети для обработки информации; [пер. с польск. И.Д. Рудинского]. М.: Финансы и статистика, 2002. 344 с.

5. Тархов Д.А. Нейронные сети. Модели и алгоритмы. Кн. 18. Справ. изд. (Сер. Нейрокомпьютеры и их применение). М.: Радиотехника, 2005. 256 с.

6. Информационно-аналитическая система: данные о

солнечной и геомагнитной активности. URL: http://moveinfo.ru/ data/sun/select (дата обращения: 10.03.2014).

7. Круг П.Г. Нейронные сети и нейрокомпьютеры. М.: Изд-во МЭИ, 2002. 176 с.

8. Галушкин А.И. Нейронные сети: основы теории. М.: Горячая линия-Телеком, 2012. 496 с.

9. Нейроэмулятор NeuroNADS. URL: http://www.service.i-intellect.ru (дата обращения: 10.03.2014).

10. Белявский Г.И., Пучков Е.В., Лила В.Б. Алгоритм и программная реализация гибридного метода обучения искусственных нейронных сетей // Программные продукты и системы. 2012. № 4. С. 96-100.

DOI: 10.15827/0236-235X.108.132-135 Received 10.04.2014

METHODOLOGY OF TRAINING RECURRENT ARTIFICIAL NEURAL NETWORK WITH DYNAMIC STACK MEMORY

(The research has been financially supported by RFBR, project no. 14-01-00579 a)

Lila V.B., Ph.D. (Engineering), Assistant, [email protected];

Puchkov E. V., Ph.D. (Engineering), Associate Professor, [email protected] (Rostov State University of Civil Engineering,

Sotsialisticheskaya St. 162, Rostov-on-Don, 344022, Russian Federation)

Abstract. The work proposes to generalize recurrent artificial neural networks by adding the delay feedback signals of the hidden layer to a few bars in the form of a dynamic stack memory. It allows providing an adaptive memorization of the past time events and creating a flexible tool to create nonlinear models. The proposed universal architecture of a recurrent artificial neural network with dynamic stack memory generalizes such networks as the multilayer perceptron, Jordan and Elman neural networks, as well as neural networks with feedback neurons. The paper presents a training methodology of standard neural network architecture for solving the problem of time series forecasting. It is based on the learning sample transformation. The feedbacks from a hidden layer or outputs of the neural network are eliminated by adding feedback signals to the training set. The opportunities of NeuroNADS neural network emulator have been expanded to implement the proposed methodology of recurrent neural network with dynamic stack memory training. The article presents a new object-oriented model and main software classes of neural network emulator. Based on the data for 2010-2011 there has been predicted the average monthly density of solar activity at a 10,7 cm wavelength for the first six months of 2012. After analyzing it was concluded that the recurrent artificial neural network with dynamic stack memory can be trained using the proposed methodology and the constructed models of artificial neural networks can be used for time series forecasting.

Keywords: recurrent neural networks, multilayer perceptron, Elman neural network, Jordan neural network, feedback, dynamic stack memory, time series forecasting, NeuroNADS.

References

1. Haykin S. Neural Networks: A Comprehensive Foundation. 2nd ed., Prentice-Hall Publ., 1999 (Russ. ed.: Moscow, Vilyams Publ., 2006, 1104 p.).

2. Kallan R. The Essence of Neural Networks. Prentice-Hall Publ., 1998, 248 p. (Russ. ed.: Moscow, Vilyams Publ., 2001,290 p.).

3. Bodyansky E.V., Rudenko O.G. Iskusstvennye neyronnye seti: arkhitektury, obuchenie, primeneniya [Artificial Neural Networks: Architectures, Training, Applications]. Harkov, TELETEKh Publ., 2004, 369 p.

4. Osovsky S. Neyronnye seti dlya obrabotki informatsii [Neural Networks for Information Processing]. Moscow, Finansy i statistika Publ., 2002, 344 p.

5. Tarkhov D.A. Neyronnye seti. Modeli i algoritmy (Seriya "Neyrokompyutery i ikh primenenie") [Neural Networks. Models and Algorithms. Series “Neural Computers and their Application”]. Vol. 18, reference book, Moscow, Radiotekhnika Publ., 2005, 256 p.

6. Informatsionno-analiticheskaya sistema (dannye o solnechnoy i geomagnitnoy aktivnosti) [Information and Analytical System (Solar and Geomagnetic Activity Data)]. Available at: http://moveinfo.ru/data/sun/select (accessed April 7, 2014).

7. Krug P.G. Neyronnye seti i neyrokompyutery [Neural Networks and Neural Computers]. Moscow, MEI Publ., 2002, 176 p.

8. Galushkin A.I. Neyronnye seti: osnovy teorii [Neural Networks: Theoretical Basics]. Moscow, Goryachaya Liniya-Telekom Publ., 2012, 496 p.

9. Neyroemulyator NeuroNADS. Available at: http://www.service.i-intellect.ru (accessed April 7, 2014).

10. Belyavsky G.I., Puchkov E.V., Lila V.B. The algorithm and software implementation of the hybrid training method of artificial neural networks. Programmnye produkty i sistemy [Software & Systems]. Tver, 2012, no. 4, pp. 96-100 (in Russ.).

135

i Надоели баннеры? Вы всегда можете отключить рекламу.