неир01нф0рматика та штелектуальш системи
неИроинформатика
и интеллектуальные системы
neuroinformatics and intelligent systems
УДК 004.032.26
Е. В. Бодянский, Е. А. Викторов
ПРОГНОЗИРОВАНИЕ ВРЕМЕННЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ НА ОСНОВЕ КАСКАДНОЙ ОРТОГОНАЛЬНОЙ НЕЙРОННОЙ СЕТИ
В статье рассматривается новая нетрадиционная нейросетевая архитектура - каскадная ортогональная нейронная сеть, алгоритм ее обучения в пакетном режиме и в режиме реального времени, а также применение этой архитектуры для решения задач прогнозирования и аппроксимации.
ВВЕДЕНИЕ
В настоящее время для решения широкого класса задач, связанных с обработкой информации, заданной в виде временных рядов или массивов числовых данных, порождаемых нестационарными, хаотическими или стохастическими системами, широкое распространение получили искусственные нейронные сети, благодаря своим аппроксимирующим возможностям и способности к обучению. Традиционно под обучением понимается процесс настройки весовых параметров сети в соответствии с той или иной процедурой оптимизации принятого критерия обучения [1, 2].
Улучшить качество получаемого результата можно, настраивая не только синаптические веса, но и архитектуру (количество узлов) самой нейронной сети путем либо увеличения числа нейронов относительно ис-
© Бодянский Е. В., Викторов Е. А., 2008
ходной простой архитектуры - конструктивный подход [3-5], либо путем уменьшения их количества в исходной сложной архитектуре - деструктивный подход [6-8].
С вычислительной точки зрения более привлекательным представляется конструктивный подход, в рамках которого можно выделить каскадные нейронные сети [9-11], наиболее характерным и эффективным представителем которых является Cascade-Correlation Learning Architecture (CasCorLA) [9]. Эти сети, стартуя с простой архитектуры, состоящей из единственного нейрона, в процессе обучения добавляют один за другим новые нейроны, образуя многослойную структуру. При этом в течение каждой эпохи обучения настраивается только один нейрон последнего каскада, все же предыдущие нейроны обрабатывают информацию с «замороженными» весами. Авторы CasCorLA Фальман и Ле-бьер отмечают высокую скорость обучения и хорошие аппроксимирующие свойства этой сети. Вместе с тем, следует отметить, что в качестве узлов в этой архитектуре используются элементарные персептроны Розеб-латта с функциями активации типа гиперболического тангенса так, что выходной сигнал каждого нейрона
нелинейно зависит от синаптических весов. Отсюда следует, что обучение должно производиться на основе дельта-правила и его модификаций, представляющих собой, по сути, градиентные алгоритмы оптимизации. Очевидно, что говорить об оптимизации скорости обучения в этом случае затруднительно. В связи с этим представляется целесообразным синтезировать каскадную архитектуру, использующую такие искусственные нейроны, в которых выходной сигнал будет линейно зависеть от синаптических весов, что позволить оптимизировать скорость обучения и сократить размер обучающей выборки.
1 ОРТО-НЕЙРОН
Среди множества функциональных структур, используемых для аппроксимации нелинейных зависимостей, особого внимания заслуживают ортогональные полиномы [12, 13]. Они обладают весьма привлекательными свойствами как с вычислительной точки зрения и обеспечиваемой ими точности, так и с точки зрения нейросетевой реализации [14-21].
При этом элементарная одномерная система, описываемая в пространстве «вход - выход» некоторой неизвестной функциональной зависимости у(х) со сколь угодно высокой точностью, может быть представлена следующей суммой:
у = Дх) = ж0ф0(х) + ф1( х) + ... + шк фн (х) =
= ¿®;Ф;( х), (1)
/ = о
где х и у(х) - входные и выходная переменные оцениваемого процесса, ф/(х) - ортогональный полином /-го порядка (/ = 0, 1, 2, ..., Н), /, д - неотрицательные целые числа, к =1, 2, ..., N - дискретное время или порядковый номер элемента в выборке.
Выражение (1) может быть представлено с помощью элементарной схемы, приведенной на рис. 1 и названной нами орто-синапс.
На рис. 1 хг - г-я компонента (г =1, 2, ..., п) сигна-т
ла х = (х1,х2, ...,хп) , Ш:; (/ = 1, 2, ..., Н) - синапти-
ческие веса, подлежащие определению, (;(х;) - выходной сигнал орто-синапса, который может быть записан следующим образом:
!г(хг) = X Ш/г%г(хг).
/ = о
(2)
Различные системы ортогональных полиномов могут быть использованы в качестве активационных функций в орто-синапсах. Выбор системы ортогональных полиномов зависит от специфики решаемой задачи. Если входные данные нормализированы на гиперкуб [-1, 1]п, целесообразным представляется использовать систему ортогональных полиномов Лежандра, ортогональных на интервале [-1, 1] с весом у( х) = 1:
(х.) = 2-/[х2](-1)р_( 2/-2р) !_х/-2р (3)
(х;) 2 (1) р!(/-Р)!/-2р)!хг . (3) р = 0
:г
Также для упрощения вычислений может быть использована рекуррентная формула:
Ф/ +1, г (хг) //+ 1 хгр/ (хг) - / + 1р/ -1 (хг).
(4)
Система ортогональных полиномов Лежандра лучше всего подходит в том случае, когда до построения нейромодели нам известен интервал, в котором изменяются данные. В ином случае может быть использована система ортогональных полиномов Эрмита:
[1/2] р (2 и) И1(и) = I! X (-1р)
р=1
(5)
р!(I - 2р)!
Эта система ортогональна на интервале (-ю, +<») с весовой функцией Н (и) = е и дает возможность уменьшить влияние на результат точек, лежащих далеко от начала координат.
Также несложно заметить, что орто-синапс имеет идентичную архитектуру с нелинейным синапсом нео-фаззи-нейрона [22-24], однако реализует более гладкое полиномиальное приближение с помощью ортогональных полиномов, вместо кусочно-линейной аппроксимации.
Мы использовали орто-синапс в качестве строительного блока для архитектуры, названной нами орто-нейроном и приведенной на рис. 2.
Орто-нейрон имеет такую же архитектуру, как и нео-фаззи-нейрон, реализуя отображение
Рисунок 1 - Орто-синапс - ОБ
п п Н
У = X !г(хг) = XX Ш/гФ/г(хг), г -1 г = 1 / = 0
(6)
I
Рисунок 2 - Орто-нейрон - ON
и позволяет добиться высокой точности аппроксимации и экстраполяции существенно нелинейных сигналов и процессов [16, 17, 19-21, 25]. Однако, как будет показано далее, орто-нейрон будет использован нами в качестве элементарного узла в архитектуре, названной каскадная ортогональная нейронная сеть (CONN -Cascade Orthogonal Neural Network).
2 КАСКАДНАЯ ОРТОГОНАЛЬНАЯ НЕЙРОННАЯ СЕТЬ
Архитектура каскадной ортогональной нейронной сети приведена на рис. 3.
Представленная конструкция реализует отображение следующего вида:
- нейрон первого каскада
h
[ 11
y 1 = = х I wji фл(xi); i = 1 j = 0
нейрон второго каскада
[ 21
У 2 = = II wji M Xi
i = 1 j = 0
+ I j+n+1( y 1);
j = 0
нейрон третьего каскада
[31
У 3 = = II wji 9ji( xi) + i = 1 j = 0
h [ 31
+ I wj, n + 1Фу, n + 1 (y 1) + j = 0
h [ 31 (" )
+ I wj, n + 2Фj, n + 2(У2) ; j = 0
(7)
(8)
(9)
Рисунок 3 - Каскадная ортогональная нейронная сеть
нейрон т-го каскада
вычисляется вектор синаптических весов
Ут = = I I тл Ф;ч(X) +
г = 1 ] = 0
п + т - 1 Н г ]
+ II 1 Ф;/(УI - п),
г = п + 1 ] = 0
(10)
(
т1 Ц(М) =
N
у
I Фг 1]( к)Ф[ 1]Т( к)
к = 1
N
I ФГ 1](к)у(к)
к = 1
= Р11](N) I фГ 1](к)у(к).
к = 1
(13)
где Ут - выход т-го каскада нейронной сети; т
]1
1-й
синаптический весовой коэффициент в г-м орто-синап-се орто-нейрона т-го каскада; фц - ортогональный полином г-го порядка в у-м орто-синапсе; Н - количество ортогональных полиномов в орто-синапсах, по которым происходит разложение входных сигналов; п -количество орто-синапсов в ортонейроне первого каскада; (п + т - 1) - количество орто-синапсов в орто-нейроне т-го каскада.
Каскадная ортогональная нейронная сеть содержит
(Н + 1)
п + т - 1
П + I '
I = п + 1
V
настраиваемых параметров и, что
очень важно, все они линейно входят в описание (10).
Вводя далее вектор ортогональных полиномов (Н + 1)(п + т - 1) х 1 т-го орто-нейрона фГт] = (Ф01 (Х1),
Ф11(х1 Х-'Ф« (х1 X Ф02(х2)'-' ФН2(х2)' •••'Ф;г(хг Х-'
ФНп(хп), Ф0,п +1 (у 1), • • -'ФН,п + 1 (у 1), • • •' Фн, п + т -1 (ут - 1) )Т и соответствующий ему вектор синаптических весов
Г т] , Г т] Г т ] Г т] Г™П Г™П Г™П
т = (т01 , т11 , тН1
у02 '•••' тН2 '•' т1
Г т] Г т] Гт
тНп ' т0, п + 1'-' тН,
Г т]
-1' тН, п + т -
1) той же размерности, можно представить (10) в более компактной форме:
У т
Гт] Т Гт] = т Ф .
(11)
3 ОБУЧЕНИЕ КАСКАДНОЙ ОРТОГОНАЛЬНОЙ НЕЙРОННОЙ СЕТИ
Обучение каскадной нейронной сети производится в пакетном режиме с использованием всех элементов обучающей выборки х(1), у(1); х(2), у(2); ...; х(к), у(к);...; x(N), y(N). Сначала вычисляется набор значений ортогональных функций фГ 1]( 1), фГ1 ](2), ..., ФГ 1](N) для каждого образа из обучающей выборки, после чего путем прямой минимизации критерия обучения
£[1 ] = 1
N
N
2 I *1(к)2 = 2 I(У (к) - У 1(к))2, (12)
Если размер обучающей выборки достаточно велик, удобнее использовать процедуру (13) в форме рекуррентного метода наименьших квадратов с последовательной обработкой элементов обучающей выборки:
т[1]( к + 1) = тГ 1]( к) + + Р[1] (к )(у( к + 1) - тГ 1 ] Т( к )фГ 1 ] (к + 1) ) фГ 1]( к + 1), 1 + фГ1] Т( к + 1 )Р[ 1]( к)фГ1]( к + 1) РГ 1](к + 1) = Р[ 1](к) - (14)
- РГ1 ] (к )ф Г 1]( к + 1 )ф Г 1] Т(к + 1 )Р[1 ] (к) 1 + фГ 1] Т (к + 1 )Р[ 1]( к )фГ1 ](к + 1)
Необходимо отметить, что использование процедур (13), (14) позволяет существенно сократить время необходимое для настройки весовых коэффициентов, по сравнению с градиентными алгоритмами, в основе которых лежит дельта-правило. Также ортогональность активационных функций обеспечивает численную устойчивость в процессе обращения матриц.
После завершения обучения первого каскада сети, синаптические веса орто-нейрона ОЫ «замораживаются», и генерируется второй каскад, состоящий из орто-нейрона О^, содержащего один дополнительный вход для выходного сигнала предыдущего каскада. Затем процедуры (13), (14) снова применяются для настройки вектора весовых коэффициентов тГ 2], который имеет размерность (Н + 1)(п + 1) х 1.
Процесс роста нейронной сети (увеличения количества каскадов) продолжается до тех пор, пока не будет получена требуемая точность рассматриваемой задачи. При этом, для оценки весовых коэффициентов последнего т-го каскада используются следующие выражения:
т
N
Г т] Т
!<гчкк) к)у(к)
к = 1
N
к = 1
N
= N I ф1 т(к)у(к) к=1
(15)
к=1
к=1
или
W m]( k + 1) = w[m]( k) +
+
Plm] ( k) (y (k + 1) - w[m] T (k ) ф[т]( k + 1 )) ф[ m]( k + 1 + ф[m] T( k + 1 )P[ m]( k )ф[m]( k + 1)
Pm ( k + 1) = Pm ( k ) -- P[m] ( k) ф [ m] (k + 1) ф[ m] T(k + 1 )P[ m] ( k) 1 + фМ T (k + 1 )P[ m] ( k)ф [ m ] ( k + 1) '
(16)
Основным недостатком Са8СогЬА является возможность обучения только в пакетном режиме, когда вся обучающая выборка задана априорно. Благодаря максимально возможной (квадратичной) скорости сходимости алгоритма (16), каскадная ортогональная нейронная сеть может обучаться и в реальном режиме времени. При этом сразу формируется архитектура, состоящая из т каскадов, каждый из которых обучается с помощью собственного алгоритма. Поскольку для т-го каскада дополнительными входами являются выходы предыдущих орто-нейронов, алгоритм (7) фактически реализует рекуррентный метод ошибки прогноза [26], получивший широкое распространение в теории адаптивной идентификации. Изменение числа каскадов в процессе обучения также не представляет никаких трудностей.
4 РЕЗУЛЬТАТЫ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ
При апробации предложенной архитектуры в качестве тестовой решалась задача прогнозирования временного ряда Мэки - Гласса. Этот ряд представляет собой хаотическую, детерминированную последовательность, определяемую следующим дифференциальным уравнением:
y'(t) = 0 2 У - т ) - 0,1 y (t).
1 + y (t - т)
(17)
Квантование сигнала было проведено с шагом 0,1. Под обучающую выборку был отведен участок сигнала, содержащий 500 элементов. Целью являлось про-
гнозирование сигнала на шесть шагов вперед по его предыстории: значениям элементов в моменты времени к, (к - 6), (к - 12) и (к - 18). Тестовая выборка содержала 9500 элементов последовательности - значения сигнала с 501 до 10000.
Для оценки полученного прогноза использовалась среднеквадратическая ошибка (18)
MSE( k, N) =
N
q = 1
N
(18)
Перед тем, как начинать обучение каскадной ортогональной нейронной сети необходимо определить три опциональных параметра: 1) тип системы ортогональных полиномов в каждом орто-синапсе; 2) количество ортогональных полиномов в каждом орто-синапсе; 3) максимальное количество каскадов. Поскольку входные данные были нормализированы на интервал [-1 1], нами использовалась система ортогональных полиномов Чебышева 1-го рода, что позволило избежать неограниченного роста весовых коэффициентов с увеличением количества каскадов. Основываясь на результатах предыдущих экспериментов, в орто-синапсах использовалось по 3-5 полиномов. А также, для того чтобы предотвратить потерю возможности обобщения сетью, количество каскадов было ограничено до 10.
Результаты прогнозирования временного ряда Мэки -Гласса приведены в табл. 1. Для сравнения эта же задача решалась при помощи Cascade-Correlation Learning Architecture и традиционного многослойного пер-септрона (MLP), который имел архитектуру 4-7-1 и обучался по алгоритму Левенберга - Марквардта в течение 100 эпох.
Как показывают результаты, каскадная ортогональная сеть предоставляет хорошее качество аппроксимации и прогнозирования существенно нелинейных процессов. Полученная ошибка прогнозирования сравнима с ошибкой, даваемой многослойным персептроном, и намного меньше, чем ошибка CasCorLA. При этом необходимо отметить, что процедура обучения каскадной
Таблица 1 - Ошибки при прогнозировании ряда Мэки - Гласса
Архитектура ИНС Ошибка на обуч. выборке / Номер каскада Ошибка на тест. выборке
1 2 3 4 5 6 7 8 9 10
CONN 0,0005 0,0003 0,0003 0,0002 0,0002 0,0002 0,0002 0,0002 0,0002 0,0002 0,0003
CasCorLA 0,11 0,1 0,098 0,095 0,092 0,089 0,088 0,084 0,083 0,083 0,055
MLP Ошибка на обучающей выборке / Номер эпохи Ошибка на тест. выборке
4 8 12 16 20 24 28 32 36 40
0,8 0,3 0,09 0,06 0,04 0,03 0,01 0,003 0,001 0,0009 0,0006
2
e
q
ортогональной нейронной сети требует значительно меньше времени и вычислительных ресурсов, чем обратное распространение ошибки или процедура Левен-берга - Марквардта. Также, используя каскадную ортогональную нейронную сеть, удается избежать двух существенных недостатков, свойственных CasCorLA и многослойному персептрону: неповторимости полученных результатов и использование нелинейных процедур обучения.
ЗАКЛЮЧЕНИЕ
В статье предложена каскадная ортогональная нейронная сеть, отличающаяся от своего прототипа - Cascade-Correlation Learning Architecture - повышенным быстродействием и точностью, численной устойчивостью и возможностью обработки данных в реальном времени по мере поступления новой информации. Теоретическое обоснование и результаты экспериментов подтверждают эффективность развиваемого подхода к синтезу каскадных нейронных сетей.
ПЕРЕЧЕНЬ ССЫЛОК
1. Cichocki A. Neural Networks for Optimization and Signal Processing / A. Cichocki, R. Unbehanen. - Stuttgart.: Teubner, 1993. - 544 p.
2. Haykin S. Neural Networks: A Comprehensive Foundation / S. Haykin. - Upper Saddle River, N. J.: Prentice Hall. -1999. - 864 p.
3. Platt J. A resource allocating network for function interpolation / J. Platt // Neural Computation. - 1991. - 3. - P. 213-225.
4. Nag A. Flexible resource allocating network for noisy data / A. Nag, J. Ghosh // Proc. SPIE Conf. on Applications and Science of Computational Intelligence. - 1998. -P. 551-559.
5. Yingwei L. Performance evaluation of a sequential minimal radial basis function (RBF) neural network learning algorithm / L. Yingwei, N. Sundararajan, P. Saratchan-dran // IEEE Trans. on Neural Networks. - 1998. - 9. -P. 308-318.
6. Cun Y. L. Optimal brain damage / Y.L. Cun, J.S. Denker, S.A. Solla // Advances in Neural Information Processing Systems. - San Mateo, CA: Morgan Kaufman, 1990. -2. - P. 598-605.
7. Hassibi B. Second-order derivatives for network pruning: Optimal brain surgeon / B. Hassibi, D.G. Stork // Advances in Neural Information Processing Systems. Ed. Hanson et al. - San Mateo, CA: Morgan Kaufman, 1993. - P. 551-559.
8. Prechelt L. Connection pruning with static and adaptive pruning schedules / L. Prechelt // Neurocomputing. -1997. - 16. - P. 49-61.
9. Fahlman S. E. The cascade-correlation learning architecture / S. E. Fahlman, C. Lebiere // Advances in Neural Information Processing Systems. Ed. D. S. Touretzky. -San Mateo, CA: Morgan Kaufman, 1990. - P. 524-532.
10. Schalkoff R. J. Artificial Neural Networks / R. J. Schalkoff. - N.Y.: The McGraw-Hill Comp., 1997. - 528 p.
11. Аведьян Э. Ä. Каскадные нейронные сети / Э. Д. Аве-дьян, Г. В. Баркан, И. К. Левин // Автоматика и телемеханика. - 1999. - № 3. - С. 38-55.
12. Bateman H., Erdelyi A. Higher Transcendental Functions. Vol. 2. / H. Bateman, A. Erdelyi. - N. Y.: The McGraw-Hill Comp. - 1953. - 396 p.
13. Graupe D. Identification of Systems / D. Graupe. - Huntington, N.Y.: Robert E. Kreiger Publishing Comp. - 1976. - 276 p.
14. Scott I., Mulgrew B. Orthonormal function neural network for nonlinear system modeling / I. Scott, B. Mulgrew // Proceedings of the International Conference on Neural Networks. - 1996. - Vol. 4. - P. 1847-1852.
15. Patra J. C. Nonlinear dynamic system identification using Chebyshev functional link artificial neural network / J. C. Patra, A. C. Kot // IEEE Trans. on System, Man and Cybernetics. - 2002. - 32. Part B. - P. 505-511.
16. Bodyanskiy Ye. Artificial neural network with orthogonal activation functions for dynamic system identification / Ye. Bodyanskiy, V. Kolodyazhniy, O. Slipchenko // Synergies between Information Processing and Automation. Ed. O. Sawodny and P. Scharff - Aachen: Shaker Verlag. -2004. - P. 24-30.
17. Bodyanskiy Ye. Structural and synaptic adaptation in the artificial neural networks with orthogonal activation functions / Ye. Bodyanskiy, V. Kolodyazhniy, O. Slipchenko // Sci. Proc. of Riga Technical University. Comp. Sci., Inf. Technology and Management Sci. - 2004. - 20. -P. 69-76.
18. Liying M. Constructive feedforward neural network using Hermite polynomial activation functions / M. Liying, K. Kho-rasani // IEEE Trans. on Neural Networks. - 2005. - 4. -P. 821-833.
19. Bodyanskiy Ye. Growing neural networks based on orthogonal activation functions / Ye. Bodyanskiy, I. Pliss, O. Slipchenko // Proc. XII-th Int. Conf. "Knowledge - Dialog - Solution". - Varna, 2006. - P. 84-89.
20. Bodyanskiy Ye. Ontogenic neural networks using orthogonal activation functions / Ye. Bodyanskiy, O. Slipchenko / / Prace naukowe Akademii Ekonomicznej we Wroclawiu. -2006. - 21. - P. 13-20.
21. Bodyanskiy Ye. Growing neural network using nonconven-tional activation functions / Ye. Bodyanskiy, I. Pliss, O. Slipchenko // Int. J. Information Theories & Applications. - 2007. - 14. - P. 275-281.
22. Бодянский E. В. Ортосинапс, ортонейроны и нейропре-диктор на их основе / Е. В. Бодянский, Е. А. Викторов, А. Н. Слипченко // Системи обробки ¡нформацп. -X.: ХУПС, 2007. - Вип. 4(62). - С. 139-143.
23. Yamakawa T. A neo fuzzy neuron and its applications to system identification and prediction of the system behavior / T. Yamakawa, E. Uchino, T. Miki, H. Kusanagi // Proc. 2-nd Int. Conf. on Fuzzy Logic and Neural Networks (LIZUKA-92). - Lizuka, 1992. - P. 477-483.
24. Uchino E. Soft computing based signal prediction, restoration and filtering / E. Uchino, T. Yamakawa // Intelligent Hybrid Systems: Fuzzy Logic, Neural Networks and Genetic Algorithms. Ed. Da Ruan. - Boston: Kluwer Academic Publisher. - 1997. - P. 331-349.
25. Miki T. Analog implementation of neo-fuzzy neuron and its on-board learning / T. Miki, T. Yamakawa // Computational Intelligence and Applications. Ed. N.E. Mastorakis. -Piraeus: WSES Press. - 1999. - P. 144-149.
26. Льюнг Л. Идентификация систем. Теория для пользователя / Л. Льюнг; пер. с англ. Под ред. Я. 3. Цыпкина. -М.: Наука, 1991. - 432 с.
Надшшла 14.04.2008
У cmammi розглянуто нову нетрадицшну нейроме-режеву apximeumypy - каскадну ортогональну нейронну мережу, aлгоpиmм 'i'i навчання у naкеmномy pежимi i в ре-жимi реального часу, а maкож зacmоcyвaння щеЧ архi-mекmypи для вирШення задач прогнозування й апрокси-мацИ.
In the article new non-conventional architecture called Cascade Orthogonal Neural Network is considered. Learning algorithms which can operate in batch or real-time mode are given. Also application of this architecture for solving forecasting and approximation problems is proposed.