УДК 519.713
АЛГОРИТМ ОБУЧЕНИЯ ФОРМАЛЬНОГО НЕЙРОНА С ПОЛИНОМИАЛЬНОЙ АКТИВАЦИОННОЙ ФУНКЦИЕЙ
БОДЯНСКИЙЕ.В., ПОЛУШКИНА Н.А.___________
Предлагается простейшая активационная функция нейрона МакКаллоха-Питтса в виде кубического полинома, удовлетворяющая всем необходимым требованиям, и соответствующий ей алгоритм настройки синаптических весов и параметра крутизны. В основе алгоритма лежит процедура Левенберга-Марквардта, обладающая сглаживающими свойствами и отличающаяся простотой реализации.
1. Введение
В настоящее время искусственные нейронные сети широко применяются для решения разнообразных задач, связанных с интеллектуальным анализом данных в условиях априорной и текущей неопределённости. Этот факт связан, прежде всего, с универсальными аппроксимирующими свойствами нейросетей, доказанными в работах Цыбенко и Хорника [1-3]. Эти авторы показали, что конечная линейная комбинация некоторых одномерных функций особого вида может однозначно аппроксимировать любую непрерывную функцию n действительных переменных на заданном гиперкубе. Эти одномерные конструкции, получившие название сигмоидальных активационных функций, являются непрерывными, монотонными, возрастающими, ограниченными кривыми, выбор которых в общем случае не ограничен какими-либо формальными соображениями.
2. Постановка задачи
Одним из наиболее распространённых элементов нейронных сетей является формальный нейрон МакКаллоха-Питтса, для которого была использована активационная функция
-Y -u. 1
0<Vl(YjUj)=(1+e J J)-1<1, (1)
определяемая на множестве всех действительных чисел и принимающая только положительные значения. На рис. 1 приведена схема нейрона с активационной функцией (1).
Более удобной оказалась биполярная функция гиперболического тангенса
1-e-2Yjuj
-1<¥2 (Yjuj)=tanh(Yjuj)=1+e2j' <1, (2)
связанная с (1) соотношением
1 Y iui
¥1 (Y jUj)=2(tanh^bU1).
Также в качестве активационных достаточно часто используются функции вида
¥3(Y jj
Y juj
(3)
V4(Yjuj)=sm( П Yjup, (4)
2
¥5(Yjuj)= - arctg(Yjuj) (5)
и им подобные, определённые на квадрате—1<Uj<1, -1<yj(YjUj)< 1. Перечисленные выше функции обладают всеми свойствами сигмоидальных активационных функций на заданном единичном квадрате.
Все эти функции имеют подобный друг другу вид и отвечают всем требованиям, сформулированным в [1-3]. Естественно, что выражениями (1)-(5) возможный выбор не ограничивается.
Процесс обучения нейронной сети сводится к настройке вектора синаптических весов
Wj=(Wjo,Wj1,Wj2,...,Wjn)T
путём минимизации целевой функции, в качестве которой достаточно часто используется выражение 12
Ej (k)= -jej (k), где є. (k)=dj (k)-yj (k) - ошибка обучения, dj(k) — внешний обучающий сигнал. Использование процедуры градиентного спуска приводит к так называемому дельта-правилу обучения, имеющему вид [4]:
РИ, 2003, № 4
45
Wj (k+1)=wj (k)-nw (k)V WjEj (k) = cEj(k) 5ej(k)
= Wj(k)-nw(k)—j--------j— Vw uj(k) =
j lw 5ej(k) 5uj(k) wj j
= w j (k)-n w (k)e j (k) V w;ej(k)=
5^(y j(k)uj(k))
= w j (k)+nw (k)ej (k)—^------x(k) =
5uj(k)
= wj(k)+nw(k)5 j(k)x(k),
s „,= (k) ^(Yj(k)uj(k))
где о j (k)=e j (k)--— ----локальная ошибка;
ouj (k)
nw (k) — скалярный параметр, определяющий скорость сходимости процесса настройки синаптических весов.
Хотя в практике обучения искусственных нейронных сетей параметр Yj обычно полагается постоянным, целесообразно введение настраиваемого параметра крутизны, обеспечивающего повышение скорости обучения и улучшение аппроксимирующих свойств сети. Алгоритм обучения этого параметра был предложен в [5] и также представляет собой градиентную процедуру
cEj(k)
Y j(k+1)=Y j(k)-^Y (k) =
cY j(k)
= Y j(k)+nY (k)
5¥(Y j(k)uj(k))
eYj(k)
Несложно заметить, что конкретный вид алгоритма обучения определяется используемой активационной функцией, а его “скоростные” характеристики — выбором параметров шага nw(k) и Пу (k). Именно выбору достаточно простой и универсальной активационной функции и оптимизации параметров шага посвящена настоящая работа.
3. Полиномиальные активационные функции
В [6] было показано, что активационные функции (2)-(5) могут быть представлены в виде степенного ряда
V(Y juj)=a0 Y juj +a1Yjuj +a2Yjuj +•••=
L
=E ai(Yjuj)2l+1, (6)
l=0
где коэффициенты разложения ai определяются
соотношениями ai+i=Pai, -1<р<0, ao=1, т.е. фактически представляют собой устойчивый колебательный процесс авторегрессии первого порядка.
Для обучения нейрона с активационной функцией (6) в [7] был предложен алгоритм вида
w j (k+1)=w j (k)+nw (k)ej (k)x
( L A
x X (2l+1)(Yj(k)uj(k))2laiYj(k) v i=o
x(k),
Y j (k+1)=Y j (k)+ny (k)e j (k) x
( L ^
x X (2l+1)(Yj(k)uj(k))2laiuj(k)
. I i=o )
(7)
с неопределёнными параметрами шага обучения.
Простейший вариант (7), удовлетворяющий всем необходимым требованиям, возникает при L=1, т. е. кубический полином
1 3 3
V(Y juj)=Y juj-j Y juj, (8)
приведенный на рис. 2, также является активационной функцией.
Рис. 2. Кубическая активационная функция
Записав производные (8) по настраиваемым параметрам
3(Y j (k)u j (k)-j Yj (k)u3 (k)) duj(k)
= Yj (k)(1-Yj2 (k)u2 (k))=Yj (kMYj (k)uj (k)),
3(Y j (k)u j (k)-j Y3 (k)u3 (k)) dy j(k)
= uj(k)(1-Yj2(k)uj2(k)) = uj(k)^(Yj(k)uj(k)), приходим к простому алгоритму обучения:
w j (k+1)=w j (k)+nw (k)e j (k) x x^(y j(k)uj(k))x(k),
Y j (k+1)=Y j(k)+nY (k)e j (k) x (9)
x^(y j(k)uj(k)),
где ^(Yj (k)uj (k)) в данном случае есть не что иное, как квадратичная радиально-базисная функция [8]
-1 о
с параметром ширины yj , приведенная на рис. 3.
Рис. 3. Квадратичная радиально-базисная функция
На рис.4 показана также схема обучения формального нейрона с помощью алгоритма (9).
46
РИ, 2003, № 4
Выходной сигнал нейрона, приведенного на рис.4, описывается выражением yj (к)=Гj^(yj (k)wT (k)x(k)),
1
где Г j<----1—
1 з
коэффициент, определяющий
Y j"3 Y j
экстремальные значения выходного сигнала yj (k) и реализуемый дополнительным усилительным блоком, z-1 — элемент чистого запаздывания.
4. Алгоритм обучения
Введём составные векторы расширенных входов и настраиваемых параметров:
Wj (k)=wj (k) © yj (k)=(wT (k) і yj (k))T,
xa (k)=^(y j (k)uj (k))(Y j (k)x(k) ® uj (k)) =
= ^(Yj (k)uj (k))(Y j (k)xT (k):uj (k))T
и запишем общий градиентный алгоритм обучения на основе процедуры (9):
wj (k+1)=Wj (k)+na (k)ej (k)xa (k). (10)
Повышение скорости сходимости процесса настройки всех параметров нейрона может быть обеспечено использованием вместо градиентного спуска (10) алгоритма Левенберга-Марквардта [9], принимающего в данном случае форму
wa (k+1)=wjj (k)+(xa (k)xaT (k)+rI)-1ej (k)xa (k), (11)
или при малых значения параметра регуляризации r
wa (k+1)=wa (k)+(xa (k)xaT (k))+ej (k)xa (k),
где I-(n+2)x(n+2) — единичная матрица, (•)+ — псевдообращение по Муру-Пенроузу.
Применив к (11) формулу Шермана-Моррисона, после несложных преобразований можно переписать алгоритм обучения в гораздо более простой форме:
wa (k+1)=w*a (k)+
ej(k)xa(k)
r+
xa(k)
= wa(k)+r-1(k)ej(k)xa(k).
(12)
Заметим, что в отличие от (11), процедура (12) не использует операции обращения матриц и является по сути одной из модификаций популярного в теории обучения нейронных сетей алгоритма Уид-роу-Хоффа [ 10]. Рассчитывая параметр шага в (12) согласно рекуррентному соотношению
2
r(k)=rr(k-1)+
x (k)
0 < r < 1,
приходим к расширенной версии процедуры стохастической аппроксимации [11] , получившей широкое распространение в задачах адаптивной идентификации динамических систем. Варьируя параметром г, можно обеспечить процессу обучения как сглаживающие (фильтрующие), так и следящие свойства.
5. Заключение
Предложен простой и эффективный алгоритм обучения формального нейрона с полиномиальной активационной функцией, предназначенный для использования в многослойных нейронных сетях и позволяющий существенно упростить численную
Рис. 4. Схема обучения формального нейрона с полиномиальной функцией активации РИ, 2003, № 4
47
2
P.303-304. 2. HornikK., StinchcombeM., WhiteH. Multilayer feedforward networks are universal approximators // Neural Networks. 1989.№2.P.359-366. 3. Hornik K. Approximation capabilities of multiplayer feedforward networks // Neural Networks.1991.4.P.251-257. 4. Golden R.M. Mathematical Methods for Neural Networks Analysis and Design.-Cambridge, Massachusetts: The MIT Press, 1996. 420p. 5. Kruschke J.K., Movellan S.R. Benefits of gain: Speeded learning and minimal layers backpropagation networks// IEEE Trans. on Syst., Man and Cybernetics. 1991.21. P.273280. 6. Бодянский E.B., Кулишова H.E., Руденко О.Г. Обобщённый алгоритм обучения формального нейрона // Кибернетика и системный анализ. 2002. №6. С.176-182. 7. Бодянский E.B., Кулишова Н.Е., Руденко
О.Г. Об одной модели формального нейрона // Доповіді НАН України. 2001. №4. С.69-73. 8. Bodyanskiy Ye., Chaplanov O., Kolodyazhniy V., Otto P. Adaptive quadratic radial basis function networks for time series forecasting // Proc. East West Fuzzy Coll. -Zittau/ Goerlitz: HS, 2002. P.164-172. 9. ShepherdAJ. Second-Order Methods for Neural Networks.-London: Springer-Verlag, 1997. 145p.
10. Ham F.M., Kostanic I. Principles of Neurocomputing for Science and Engineering. N.Y.:Mc Graw-Hill, Inc., 2001. 642p. 11. Goodwin G.C., Ramadge P.J., Caines P.E. A globally convergent adaptive predictor // Automatica.-1981. №1. P.135-140.
Поступила в редколлегию 23.07.2003
Рецензент: д-р техн. наук, проф. Любчик Л.М.
Бодянский Евгений Владимирович, д-р техн. наук, профессор кафедры искусственного интеллекта, научный руководитель ПНИЛ АСУ ХНУРЭ, член IEEE, WSES. Научные интересы: нейро-фаззи-системы. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 7021-890.
E-mail:[email protected], [email protected]
Полушкина Наталия Александровна, ст. лаборант каф. филосифии ХНУРЭ. Научные интересы: искусственные нейронные сети, нейросетевое прогнозирование. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-465. E-mail: [email protected]
УДК 519.5
ОБ ОДНОМ ПОДХОДЕ К ПОСТРОЕНИЮ МАТЕМАТИЧЕСКОЙ МОДЕЛИ ПРОГРАММНОГО АГЕНТА
ФИЛАТОВ B.A.____________________________
Рассматривается подход к построению модели программного агента на основе фреймовой структуры. Обосновывается формальный подход, используемый в теории образов, к задаче проектирования логической структуры взаимосвязанных программных агентов. Предложенные модели могут использоваться для разработки мультиагентных систем администрирования информационных ресурсов распределенных вычислительных систем.
Введение
Исследования в области интеллектуальных агентов и мультиагентных систем представляют собой одну из наиболее интересных областей развития современных информационных технологий. По оценкам специалистов в области искусственного интеллекта аген -тно-ориентированный подход может сыграть важнейшую роль в становлении информационного общества будущего. Уже сегодня он широко применяется в таких областях как управление информационными потоками (workflow management), диагностика и управление в сетевых структурах (network management), информационный поиск (information retrieval), электронная коммерция (e-commerce), обучение (education) и ряде других.
Существует большое количество определений понятия “программный агент” в зависимости от взгляда на распределенную обработкузнаний. С точки зрения распределенных вычислений, агент—это самостоятельный процесс, имеющий определенное состояние и способный взаимодействовать с другими агентами посредством передачи сообщений. В этом смысле его можно рассматривать как естественное развитие парадигмы объектно-ориентированного параллельного программирования. По существу программные аген-
48
ты выполняют задачи, делегируемые им пользователями. В зависимости от поставленной задачи, агенты могут размещаться на Web-серверах, настольных персональных компьютерах или в локальных сетях.
Другая точка зрения ассоциируется с областью распределенного искусственного интеллекта, где термин “агент” имеет более узкое и специфическое значение, чем упомянутое выше. В соответствии с ним, “агент” —это компьютерная система, которая в дополнение к перечисленным выше свойствам реализована с использованием концепций, свойственных человеку. Например, с такими понятиями, как знания, убеждения, намерения, обязательства [1].
Цель исследования
Целью проводимых исследований является разработка математической модели программного агента, которая позволит реализовать многоуровневую, иерархическую систему автономного администрирования распределенных информационных ресурсов вычислительной системы.
Рассмотрим один из вариантов построения модели управления информационными ресурсами на основе мультиагентной системы. Главными составляющими такой системы являются:
—агент—приложение, функционирующее на выделенном ему компьютере и используемое для сбора, анализа, защиты информации;
—система управления агентами (менеджер агентов); —программа-администратор мультиагентного пространства, осуществляющая контроль работы системы, накопления и анализа информации, полученной от агентов в процессе их функционирования;
— конструктор агентов — программный модуль, обеспечивающий логическое и физическое конструирование агентов. Он отвечает за построение, генерацию и запуск агентов на удаленные компьютеры;
— библиотека функций—набор модулей, из которых строится программный агент. Каждая конкретная логическая функция на этапе проектировании должна иметь реализацию в виде программного модуля;
РИ, 2003, № 4