Многослойная нейросетевая память, хранящая цепочки ассоциаций

ISSN 2079-0031 Вестник НТУ "ХПИ", 2015, № 33 (1142) УДК 004.89:519.71

В.Д. ДМИТРИЕНКО, д-р техн. наук, проф., НТУ "ХПИ",

Р.П. МИГУЩЕНКО, д-р техн. наук, доц., проректор по научно-

педагогической работе, НТУ "ХПИ",

A.Ю. ЗАКОВОРОТНЫЙ, канд. техн. наук, доц., докторант, НТУ

"ХПИ",

B.А. БРЕЧКО, асп., НТУ "ХПИ"

МНОГОСЛОЙНАЯ НЕЙРОСЕТЕВАЯ ПАМЯТЬ, ХРАНЯЩАЯ

ЦЕПОЧКИ АССОЦИАЦИЙ

Впервые на основе двунаправленной ассоциативной памяти предложена архитектура и алгоритмы функционирования двунаправленной многослойной дискретной нейронной сети, которая способна восстанавливать по входной информации, подаваемой на любой из двух ее входных слоев нейронов, цепочки ассоциаций. Ил.: 2. Библиогр.: 14 назв.

Ключевые слова: двунаправленная ассоциативная память, многослойная дискретная нейронная сеть, цепочки ассоциаций.

Постановка проблемы и анализ литературы. Для решения задач нахождения ассоциативных образов в настоящее время существует множество разнообразных методов и алгоритмов [1 - 6]. В связи с этим в теории искусственного интеллекта предпринимаются попытки создания универсальных подходов, позволяющих решать широкие классы задач поиска и запоминания ассоциативной информации. Один из таких подходов связан с использованием искусственных нейронных сетей. Их эффективное применение для решения различных задач во многом основывается на том, что традиционные трудности решения разнообразных задач облегчены применением универсальных алгоритмов обучения нейронных сетей на обучающих выборках [7 - 9].

Обычная нейронная сеть, например перцептрон [5, 7] реализует

отображение yk = f (xk), где yk = (y\, y2,..., Ут) - выходной вектор

"" т k /- k k k \

нейронной сети для k-го входного вектора сети x = (x1, x2,..., xn), k = 1, p ; p - число пар векторов (xk, yk), xk e Rn, yk e Rm, и может рассматриваться как ассоциативная память, которая входному вектору x k ставит в соответствие выходной вектор y k . Однако нейронные сети типа перцептрона, Хебба и другие [8, 9] не могут вектору yk поставить в

© В.Д. Дмитриенко, Р.П. Мигущенко, А.Ю. Заковоротный, В.А. Бречко, 2015

соответствие ассоциативный вектор xk. Этот недостаток преодолён в нейронной сети двунаправленная ассоциативная память (ДАП) [10 - 13].

Двунаправленная ассоциативная память (рис. 1) состоит из двух слоев нейронов, связанных парами двунаправленных взвешенных связей. Изображения (или и-мерные либо да-мерные входные вектора) могут подаваться соответственно на входы X- или 7-элементов. При этом не предполагается подача изображений на оба слоя элементов одновременно. Если весовая матрица для сигналов, посылаемых из X-слоя элементов в 7-слой, есть

W11  w1k W1m

W = Wj1  wjk  Wjm ,

wn1  Wnk   W nm

то весовая матрица для сигналов от 7-элементов в X-слой имеет вид

w = w т.

Рис. 1. Двунаправленная ассоциативная память Сеть способна запоминать пары ассоциированных друг с другом образов = , ..., sp), Тр = ((р, ..., (¡р) из некоторых заданных множеств образов 5 = {Я1, ..., 5Р, ..., Т = {Т1, ..., Тр, ..., Ть}, Ь - число ассоциированных пар.

Процесс обучения ДАП с биполярными нейронами состоит в предварительной настройке весов связей между X- и 7-нейронами -элементов матрицы (1) - в соответствии с формулой

L ___

w = £ SPtP, i = 1, n, j = 1, m .

р=1

Динамика ДАП в режиме определения ассоциативных изображений является итерационной. Процесс изменения выходных сигналов нейронов каждого слоя ДАП осуществляется синхронно, при этом сигналы посылаются из слоя в слой последовательно, а не одновременно в обоих направлениях. При биполярных входных векторах функции активации fp (ивх. р) для элементов X- и 7-слоя задаются выражением

1 если ^вх.р (t) > ö p,

Цых.р

-1, если ивх.р (t) < 0 р ,

где Qp - порогp-го элемента ДАП, p = 1, ..., n, n+1, ..., n + m.

Из выражения (3) следует, что если входной сигнал элемента точно равен пороговому значению, то функция активации оставляет на выходе нейрона предшествующее значение выходного сигнала. В связи с этим начальная активация нейронов обычно производится нулевыми входными сигналами. Функционирование сети может начинаться с задания изображения (входных сигналов) для любого из слоев ДАП. Алгоритм работы двоичной сети при первом предъявлении изображения Sk слою X-элементов предполагает выполнение следующих шагов:

Алгоритм 1

Шаг 1. Инициируются веса связей, определяемые с помощью соотношения (2), для множества из L пар ассоциированных друг с другом двоичных изображений (Бр, Тр) , р = 1,L . Задается начальное время: t = 0. Инициируются нулевыми входными сигналами все нейроны ДАП:

и^л (0) = 0, Uвых.xi (0) = f (U^X,) = 0, i = in,

UBKjj (0) = 0, U^Yj (0) = fj (UBKJJ ) = 0, j = im.

Шаг 2. Для заданного изображения Sk = (sf, ..., skn) выполняются шаги 3 - 7.

U вых.р (t + 1) =

Шаг 3. Задаются входные сигналы нейронов X-слоя:

(0) = sk, i = \7n

Задается время t = t + 1 и вычисляются выходные сигналы X-элементов

ЦвыхХ (t + 1) = W^JT, (0), i = 1П

Шаг 4. До тех пор, пока не установятся выходные сигналы всех X- и 7-нейронов, выполняются шаги 5 - 7 алгоритма.

Шаг 5. Адаптируется активность элементов 7-слоя. Вычисляются входные и выходные сигналы 7-элементов:

n _

ивхЪ (t + 1) = Z WP^xX, (t + 1). j = 1 m ,

i=1

Uвых,Yj (i + 2) = fj (UBKJJ (t + 1)), j = 1m,

Выходные сигналы 7-нейронов посылаются на входы элементов X-слоя.

Шаг 6. Адаптируется активность элементов X-слоя. Вычисляются входные и выходные сигналы X-элементов:

Цх.X, (( + 2) = X(( + 2), ' = 1 п ,

У=1

ииНх.х (( + 3) = Л (Ц*х (( + 2)), , = Ш.

Выходные сигналы Х-нейронов посылаются на входы элементов 7-слоя. Вычисляются входные USXYj ((+ 3), у = 1, т, и выходные сигналы ивых.1у ((+ 4) элементов 7-слоя.

Шаг 7. Проверяется тест на сходимость. Сравниваются выходные сигналы Х-нейронов ив^1хХг ((+ 3) и ив^1хХг ((+1), I = 1, п , а также

7-нейронов ивых.^ ((+ 2) и ивых.^ ((+ 4), у = 1, т , полученные на предшествующих шагах. Если выполняются все (п + т) равенств

ивых.XI (( + 3) = ивых.XI (( + 1) > 1 = ,

ЦыхХу (( + 2) = ЦыхХу (( + 4) , У = 1т ,

то осуществляется переход к шагу 8 алгоритма, иначе - осуществляется переприсваивание значений выходных сигналов нейронов:

« + !) = иых ^ + 3), i = М ,

(t) = ^ыху ^ + 2) > 7 = 1m , и выполняется переход к шагу 5 алгоритма.

Шаг 8. Останов.

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

Целью статьи является разработка нейросетевой многослойной ассоциативной памяти, которая обладает возможностью запоминания и восстановления цепочек ассоциаций.

Задача решается благодаря тому, что архитектура ДАП перестраивается путем замены одного из сенсорных слоев нейронов например, слоя 7-элементов, на N слоев (рис. 2), которые последовательно связаны друг с другом парами двунаправленных взвешенных связей. При этом каждая пара соседних слоев нейронов фактически является двунаправленной ассоциативной памятью. В результате этого возникает возможность любому вектору

= (г1 вх.'вх.'...'г'д,вх.) некоторого слоя сети Я1 (1 = 1,N-1) поставить в соответствие ассоциативный вектор на выходе слоя

, а вектор Я^. рассматривать как ассоциацию входному вектору предшествующего слоя нейронной сети. Поэтому вектор на входе Х-слоя сети порождает цепочку их N двунаправленных ассоциаций, где каждый вектор Я1 (1 = 1, N — 1) входит в две ассоциации [14].

Память состоит из сенсорного слоя нейронов Х1 (1 = 1, п) и N слоев 2-элементов 21(211,...,Я^), ..., Я1(Я^1 , ...Д^). Каждый нейрон входного слоя Х1 (1 = 1, п) связан с каждым нейроном X1 -слоя

парами двунаправленных взвешенных связей Щ-Ц ,

12 1 Щ1 (1 = 1, п; д1 = 1, , каждый нейрон 1 -слоя связан с каждым

нейроном Я 2 -слоя парами двунаправленных взвешенных связей

W^, W2qi (q1 = 1, gj; q2 = 1, g2). По аналогии каждый Zk -слой (k = 3, N) сети связан с предыдущим слоем Z(k-1) парами двунаправленных взвешенных связей Wk(k-1) qk , Wqkk2qk-1 (qk-1 = 1, gk-b qk = 1, gk), а также со следующим Z (k+X) -слоем (за исключением ZN -слоя сети) парами двунаправленных взвешенных связей W^*1^, (qk =1 gk; qk+1 = 1 gk+1). Каждый нейрон выходного слоя Z^n (qN = 1, gN) связан с каждым нейроном Z^-^ -слоя парами двунаправленных взвешенных связей WqNqN^ Wq(N-i) qN (qN =1 gN; qN-1 = 1 gN-1).

Разработанная сеть функционирует в соответствии с двумя алгоритмами: обучения и распознавания. Алгоритм обучения сводится к определению обучающего набора изображений и определения матриц

V г-,1 г,2 гуЫ

весов связей между слоями нейронов: , X , X , ..., X с помощью соотношений вида (1) и (2). Алгоритм 2

В алгоритме функционирования многослойной двунаправленной ассоциативной памяти в режиме определения цепочек ассоциаций приняты следующие обозначения:

п - число нейронов в сенсорном слое нейронов;

гу1

g2,...,gN - число элементов соответственно в слоях 2 , 2 , ..., 2 нейронной сети, g1 = g2 = ...= gN;

Б*, Б*1, Б*2, ..., Бш (V = 1,Ь) - цепочки ассоциативных изображений;

Ь - число цепочек ассоциативных изображений, которые запоминаются;

V - номер цепочки ассоциативных изображений;

t¿, 4 , t2, ... - последовательные моменты времени при получении ассоциативных изображений, при этом г/ = + Дг, 4 = ^—1) + Дt и

4 = г° + кДг;

Дг - время, необходимое для получении выходного сигнала нейронов с помощью функции активации; /1 - функция активации г-го элемента.

Алгоритм работы многослойной двунаправленной ассоциативной памяти при подаче изображения на первый сенсорный вход, предусматривает выполнение шагов, аналогичных шагам при функционировании ДАП:

Шаг 1. Инициируются веса связей Щ?1, Щ^2 (1 = 1, п; ? = 1, g1).

Задается начальное время: / = г\. Инициируются нулевыми входными сигналами все нейроны сети:

иЕХ.х,(0)=(0)=л ^ х)=1=^;

ивх.21 (0)=°; (0)=ди^)=°; ?! =

?1 ?1 ?1

Шаг 2. Для изображения Б* = Б, ...,БП) из произвольной цепочки

обучающих изображений Б*, Б*1, Б*2, ..., Б*1 (V = 1,Ь), выполняются шаги 3 - 7.

Шаг 3. Задаются входные сигналы нейронов Х-слоя сети

и (г1) = Б", 1 = 1П.

В интервале времени [/о, ^ = г^ + Дг ] вычисляются выходные сигналы Х-элементов:

ивых.х = Л (ивхх ^ 1 = 1 п-

Шаг 4. Пока не установятся выходные сигналы всех Х- и X1 -нейронов, выполняются шаги 5 - 7.

Шаг 5. Адаптируется активность элементов X1 -слоя. Вычисляются

п1

входные и выходные сигналы X -элементов:

п ___

Цх.^ = Х<1ивЫхх. (^11), 1=1 п; ? = 1 а;

41 1=1 '

(4)=(4)); 1=^; ?1 = ^

Выходные сигналы X1 -нейронов посылаются на входы элементов Х-слоя.

Шаг 6. Адаптируется активность элементов Х-слоя. Вычисляются входные и выходные сигналы Х-элементов:

ивх х. (4) = Х^ых^ (4). 1=^ ?1=^

1 ?1=1 ?1

ии^1х^Х,. (4) = / (ЦвхX (4)), 1 = 1П.

Выходные сигналы Х-нейронов посылаются на входы элементов

X1 -слоя:

п _ _

^ (4)=1^ =1«1; 1=1 п;

вх.X1 у 3' ¿-I ?1 выхХ,. Я 1=1

(4)=/?l(UBх.xl (4)); ?1 =1 «1; 1=1 п.

Шаг 7. Проверяется тест на сходимость. Сравниваются выходные сигналы Х-нейронов U х (4) и U ^ (?}), 1 = 1, п, а также выходные

сигналы X1 -нейронов U 1 (4) и U ! (4), ? = 1, «1, которые

вы х. X вых. X

я

получены на предыдущих шагах. Если не выполнено хотя бы одно равенство

и (4) = и (4), I = 1Й;

вых.Х 4 вых.Х ' '

ивых,' ^ = ивых,1 (^4), 91 = 1,

91 91

то осуществляется переприсваивание значений выходных сигналов нейроновX- и 21 -слоев:

ивых.Х, = ивых.Х, = ^

ивых21(?1) = ивых.21(?2), 91 = й!, 91 91

и переход к шагу 5 алгоритма, иначе - на выходе 21 -слоя получено изображение Б^1, которое является входным изображением для 2 2-слоя ассоциативной памяти. Поскольку любые два 2-слоя нейронов

гг2 гг2 ггЪ ^N-1 ГГ^

2 и 2 , 2 и 2 , ..., 2 и 2 , имеют архитектуру двунаправленной ассоциативной памяти, то их функционирование аналогично функционированию ДАП (алгоритм 1) или первых двух слоев рассматриваемой многослойной ассоциативной памяти (алгоритм 2, первые семь шагов алгоритма). Последовательное применение основного алгоритма ДАП (алгоритм 1) к слоям нейронов 21 и 2 2 , 2 2 и 2 , ...,

гу1 -1 r7N

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

ассоциативная память является двунаправленной. Поэтому, если на входы 211 -нейронов подать изображение , то будет получена цепочка ассоциативных изображений Бу( 1 -1), 1-2),..., .

Процессы функционирования предложенной нейронной сети в этом случае аналогичны процессам функционирования сети при подаче изображения на входы слоя Х-нейронов. Шаг 8. Останов.

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

Выводы. Таким образом, впервые на основе двунаправленной ассоциативной памяти предложена архитектура и алгоритмы

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

Список литературы: 1. Архангельський В.1. Нейронш мережi в системах автоматизацп / В.1. Архангельський, I.M. Богаенко, Г.Г. Грабовський, М.О. Рюмшин. - К.: Техшка, 1999. -364 с. 2. Катан Р. Основные концепции нейронных сетей / Р. Каллан. - М.: Издательский дом "Вильямс", 2001. - 288 с. 3. Дмитриенко В.Д. Основы теории нейронных сетей / В.Д. Дмитриенко, Н.И. Корсунов. - Белгород: БИИММАП, 2001. - 159 с.

4. Комашинский В.И. Нейронные сети и их применение в системах управления и связи / В.И. Комашинский, Д.А. Смирнов - М.: Горячая линия - Телеком, 2002. - 94 с.

5. Бодянский Е.В. Искусственные нейронные сети: архитектуры, обучение, применение / Е.В. Бодянский, О.Г. Руденко. - Харьков: ТЕЛЕТЕХ, 2004. - 372 с. 6. Галушкин А.И. Нейрокомпьютеры и их применение на рубеже тысячелетий в Китае: в 2 т. / А.И. Галушкин. Т. 1. - М.: Горячая линия - Телеком, 2004. - 367 с. 7. Барский А.Б. Нейронные сети: распознавание, управление, принятие решений / А.Б. Барский. - М.: Финансы и статистика, 2004. - 176 с. 8. Осовский С. Нейронные сети для обработки информации / С. Осовский -М.: Финансы и статистика, 2004. - 344 с. 9. Хайкин С. Нейронные сети: полный курс / С. Хайкин. - М:. Изд. дом "Вильямс", 2006. - 1104 с. 10. Яхъяева Г.Э. Нечеткие множества и нейронные сети: Учебное пособие / Г.Э. Яхъяева. - М.: Интернет-Университет Информационных Технологий; БИНОМ. Лаборатория знаний, 2006. - 316 с. 11. Галушкин А.И. Нейронные сети: основы теории / А.И. Галушкин. - М.: Горячая линия -Телеком, 2010. - 496 с. 12. Рутковский Лешек. Методы и технологии искусственного интеллекта / Лешек Рутковский. - М.: Горячая линия - Телеком, 2010. - 520 с. 13. Дмитриенко В.Д. Моделирование и оптимизация процессов управления движением дизель-поездов / В.Д. Дмитриенко, А.Ю. Заковоротный. - Харьков: Изд. центр НТМТ, 2013. - 248 с. 14. Дмитрieнко В.Д. Пристрш багатошарово! двонаправлено! асощативно! пам'ят / В.Д. Дмитрieнко, О.Ю. Заковоротний, 1.П. Хавта, В.О. Бречко // Патент на винахщ 108947 Укра!на, МПК G06G 7/60. Заявник та володар патенту НТУ "ХШ". -№ a 2014 02402; Заявлено 11.03.2014; Опублжовано 25.06.2015; Бюл. № 12.

Bibliography (transliterated): 1. Arhangel's'kij V.l. Nejronni merezhi v sistemah avtomatizaci! / V.l. Arhangel's'kij, I.M. Bogaenko, G.G. Grabovs'kij, M.O. Rjumshin. - K.: Tehnika, 1999. -364 p. 2. Kallan R. Osnovnye koncepcii nejronnyh setej / R. Kallan. - M.: Izdatel'skij dom "Vil'jams", 2001. - 288 p. 3. Dmitrienko V.D. Osnovy teorii nejronnyh setej / V.D. Dmitrienko, N.I. Korsunov. - Belgorod: BIIMMAP, 2001. - 159 p. 4. Komashinskij V.l. Nejronnye seti i ih primenenie v sistemah upravlenija i svjazi / V.l. Komashinskij, D.A. Smirnov. - M.: Gorjachaja linija - Telekom, 2002. - 94 p. 5. Bodjanskij E.V. Iskusstvennye nejronnye seti: arhitektury, obuchenie, primenenie / E.V. Bodjanskij, O.G. Rudenko. - Har'kov: TELETEH, 2004. - 372 p.

6. Galushkin A.I. Nejrokomp'jutery i ih primenenie na rubezhe tysjacheletij v Kitae: v 2 t. /A.I. Galushkin. - T. 1. - M.: Gorjachaja linija - Telekom, 2004. - 367 p. 7. Barskij A.B. Nejronnye seti: raspoznavanie, upravlenie, prinjatie reshenij / A.B. Barskij. - M.: Finansy i statistika, 2004. - 176 p. 8. Osovskij S. Nejronnye seti dlja obrabotki informacii / S. Osovskij. -M.: Finansy i statistika, 2004. - 344 p. 9. Hajkin S. Nejronnye seti: polnyj kurs / S. Hajkin. - M:. Izd. dom "Vil'jams", 2006. - 1104 p. 10. Jah"jaeva G.Je. Nechetkie mnozhestva i nejronnye seti: Uchebnoe posobie / G.Je. Jah"jaeva. - M.: Internet-Universitet Informacionnyh Tehnologij; BINOM. Laboratorija znanij, 2006. - 316 p. 11. Galushkin A.I. Nejronnye seti: osnovy teorii /A.I. Galushkin. - M.: Gorjachaja linija - Telekom, 2010. - 496 p. 12. RutkovskijLeshek. Metody

i tehnologii iskusstvennogo intellekta / Leshek Rutkovskij. - M.: Gorjachaja linija - Telekom, 2010. - 520 p. 13. Dmitrienko V.D. Modelirovanie i optimizacija processov upravlenija dvizheniem dizel'-poezdov / V.D. Dmitrienko, A.Ju. Zakovorotnyj. - Har'kov: Izd. centr NTMT, 2013. - 248 p. 14. Dmitrienko V.D. Pristrij bagatosharovoi dvonapravlenoi asociativnoi pam'jati / V.D. Dmitrienko, O.Ju. Zakovorotnij, LP. Havina, V.O. Brechko // Patent na vinahid 108947 Ukraina, MPK G06G 7/60. Zajavnik ta volodar patentu NTU "HPI". - № a 2014 02402; Zajavleno 11.03.2014; Opublikovano 25.06.2015; Bjul. № 12.

Поступила (received) 7.10.2015

Статью представил д-р техн. наук, проф., заслуженный изобретатель Украины, зав. кафедрой "Системы информации" НТУ "ХПИ" Серков А.А.

Dmitrienko Valerii, Dr. Tech. Sci., Professor

National Technical University "Kharkov Polytechnic Institute"

Str. Frunze, 21, Kharkov, Ukraine, 61002

tel./phone: +38 (057) 707-61-98, e-mail: valdmitrienko@gmail.com ORCID ID: 0000-0003-2523-595X

Migushenko Ruslan, Dr. Tech. Sci., Prorector,

National Technical University "Kharkov Polytechnic Institute"

Str. Frunze, 21, Kharkov, Ukraine, 61002

tel./phone: +38 (057) 707-61-98, e-mail: serleomail@gmail.com

ORCID ID: 0000-0003-2523-595X

Zakovorotniy Alexandr, Cand. Tech. Sci., Docent, Doctoral Candidate National Technical University "Kharkov Polytechnic Institute" Str. Frunze, 21, Kharkov, Ukraine, 61002 tel./phone: +38 (067) 546-35-27, e-mail: arcade@i.ua ORCID ID: 0000-0003-4415-838X

Brechko Veronika, Post Graduate Student National Technical University "Kharkov Polytechnic Institute" Str. Frunze, 21, Kharkov, Ukraine, 61002 tel./phone. (066) 311-12-81, e-mail: trin_all@mail.ru ORCID ID: 0000-0001-9578-2102