ISSN 0868-5886
НАУЧНОЕ ПРИБОРОСТРОЕНИЕ, 2012, том 22, № 3, с. 107-113 ТЕОРЕТИЧЕСКИЕ ИССЛЕДОВАНИЯ =
УДК 681.51; 621.391; 519.21
© А. В. Меркушева, Г. Ф. Малыхина
НЕЙРОННАЯ СЕТЬ С МНОЖЕСТВЕННОЙ РЕКУРРЕНТНОЙ СТРУКТУРОЙ
Рассмотрены структура и процедура обучения рекуррентной нейронной сети (НС) с множественной обратной связью, сгруппированной в нескольких слоях сети. Особенность ее сравнительно с простой рекуррентной искусственной НС (ИНС) состоит в том, что временные соотношения обеспечиваются нейронами, которые сгруппированы в трех слоях обратной связи, что увеличивает возможности ИНС. Обратные связи обеспечивают локальную и общую формы рекуррентности через нелинейные обрабатывающие элементы. В слоях обратной связи взвешенные суммы задержанных выходов скрытого и выходного слоев подаются через определенные активационные функции (и настраиваемые веса) на нейроны с прямым распространением сигнала. Показаны процедуры обучения ИНС (включая обучение в реальном времени), основанные на алгоритме обратного распространения во времени. Для рекуррентной НС с множественной обратной связью (РНС_МОС) построена "присоединенная" модель ИНС, уменьшающая вычислительную нагрузку построения алгоритма обучения ИНС.
Кл. сл.: нейросеть, модель, структуры, локальность, рекуррентность, обучение РВ, чувствительность
ВВЕДЕНИЕ
В технических приложениях часто возникает задача определения характеристик динамического объекта по результатам измерения его выходных параметров, косвенно связанных с параметрами, характеризующими текущее состояние динамического объекта. К задачам такого типа относятся следующие: косвенное измерение тяги газотурбинного двигателя по ряду его параметров, доступных для измерения; измерение параметров состояния аэродинамических элементов самолета по результатам измерения параметров гидросистемы и другие задачи, решаемые в системах технического диагностирования [1, 2]. Аналогичную задачу решает медико-техническая система для неин-вазивного измерения содержания глюкозы в крови человека по данным измерения параметров кожно-мышечной проводимости [3].
Моделью объекта измерения в этих случаях является нелинейная динамическая система, представленная в терминах пространства состояний. Задача измерения, как правило, характеризуется отсутствием необходимых датчиков для измерения полного набора параметров, характеризующих состояние объекта измерения, или невозможностью использовать достаточное множество датчиков в измерительной системе, если она предназначена для использования в целях диагностики. Поэтому в процессе измерения целесообразно выполнять моделирование измеряемого объекта как
нелинейной динамической системы, имеющей в общем случае сложные взаимосвязи между параметрами. Для выполнения моделирования в процессе измерения лучше всего подходят искусственные нейронные сети (ИНС).
ИНС имеют способность к обучению, адаптации и дают возможность использовать большое разнообразие нелинейных элементов. Поэтому ИНС используют в информационно-измерительных и управляющих системах для решения задач измерения и управления сложными нелинейными объектами, в том числе с неизвестной структурой. В этих областях другие методы не дают удовлетворительного результата [5-9]. Применяемые для решения задачи измерения ИНС можно классифицировать, как временные сети с линией задержек на входе и с распространением сигнала вперед и динамические (рекуррентные) сети.
Рекуррентные нейронные сети (РНС) включают динамические элементы в форме обратных связей, которые обеспечивают их способность мощного динамического отображения. РНС обладает способностью обучаться динамике системы без знания ее структуры (без знания числа задержанных входов и выходов). Она может реализовать многошаговое предсказание вперед, т. е. модели прогнозирования, которые требуются в приложениях по управлению некоторыми процессами [10]. Достаточно хорошо изучены такие разновидности РНС, как ИНС Хопфилда, Элмана, Джордана [4], полностью рекуррентная ИНС [11], локально ре-
куррентная РНС [12, 13], нейроны с памятью [14], РНС с радиальными базисными функциями [15], РНС с блочной структурой [16]. Наиболее близка к анализируемой ниже РНС с множественными обратными связями работа ИНС, предложенная в работе [16].1-1
В статье представлены архитектура и процедуры обучения рекуррентной ИНС с множественными обратными связями (РНС_МОС). Основное отличие структуры этой ИНС с множественными обратными связями от других РНС состоит в том, что динамические свойства сети представлены слоями обратной связи (ОС). Сигналы ОС обрабатываются в трех слоях, которые содержат нелинейные активационные функции. В слоях ОС задержанные и соответствующим образом взвешенные выходы скрытого и выходного слоев передаются через активационные функции на нейроны с прямым распространением сигнала. Использование такой структуры расширяет способность ИНС представлять процессы в динамических системах.
В процедуре обучения ИНС (в том числе обучения в реальном времени (РВ)) используется алгоритм обратного распространения во времени (А_ОРВ) [17]. Для того чтобы использовать подобную процедуру обучения, построена "присоединенная" модель РНС_МОС. Модель служит для вычисления производных по весам ИНС, которые используются для цели обучения. Поскольку обучение не в РВ не обеспечивает достаточной адаптации ИНС к изменениям ДС, анализируется вывод процедуры обучения в РВ. В этой процедуре подстройка весов ИНС выполняется по определенному массиву данных вход-выход, хранящемуся в стеке. На каждом временном шаге стек сбрасывает наиболее старый элемент и принимает новый элемент от ДС. Поэтому стек содержит достаточно данных, чтобы представлять поведение ДС, и освобождается от слишком старых данных, адаптируясь к изменениям динамики системы на каждом временном шаге. Производные для весов РНС_МОС вычисляются по типу усеченного А_ОРВ таким способом, который дает такой же результат, как и развертка во времени через стек. Для настройки весов РНС_МОС используется метод Левенберга—Маркварта с доверительной областью. Функционирование ИНС при обучении, адаптации и обобщении проверены на нескольких
1) Поскольку выход динамической системы (ДС) является функцией прошлых выходов и прошлых входов, то чтобы использовать СНС для идентификации нелинейной ДС необходимо прошлые выходы и прошлые входы ДС подавать на СНС явным образом и число задержанных входов и выходов должны быть заранее известны. Но задача использования входа с длительной дозированной задержкой приводит к тому, что называется "проклятием размерности" [10].
прикладных задачах, включая предсказание хаотических временных рядов и идентификацию нелинейной ДС.
РЕКУРРЕНТНАЯ НЕЙРОННАЯ СЕТЬ С МНОЖЕСТВЕННЫМИ ОБРАТНЫМИ СВЯЗЯМИ
Структура
Архитектура РНС_МОС показана на рис. 1, где х(£) и у(к) представляют вход и выход ИНС, а k — временной индекс. ИНС имеет по три слоя с прямым распространением (ПР) и обратным распространением (ОР) сигнала соответственно. В слое с прямым распространением Wl и W2 представляют веса между входом и скрытым слоем и скрытым слоем и выходным слоем соответственно. Дополнительно к слоям ПР РНС_МОС имеет два локальных и один глобальный слои ОР. В этих слоях ОР взвешенные суммы задержанных выходов скрытого и выходного слоев поступают на определенные активационные функции нейронов слоя ПР. W1£:, W2c и W3c представляют веса связи, связанные с входами нейронов слоя ОР, а z-представляет оператор временной задержки. Выходы нейронов слоя ОР ( ^ ^), ус ^) и zс ^)) приложены к нейронам скрытого и выходного слоев через подстраиваемые веса (W1£:, W2c и W3£:). (Связи смещения (В) на нейроны не показаны на рис. 1 для простоты представления структуры ИНС).
x(k )
Рис. 1. Нейронная сеть с множественной рекуррентной структурой
-ы
ж
"1-1
£
б
Рис. 2. Обучение РНС_МОС. а — двухслойная сеть, б — присоединенная модель двухслойной сети
♦М)
в2
1
Вз" ' 1
а
Обучение РНС_МОС
Для обучения рекуррентной ИНС методом, подобным А_ОРВ, требуется вычисление производных. Однако вычисление производных с использованием правила цепочки или разворачивания структуры ИНС по времени достаточно сложно. Поэтому оказывается целесообразным построение присоединенной модели РНС_МОС (рис.2, б), использование которой значительно облегчает вычисление производных. Модель сконструирована путем обращения направления ветвей ИНС, заменой суммирующих сопряжений точками ветвления и заменой операторов временной задержки (2-1) на операторы упреждения (2+1). Поскольку веса обновляются методом Левенберга—Маркварта, требуется вычисление якобиана. С помощью присоединенной модели (ПМ) якобиан (матрица Якоби) для выходов РНС_МОС вычисляется путем подачи 1 (в ПМ) вместо соответствующей величины ошибки е и подачи нуля — для других выходов ПМ.
Поэтому после завершения прямой фазы вычислений обратная фаза вычислений выполняется с помощью присоединенной модели РНС_МОС
при временной последовательности от k = Т до k = 1. Причем, когда прямая и обратная фазы вычисления завершены, чувствительности для каждого веса, которые образуют якобиан, получаются, как в обычном А_ОРВ.
Таким образом, как отмечено выше, элементы матрицы якобиана вычисляются в два этапа, которые условно названы соответственно прямой и обратной фазой. На прямой фазе вычисляются действия РНС_МОС, и они сохраняются вдоль траектории от k = 1 до k = Т. Величина вектора ошибки на каждом шаге k определяется, как разность желаемого и фактического выходов ИНС. Начальные величины для выхода скрытого слоя ф) и выходного слоя (у) устанавливаются в 0: М0) = 0 ; у(0) = 0 .
Образуемые локальные напряжения у(к), производимые на входе активационных функций нейронов обратной связи, определяются выражениями
^(^ = да^ -1)]+вb, у;^) = -1)]+в22, у; ^) = ^ y(k -1)]+вь,
где W1i, W2i, Wзi — входные веса слоев ОР; В^, В2, В3 — смещения нейронов слоя ОР. При этом выходы нейронов слоя ОР (V, у; zc) определяются соотношениями
V (к) = р; (уй (к)), У; (к) = р; (у; (к)), zc (к) = р; (у; (к)),
(1)
где рС;, рсу, р; представляют активационные
функции нейронов слоя ОР. Сетевые величины (уЙ) для нейронов скрытого слоя и их выходы (V) вычисляются по соотношениям
уй (к) = [WlX(k)]+(k)]+У; (k)]+В1, h(k) = р ( уй (k)).
(2)
У ; (k ) = [W2h(k )] + ^ Z; (k )] + В2,
У(k) = (у ( У у (k)),
(3)
должны быть вычислены веса в присоединенной модели.
После завершения прямой фазы вычислений у, выполняются вычисления для обратной фазы вычисления, которые реализуются на основе присоединенной модели РНС_МОС и проводятся, начиная от k = Т и продолжая до k = 1. Локальные чувствительности при k = Т + 1 устанавливаются в 0:
83(Т +1) = 0, 82(Т +1) = 0, 8; (Т +1) = 0.
Производные активационных функций каждого слоя относительно их входных СВ вычисляются с использованием следующих выражений:
р;/ (у; (k)) =
Р (у(к))
В соотношениях (2) (и на рис. 2) использованы дополнительные обозначения: Wl — матрица весов, передающая у от нейронов входного слоя к нейронам скрытого слоя; В1 — смещения для нейронов в скрытом слое; W1c и W; — выходные веса слоев обратной связи; рк — активационные функции нейронов скрытого слоя.
Аналогичным образом сетевые величины (у;) нейронов выходного слоя и выходы (у) этих нейронов определяются соотношениями
ду(к )
у=у; (к)
/,. ^ч _дР ( У(к ))
рс: (у; (к))=-
ду(к)
Р;' (уй (к))
дСу(к)
/ ( (к)) Р (У(к)) ру(у у(к))=^У(кГ
д( (у(к))
у=у ; (к)
у=УЙ (к)
(4)
РЙ (Уй (к)) =
ду(к)
У=У4 (к)
где W2, В2 и фу представляют веса между скрытым и выходным слоями (W2); смещения, приложенные к нейронам выходного слоя (В2); и активационные функции выходного слоя (ф;). W3c представляет матрицу весов выхода слоя обратной связи. Сигнал ошибки (е) определен как разность выхода РНС_МОС (у) и желаемого выхода (у^), т. е. выполняется соотношение е(к) = (у(к) - у^(к)). Поэтому при определении мгновенной величины энергии сигнала ошибки в виде выражения Е(к) = (1/2)(ет(к)е(к)) функция стоимости, которая служит мерой уровня текущего функционирования ИНС, имеет вид
1 т
ЕобЩ.= ТIЕ (к).
Т к=1
Веса ИНС настраиваются так, чтобы минимизировать функцию стоимости (ФС). Поэтому необходимо предварительно определить чувствительность ФС относительно изменения каждого из весов. На к-м временном шаге (при любом к) чувствительность для каждого веса вычисляется путем умножения входа этого веса в РНС_МОС на него же в присоединенной модели. Так что
Использование соотношений (4) позволяет получить локальные чувствительности РНС_МОС:
Ь2(к) = ( (У у (к))] X
х[е(к) + (()т 52(к +1)) + ((Wзb )т 83(к +1))], 81 (к) = [рЙ (у й (к))] х
х[( (Wlb )т 81(к +1)) + (()т 82(к))], (5)
83(к) = [р;/ (у; (к))] • [(Wзc)т 82(к)],
82(к) = [р;/ (у; (к))] •[( )т 81 (к)], 81(к) = [р/ (уй (к))] • [(81 (к)].
В случае вычисления матрицы Якоби (так называемого якобиана) вектор е(к) в первом выражении в (5) полагается равным единичному, т. е. е(к) = 1. Тогда чувствительность для каждого веса вычисляется путем умножения величин, масштабированных этим весом в РНС_МОС и присоединенной модели, с использованием выражений:
у=У; (к)
¿вд
= 52(k )hT(k),
¿ВД
оВ,
= Ь2(?),
^ = ВДх^), ^ =
0е(?)
0Wí
= 82(?Кт(?)
ов1
сТ(^\ 0е(?1 = (^Д/
С^? 3
- = 83(? )у т(? -1),
0е(?)
= 81(? т(?), = )hт(k -1),
Се(?) Се(?)
ов3
- «*).
= ),
Се(?)
ов2
- ),
Общая чувствительность для каждого веса ИНС получается суммированием относительных чувствительностей в (6) по соответствующей временной траектории. (Т. е. для разных временных моментов: при ПР от ? = 1 до ? = Т + 1, а при ОР от ? = Т + 1 до ? = 1). Якобиан J, который требуется для обучения РНС_МОС, выражается соотношением (7).
- 82(?)У т(? -1), (6)
5е 5е
5е
5е
с^ оВ1 Щь
5е 5е 5е 5е
0В ?
0W2 0В2
5е
0W2c дЩ2?
5е 5е
ов 2
5е 5е
0W3c 0W3i ов ?
(7)
Вектор градиента g получается из якобиана (Л) в соответствии с выражением g = Jтe. Вектор веса w нейронной сети выражается в виде соотношения
w - [W1, В1, , , В?,
W2, В2, W2c, W2i, В2, W3c, W3i, В3].
Изменение вектора веса на п-й итерации Aw п определяется по методу оптимизации Левен-берга—Маркварта
(ЛтJ + ¡и I)Aw --Jте ,
У п п "п ' п п п '
где цп - 0 — скаляр, а I — единичная матрица. Для достаточно большой величины ц„ матрица (ат а„ + ипI) — положительно определенная и Aw п является направлением спуска. Когда ип - 0, Aw п является вектором Гаусса—Ньютона. Когда цп ^ да, слагаемое цп I доминирует, так что Awп ¡и-1 атеп представляет чрезвычайно малый шаг в направлении крутого спуска. Для определения ц может быть использован метод Флетчера с доверительной областью [Химмельблау].
Структура алгоритма обучения в реальном времени (РВ)
Процедура обучения РНС_МОС в РВ предусматривает сохранение обучающих образцов за
небольшой интервал времени, которые помещаются в так называемом стеке2) определенного размера (Е). На каждом временном шаге стек покидает самый старый образец и в то же время стек принимает новый обучающий образец от ДС. Поэтому стек должен иметь подходящий размер, чтобы содержать достаточно данных, представляющих динамику системы, и освобождаться от слишком старых данных, адаптируясь к изменениям динамики системы на каждом временном шаге. Чувствительность весов РНС_МОС вычисляется методом развертывания ИНС во времени посредством стека. Обучение в РВ выполняется с использованием всех образцов, хранимых в стеке на каждом временном шаге, методом Левенберга— Маркварта с доверительной областью.
Обучение РНС_МОС выполняется подстройкой вектора весов w на каждом временном шаге wk+l = wk + Awk. Функция стоимости на каждом временном шаге определена соотношением
1 Е-1
Е - — Х{[У(? - т) - у р - т)]т х
2Е т-0
х[у(? - т) - у р- т)]},
где Е — размер стека, который определяет длину
2) Здесь и далее авторы применяют термин "стек" для структуры данных, общеизвестной как "очередь". Ред.
Л
используемых данных, а т — индекс временной задержки. ур и у представляют желаемый выход ДС и выход РНС_МОС соответственно. На каждом временном шаге обучение выполняется по L образцам.
Элементы якобиана вычисляются в два этапа, которые условно называют прямой и обратной фазами. Прямая фаза вычислений выполняется на ^ - 1) шагов обратно во времени до текущего времени (от к - L + 1 до к), и величины (х, V, у, уzc) сохраняются на каждом шаге. Величины ошибок, которые получаются как разность между выходом анализируемой системы (сохраняемым в стеке) и выходом РНС_МОС, также сохраняются. После завершения вычислительной фазы "вперед" выполняется обратная фаза вычислений с использованием присоединенной модели РНС_МОС. Фаза начинается с текущего момента времени к, двигаясь назад на ^ - 1) шагов до времени к - L + 1. Затем вычисляются элементы матрицы якобиана также в форме прямой и обратной фазы. Эти вычисления соответствуют алгоритму обратного распространения во времени путем разворачивания РНС_МОС во времени через стек. Процедура обучения выполняется в РВ, и динамическое вычисление производных выполняется по более чем одному образцу в стеке, и тем самым мы уходим от недостатка статического вычисления градиента и использования только одного образца в текущий момент времени.
ЗАКЛЮЧЕНИЕ
Рассмотрены структура нейронной сети с множественными обратными связями (НС_МОС) и процедура ее обучения. В отличие от архитектуры используемых в приложениях рекуррентных ИНС особенность структуры анализируемой
ИНС_МОС состоит в том, что нейроны обратной связи (ОС) организованы в три отдельных слоя с нелинейными обрабатывающими элементами. При этом реализуются достаточно разнообразные виды обратных связей: (выход ИНС—1-й слой ОС— вход выходного слоя); (выход ИНС—2-й слой ОС—нейроны входного слоя); (входной слой— нейроны 3-го слоя ОС—нейроны входного слоя). Такое усовершенствование принятого подхода к построению рекуррентных ИНС (РНС) создает дополнительные возможности построения адаптивных систем, повышения робастности ИНС при решении задач восстановлении формы сигналов из многоканальной смеси в форме свертки и в других приложениях, связанных с моделированием динамических систем и обратных фильтров. Ценой использования таких преимуществ ИНС_МОС является сложность алгоритма ее обучения. Сравнительно с дифференцированием нейросетевых ве-
личин (которое необходимо РНС при обычно используемом алгоритме обучения, называемом алгоритмом обратного распространения во времени) для ИНС_МОС такое дифференцирование усложняется за счет того, что структура ее ОС гораздо сложнее. Значительное уменьшение вычислительной нагрузки при вычислении чувствительности сетевых величин относительно весов сети достигается путем построения для ИНС_МОС ее "присоединенной" модели. Приведена "присоединенная" модель и показаны правила ее использования для вычисления чувствительности сетевых величин в ходе обучения ИНС с настройкой ее весов.
Качество функционирования ИНС подобной структуры при обучении, адаптации и идентификации динамических моделей и ее преимущество перед рекуррентными нейронными сетями более простой архитектуры проанализированы Савра-ном (Savran) на основе решения нескольких прикладных задачах, включая предсказание хаотических временных рядов и идентификацию нелинейной ДС.
СПИСОК ЛИТЕРАТУРЫ
1. Малыхина Г.Ф., Меркушева А.В. Элементы статистической концепции обучения нейронной сети и прогнозирование точности ее функционирования // Научное приборостроение. 2005. Т. 15, № 1. С. 2945.
2. Малыхина Г.Ф., Меркушева А.В. Метод контроля состояния подсистемы (объекта) при неполной измерительной информации о совокупности параметров, определяющих ее динамику. I. Анализ структуры нейронной сети, приспособленной к динамическому характеру анализируемой информации // Научное приборостроение. 2004. Т. 14, № 1. С. 7284
3. Малыхина Г.Ф. Измерение характеристик сложных объектов с использованием динамических нейронных сетей // Нейрокомпьютеры: разработка, применение. 2004. № 7-8. C. 17.
4. Васильев А.Н., Тархов Д.А. Нейросетевое моделирование. Принципы, алгоритмы и приложения. СПб.: Изд. Политехнического университета, 2009. 527 с.
5. Ge S.S., Wang C. Adaptive neural control of uncertain MIMO nonlinear systems // IEEE Transactions on Neural Networks. 2004. V. 15, N 3 (May). P. 674-692.
6. Wang D., Huang J.Neural network-based adaptive dynamic surface control for class of uncertain nonlinear systems in strict-feedback form // IEEE Transactions on Neural Networks. 2005. V. 16, N 1 (Jan.). P. 195-202.
7. Roy N.K., Potter W.D., Landau D.P. Polymer property prediction and optimization using neural networks // IEEE Transactions on Neural Networks. 2005. V. 17, N 4 (Jul.). P. 1001-1014.
8. Park J.H., Huh S.H., Km S.H., Seo S.J., Park G.T. Direct adaptive controller for nonaffine nonlinear sys-
tems using self- structuring neural networks // IEEE Transactions on Neural Networks. 2005. V. 16, N 2 (Mar.). P. 414-422.
9. Li H.X., Deng H. An approximate internal mode-based neural control for unknown nonlinear discrete processes // IEEE Transactions on Neural Networks. 2006. V. 17, N 3 (May). P. 659-670.
10. Zhang J., Morris A.J. Recurrent neuro-fuzzy networks for nonlinear process modeling // IEEE Transactions on Neural Networks. 1999. V. 10, N 2 (Mar.). P. 313326.
11. Williams R.J., Zipser D. A learning algorithm for continually running fully recurrent neural network // Neural computations. 1989. V. 1. P. 270-280.
12. Tsoi A.C., Back A.D. Locally recurrent globally feedforward networks: a critical review of architectures // IEEE Transactions on Neural Networks. 1994. V. 5, N 2 (Mar.). P. 229-339.
13. Frasconi P., Gori M., Soda G. Local feedback multi-layered networks // Neural computations. 1992. V. 4. P. 120-130.
14. Sastry P.S., Santharam G., Unnikrishnan K.P. Memory neuron networks for identification and control of dynamic systems // IEEE Transactions on Neural Net-
works. 1994. V. 5, N 2 (Mar.). P. 306-319.
15. Billings S.A., Fung C.F. Recurrent radial basis function networks for adaptive noise cancellation // Neural networks. 1995. V. 8, N 2. P. 273-290.
16. Santini S., Bimbo A.D., Jain R. Block-structured recurrent neural networks // Neural networks. 1995. V. 8, N 1. P. 135-147.
17. Werbos P. Back-propagation through time: What it does and how to do it // Proceedings of IEEE. 1990. V. 78, N 10. P. 1550-1560.
СПбГТУ, г. Санкт-Петербург
Контакты: Малыхина Галина Фёдоровна, [email protected]
Материал поступил в редакцию 10.01.2012.
NEURAL NETWORK WITH MANIFOLD RECURRENT STRUCTURE
A. V. Merkusheva , G. F. Malykhina
SPbSPU, Saint-Petersburg
The structure and learning procedure is analyzed for neural network (NN) with manifold feedback structure grouped in several layers. The difference of this NN compared with recurrent networks is that temporal relations are provided by means of neurons arranged in three feedback layers that enrich the representation capabilities of NN. Feedback layers provide local and global recurrences via nonlinear processing elements. In feedback layers weighed sums of the delayed outputs of hidden and output layers are passed through certain activation functions and applied to the feedforward neurons via adjustable weights. The learning procedures for NN (including real time learning) are given that are based on back propagation through time algorithm. The "adjoint" model for NN with manifold recurrent structure is given that diminish the computation complexity of constructing NN learning algorithm.
Keywords: neural network, model, structures, locality, recurrence, RT learning, sensitivity