Рис. 1: Пример рекуррентной сети из двух нейронов.
На рис. 1 представлен пример нейросети, состоящей из
двух нейронов. Нейросеть является рекуррентной, выходные сигналы
обоих нейронов поступают на ее вход. Весовые коэффициенты первого
сумматора для сигналов y1, y2, x1, x2 представляют собой величины b11, b21,
a11, a21 соответственно. Для второго сумматора эти коэффициенты
равны b12, b22, a12, a22. Функции активации нейронов
равны F1 и F2. Задержка прохождения сигнала через нейрон равна t.
Запишем систему уравнений для выходных сигналов нейросети:
y1
=
F1(a11x1+a21x2+b11(y1-t
. y
1
)+b21(y2-t
. y
2
))
y2
=
F2(a12x1+a22x2+b12(y1-t
. y
1
)+b22(y2-t
. y
2
))
Предположим, что функции F1 и F2 линейные, тогда систему можно переписать
в каноническом виде:
Положение равновесия характеризуется дополнительным уравнением
[y\dot]1 є [y\dot]1 є 0, то есть состояние системы постоянно.
Рассмотрим устойчивость системы при входных сигналах x10, x20 или
близких к ним. Функции g1(x1, x2) и g2(x1, x2) заменим на
g1=g1(x10, x20) и g2=g2(x10, x20). Такая замена правомерна
при постоянстве входных сигналов.
Если входные сигналы изменяются со временем, то замену надо производить с
помощью разложения по формуле Тейлора. В этом случае можно оценить вносимую
ошибку.
Найдем равновесные состояния, соответствующие выбранным входным сигналам:
g1
=
A11y1+A12y2
g2
=
A21y1+A22y2
При решении этой системы возможны различные случае. Если определитель
|
A11
A12
A21
A22
|=0, то существует единственное решение, то есть одна пара
(y10, y20). Если же ранг матрицы равен единице, то имеется
бесконечное множество решений, содержащих линейно зависимые
комнонеты (y10, k·y10).
Таким образом, мы нашли равновесное состояние (y10, y20),
теперь надо проверить устойчивость системы в данном состоянии.
Для этого рассмотрим уравнения, описывающие поведение системы в
равновесном состоянии:
. y
1
=
A11(y1-y10)+A12(y2-y20)
. y
2
=
A21(y1-y10)+A22(y2-y20)
Для выяснения устойчивости достаточно рассмотреть матрицу
(
A11
A12
A21
A22
).
Если действительная часть всех собственных чисел
Re
li меньше нуля, то
система устойчива. Положительность любого
Вышеприведенные вычисления предназначены для случая линейных функций
активации. Это предположение часто оказывается неверным - большинство
распространенных функций активации сушественно нелинейны.
В этом случае необходимо провести линеаризацию функций возбуждения в
окрестности выбранной точки. Линеаризация проводится по формуле Тейлора
F(x1, x2, y1, y2)=F(x10, x20, y10, y20)+(x1-x10)
¶F¶x1
к к
0
ј
Для линеаризации необходимо знать равновесное состояние системы,
то есть значения (y10, y20). Для этого, положив [y\dot]1 и
[y\dot]2 = 0, решаем систему уравнений:
y1
=
F1(a11x1+a21x2+b11y1+b21y2)
y2
=
F2(a12x1+a22x2+b12y1+b22y2)
Система содержит две неизвестных в двух уравнениях. В частных случаях можно
провести аналитический расчет. В общем же случае надо использовать приближенные
методы вычислений.
Получив равновесное состояние нашей системы, нужно проверить стабильность
в ее окрестности так, как описано в разделе 1.3.
Итак, мы рассмотрели задачу проверки устойчивости состояния нейросистемы.
Рассмотренная последовательность действий легко может быть применена
для однослойной рекуррентной нейросети в общем виде.
Для определения устойчивости такой нейросети необходимо проделать следующую
последовательность действий:
Выбрать интересующие нас значения входов нейросети
(x10, ј, xn0).
Найти равновесное состояние, соответствующее заданным входным сигналам.
Провести линеаризацию функций активации.
Составить систему дифференциальных уравнений, описывающую поведение
системы в окрестности равновесной точки.
Найти собственные числа матрицы коэффициентов этой системы.
Проверить знаки действительных частей собственных чисел. Сделать
вывод об устойчивости системы в окрестности выделенной точки.
File translated from
TEX
by
TTH,
version 2.89. On 2 Jul 2004, 21:43.