ИНФОРМАЦИОННО-УПРАВЛЯЮЩИЕ СИСТЕМЫ X
УДК 004.8
РЕКУРРЕНТНАЯ НЕЙРОННАЯ СЕТЬ СО СПИРАЛЬНОЙ СТРУКТУРОЙ СЛОЕВ
В. Ю. Осипов,
доктор техн. наук, профессор
Санкт-Петербургский институт информатики и автоматизации РАН
Исследованы возможности рекуррентной нейронной сети со спиральной структурой слоев. Рассмотрен алгоритм ее функционирования. Приведены результаты моделирования. Показано, что такая сеть при встречном продвижении совокупностей единичных образов вдоль слоев обладает избирательностью по обработке информации. За счет такого продвижения расширяются возможности сети по запоминанию и ассоциативному извлечению из памяти сигналов.
Ключевые слова — нейронная сеть, спиральная структура, встречное продвижение, совокупности единичных образов.
Введение
Одним из приоритетных направлений в области искусственного интеллекта выступает развитие нейронных сетей. На их основе ученые надеются создать ассоциативные интеллектуальные системы, способные оперативно решать широкий спектр трудноформализуемых творческих задач. Несмотря на достигнутые успехи по обработке информации нейронными сетями, пока не удалось наделить эти сети полноценным интеллектом [1]. Известные нейронные сети ориентированы лишь на решение узкого класса прикладных задач [2-4]. Одной ассоциативности, как свойства нейронных сетей, недостаточно для обеспечения их широких интеллектуальных возможностей [5]. Необходимо наделение нейронных сетей дополнительными свойствами.
Предложено [6, 7] осуществлять в рекуррентных нейронных сетях (РНС) сдвиги совокупностей единичных образов при передаче от одного слоя к другому. За счет этих сдвигов удается наделять РНС логической структурой и обеспечивать продвижение совокупностей единичных образов (СЕО) вдоль слоев. Установлено [8], что наибольшими преимуществами по ассоциативным возможностям обладают РНС со спиральной структурой слоев. Для этих сетей исследованы аспекты ассоциирования единичных образов при однонаправленном продвижении их совокупностей вдоль слоев с переносом окончания строк на начало следующих строк. Влияние на ассоциа-
тивные и другие возможности РНС встречного продвижения СЕО вдоль слоев не рассматривалось. Однако такое продвижение позволяет наделить РНС новыми свойствами по интеллектуальной обработке информации.
Приводятся результаты исследования процессов обработки динамических сигналов в РНС со спиральной структурой слоев при встречном продвижении вдоль них совокупностей единичных образов.
Постановка задачи
Задана двухслойная РНС (рис. 1) с управляемыми синапсами. В эту сеть вводятся сигналы, предварительно разложенные на пространственно-частотные составляющие. При этом каждая составляющая преобразована в последовательность единичных образов с частотой их следования, как функции от амплитуды составляющей. Первый и второй слои сети идентичны и содержат по N нейронов. Каждый нейрон слоя в общем случае связан своими синапсами со всеми нейронами другого слоя. Нейроны одного и того же слоя связей друг с другом не имеют. При передаче СЕО от слоя к слою путем управления синапсами осуществляются пространственные сдвиги этих совокупностей. За счет таких сдвигов слои сети разбиваются на логические поля, а введенные в сеть СЕО продвигаются вдоль слоев. Схемы продвижения СЕО вдоль слоев могут быть различными: линейная, спиральная и др.
Вход
Первый
слой
Первый
блок
единичных
задержек
Первый
блок
синапсов
Второй
слой
Блок
управления
Выход
Второй блок синапсов
Второй блок единичных задержек
■ Рис. 1. Рекуррентная нейронная сеть с управляемыми синапсами
За счет приоритетности коротких связей в этой сети устанавливается однозначное соответствие между ее входом и выходом. При продвижении вдоль слоев СЕО связываются друг с другом, что проявляется в изменении весов синапсов, и вызывают из долговременной памяти ассоциированные с ними сигналы, возбуждая соответствующие нейроны сети. Каждый нейрон возбуждается, если потенциал на его входе превысит заданный порог. При возбуждении нейрона на его выходе формируется единичный образ (импульс), затем нейрон переходит в состояние невосприимчивости. В этом состоянии он находится не меньше, чем время задержки единичных образов в образуемых двухслойных контурах сети.
От принятой схемы продвижения СЕО вдоль слоев этой сети во многом зависят ее ассоциативные возможности. Исследованы [6-9] свойства рассматриваемой сети при однонаправленном продвижении СЕО, в том числе при спиральной схеме с переносом окончания строк на начало следующих строк.
Одной из перспективных неисследованных таких схем, определяющих логическую структуру сети, выступает спиральная схема со встречным продвижением СЕО вдоль ее слоев.
Пример такой логической структуры сети приведен на рис. 2, а—в. На рис. 2, а показан вид сверху на первый слой сети. Введенные в сеть совокупности отражены на рис. 2, а в виде букв и составляют слово «КОТ», записанное в обратном порядке. Каждой букве поставлена в соответствие своя длительность наблюдения и частоты следования свойственных ей единичных образов. Информация о каждой букве передается своей последовательностью СЕО. Поперечные срезы по двум слоям вдоль первой и второй строки отражены на рис. 2, б, в соответственно. Из рис. 2 видно, что СЕО нечетных строк продвигаются слева направо, а четных — навстречу им. Направления продвижения этих совокупностей вдоль слоев показаны стрелками. Ввод совокупностей единичных образов в сеть осуществляется через первое
а)
Т Т
, О О 1
К К .
Выход -Ц.
б)________,__________,__________,
IQQQQQQQ | QQQQQQQ | QOQQQQQ | QQ ... QQ | ОООООООІ
й
й
V
%
V
IQQQQQQQ I QQQQQQQ | QQQQQQQ | QQ ... QQ | QQQOQOÖI
В___________________________ _________
looooooo | ooooooo | ooooooo | oo ... oo | oooooool
& p.
v
&
V
V
|ооооооо I ООООООО I ООООООО I РО ... оо | ооооооо]
■ Рис. 2. Спиральная структура РНС: а — вид сверху на первый слой; б, в — поперечные срезы по двум слоям вдоль первой и второй строки
поле первого слоя, вывод — через последнее поле второго слоя.
Принципиальное отличие этой сети от известных [6-9] состоит именно во встречном продвижении СЕО вдоль слоев. Интерес к встречному продвижению этих совокупностей вызван тем, что можно шире связывать их друг с другом и избирательно запоминать в сети. Кроме этого, встречное продвижение может обеспечить своеобразный поиск и вызов из долговременной памяти наиболее связанных с ними запомненных сигналов.
Необходимо путем моделирования доказать, что РНС со спиральной структурой слоев при встречном продвижении СЕО вдоль них обладает отмеченными свойствами.
Алгоритм функционирования сети
Функционирование интересующей РНС с учетом наделения ее логической структурой и частичного стирания ранее запомненной информации можно описать следующим алгоритмом.
Шаг 1. t — 0. Задание исходных параметров сети (размеров слоев, параметров сдвигов СЕО вдоль них, порогов возбуждения нейронов и других характеристик). Формирование таблиц возможных значений параметров синапсов сети для ускорения последующих вычислений.
Шаг 2. t — t + 1. Ввод в сеть через первое поле первого слоя на ^м такте очередной совокупности единичных образов, несущих информацию о входном сигнале. Считывание с выходного поля второго слоя очередной выходной СЕО.
Шаг 3. к — 0. Если t > Т, то завершение обработки информации.
Шаг 4. к — к + 1. Начало обработки информации относительно к-го слоя.
Шаг 5. I — 0. Если к > К = 2, то пересчет числа запомненных на синапсах единичных образов с учетом нового состояния слоев сети (полученных эффектов от взаимодействия нейронов). Переход к шагу 2.
Шаг 6. I — I + 1. Начало анализа воздействий единичных образов на ¿-й нейрон к-го слоя.
Шаг 7. Если ¿ > N, то переход к шагу 4.
Шаг 8. ] — 0. Если ¿-й нейрон находится в состоянии невосприимчивости (рефрактерности), то переход к шагу 6.
Шаг 9. ] — ] + 1. Начало анализа воздействия на ¿-й нейрон к-го слоя со стороны у-го нейрона другого слоя через ¡¿-й синапс.
Шаг 10. Если у > N, то переход к шагу 13.
Шаг 11. Если у-й нейрон не возбужден, то переход к шагу 9.
Шаг 12. Определение веса ¡¿-го синапса и, соответственно, потенциала, поступающего с него на ¿-й нейрон к-го слоя с учетом пространственных сдвигов СЕО, обеспечивающих формирование требуемой спиральной структуры слоев сети. Прибавление этого потенциала к уже име-емому потенциалу на входе нейрона. Переход к шагу 9.
Шаг. 13. Если суммарный потенциал на входе ¿-го нейрона к-го слоя превышает заданный порог, этот нейрон переводится в состояние возбуждения и на его выходе формируется единичный образ длительностью в один такт. Относительно момента возбуждения начинается также отсчет времени нахождения нейрона в состоянии невосприимчивости. Во всех случаях осуществляется переход к шагу 6 и потенциал на входе нейрона к очередному такту обнуляется.
Прямые и обратные веса синапсов нейронов в этом алгоритме определяются так:
™г() = k¿^(t)P(r¿/t)) и юц (#) = £*• ^ (¿)),
где Р(гу) — функция ослабления, зависящая от Гу — удаленности связываемых через синапсы нейронов (расстояний между ними на плоскости X, У). Полагая, что расстояние между взаимодействующими слоями нейронной сети стремится к нулю, эта функция может задаваться в виде [6]
Р(Гу) — 1/(1 + а(Гу)1/Л),
¿ — 1, 2, ..., N у — 1, 2, ..., N (1)
где а — положительный постоянный коэффициент; к — степень корня; N — число нейронов в каждом слое РНС.
Входящая в (1) величина Гу в единицах нейронов в зависимости от реализуемых простран-
ственных сдвигов СЕО вдоль слоев определяется как [8]
rij = ((Axij + nijd)2 + (tyij + mijq)2)1/2, (2)
nu = ±0, 1, ..., L - 1; mii = ±0, 1, ..., M - 1.
4 *■}
Здесь Axtj, Aytj — проекции связи j-го нейрона с i-м на оси X, Y без учета пространственных сдвигов; d, q — величины единичных сдвигов по координатам X, Y соответственно; L, M — соответственно число столбцов и строк, на которые разбивается каждый слой нейронной сети за счет сдвигов. Произведение d х q определяет площадь рабочего поля каждого слоя сети. Эта площадь равна числу входящих в поле нейронов.
Весовые коэффициенты kjj(t), k*j (t) прямых wtj(f) и обратных w*j (t) весов синапсов являются функциями от gj(t) — числа запомненных на соответствующем синапсе единичных образов:
j = §ij(t - 1) + где g--(t - 1) — число единичных образов, запом-
ij
ненных на синапсе на предыдущем временном
такте; b.-(t) — эффект от единичного взаимодей-
ч
ствия нейронов на t-й момент времени. В частном случае значения весовых коэффициентов kij(t), k*j (t) можно рассчитать по формулам
* kij(t) = 1 - exp(-ygi,(t));
k*j (t) = 1- exp(-y(g;j (t) - go )),
где y — постоянный положительный коэффициент; (gij(t) - g0) — число запомненных единичных образов, которые могут быть стерты с синапса; go = const. Все k*j (t) при gy(t) < go считаются равными нулю. Стирание информации о единичных образах с синапсов осуществимо за счет частичного отражения единичных образов от слоев сети.
Для повышения оперативности определения весов синапсов заранее могут быть сформированы необходимые таблицы возможных значений функции ослабления для заданных сдвигов совокупностей единичных образов вдоль слоев сети и весовых коэффициентов синапсов для различных значений gy(t). Формирование таких таблиц осуществляется на первом шаге алгоритма. В этом случае на 12-м шаге для определения весов синапсов реализуется лишь умножение значений P(riy(t)) и kj(t), извлеченных из соответствующих массивов.
В интересах наделения слоев нейронной сети требуемой логической структурой из одномерных массивов состояний нейронов слоев сети формируются двумерные массивы. Затем они делятся на логические поля размером d х q нейронов. В результате каждый слой можно рассматривать как последовательность строк, каждая шириной q, состоящих из отдельных полей дли-
ной й. Для реализации требуемой спиральной структуры слоев достаточно задать соответствующие параметры п^ и ту в (2) для синапсов, задействованных в передаче совокупностей единичных образов от второго слоя к первому или от первого слоя ко второму. Аналогично могут быть сформированы и другие структуры слоев нейронной сети.
Результаты моделирования
Для доказательства преимуществ исследуемой РНС по сравнению с известными решениями осуществлялось математическое моделирование. Программно, в соответствии с рассмотренным алгоритмом, была реализована РНС, позволяющая за счет изменения параметров й, q и п^, ту для синапсов осуществлять различные сдвиги СЕО вдоль слоев. Каждый слой сети в примере состоял из 2100 нейронов и разбивался за счет пространственных сдвигов СЕО на поля размером й х q — — 6 х 7 нейронов. Путем задания параметров пу, ту сначала формировалась сеть со спиральной структурой слоев при однонаправленном продвижении вдоль них СЕО, с переносом окончания строк на начало следующих строк. В этой сети СЕО нечетных и четных строк продвигались вдоль слоев слева направо. Затем формировалась сеть с исследуемой структурой, как на рис. 2, со встречным продвижением СЕО вдоль слоев.
Как в первом, так и во втором случае в сеть вводились одни и те же последовательности СЕО.
Оценивался прирост суммарного веса синапсов на каждом шаге функционирования сети относительно предыдущего шага: Д^ — Wt - Wt _ 1, где Wt, Wt _ 1 — суммарные веса всех синапсов нейронов сети соответственно на t и t - 1 моменты времени. Результаты оценки представлены на рис. 3, а—г, где 1 — перепады, соответствующие вводу в сеть СЕО, а 2 — покиданию сети СЕО; 3 — перепады, связанные с переходом СЕО с одной строки слоя на другую; 4 — всплески, обусловленные приближением и удалением СЕО друг от друга при встречном продвижении их вдоль слоев сети. На рис. 3, а, б показано изменение ДWt во времени для сети со спиральной структурой слоев с однонаправленным продвижением вдоль них СЕО. Рис. 3, а соответствует случаю обработки последовательности, состоящей из двух, а рис. 3, б — из трех СЕО. Для сети со спиральной структурой слоев со встречным продвижением СЕО результаты оценки ДWt (при обработке этих же последовательностей совокупностей единичных образов) отражены на рис. 3, в, г. Из анализа рис. 3 видно, что резкое изменение ДWt наблюдается при вводе в сеть СЕО и покидании ими ее (перепады 1, 2). Заметим, что оно также проявляется при вызове единичных образов из долговременной в оперативную память сети. Существенное изменение ДWt как в положительную, так и отрицательную сторону для сети со спиральной структурой слоев с однонаправленным продвижением вдоль них СЕО присутствует при переносах этих совокупностей с окончания строк на начало следующих
■ Рис. 3. Прирост суммарного веса синапсов нейронов сети на каждом шаге функционирования: а, б — для случая прямого продвижения СЕО вдоль слоев при обработке сетью последовательности, состоящей, соответственно, из двух и трех совокупностей единичных образов; в, г — при встречном продвижении СЕО
строк (перепады 3 на рис. 3, а, б). В других случаях перепады ДWt не проявляются.
В целом при однонаправленном продвижении СЕО вдоль слоев структура ассоциаций совокупностей единичных образов в сети от шага к шагу существенно не изменяется.
Это свидетельствует о следующем. Долговременная память сети с однонаправленным продвижением СЕО вдоль слоев расходуется не достаточно эффективно. Высока избыточность запоминания на синапсах одних и тех же отношений между единичными образами. Эта сеть обладает ограниченными возможностями по связыванию как отдельных единичных образов, так и СЕО, разнесенных во времени. Частично снизить отрицательное влияние этих факторов на ассоциативные свойства сети можно за счет реализации продвижения СЕО вдоль слоев по спирали с изменяемым диаметром [8].
Рекуррентная нейронная сеть со спиральной структурой слоев при встречном продвижении СЕО вдоль них лишена перечисленных выше недостатков. Этой сети свойственны всплески 4 (см. рис. 3, в, г) показателя ДWt, обусловленные «скольжением» одних совокупностей вдоль других и установлением между ними коротких уникальных связей. Короткие связи, не только по пространству, но и по времени, устанавливаются в такой сети для всех возможных пар СЕО, продвигающихся вдоль слоев. Чем короче пространственные связи между СЕО, тем выше уровень их ассоциативного взаимодействия. При меньшем времени взаимодействия отдельных пар СЕО ниже расходы памяти сети на их запоминание.
Таким образом, встречное продвижение СЕО вдоль слоев позволяет избирательно не только запоминать единичные образы на элементах
1. Хокинс Дж., Блейксли Сандра. Об интеллекте. — М.: Вильямс, 2007. — 240 с.
2. Galushkin A. I. Neural Networks Theory. — Springer-Verlag Berlin Heidelberg, 2007. — 396 p.
3. Хайкин С. Нейронные сети: полный курс. 2-е изд: пер. с англ. — М.: Вильямс, 2006. — 1103 с.
4. Осовский С. Нейронные сети для обработки информации / пер. с польского И. Д. Рудницкого. — М.: Финансы и статистика, 2002. — 344 с.
5. Pentti O. A. Haikonen. The Role of Associative Processing in Cognitive Computing // Cognitive Computation. 2009. Vol. 1. P. 42-49.
сети, но и извлекать ими из долговременной памяти связанные сигналы. Этому новому свойству нейронной сети — избирательности — в какой-то мере можно поставить в соответствие возможность осуществлять ею поиск в памяти наиболее связанной с входными сигналами информации.
Для дальнейшего расширения возможностей этой сети применимо, как и в первом случае, продвижение СЕО вдоль слоев по спирали с изменяемым диаметром.
Проведенные эксперименты по обучению этой нейронной сети и ассоциативному извлечению из ее памяти запомненной информации также подтвердили отмеченные преимущества встречного продвижения СЕО вдоль слоев по сравнению с однонаправленным их продвижением.
Заключение
Предлагается для интеллектуальной обработки информации использовать РНС со спиральной структурой слоев со встречным продвижением вдоль них совокупностей единичных образов. Такая нейронная сеть является логически прозрачной и обладает избирательностью по обработке информации.
В отличие от известных нейронных сетей ей характерны более широкие возможности по запоминанию и ассоциативному вызову из памяти связанной информации.
Предложенный алгоритм функционирования нейронной сети с управляемыми синапсами может быть легко распараллелен и использован при создании перспективных ассоциативных интеллектуальных машин и систем.
6. Осипов В. Ю. Ассоциативная интеллектуальная машина // Информационные технологии и вычислительные системы. 2010. № 2. С. 59-67.
7. Осипов В. Ю. Рекуррентная нейронная сеть с управляемыми синапсами // Информационные технологии. 2010. № 7. С. 43-47.
8. Осипов В. Ю. Оптимизация ассоциативных интеллектуальных систем // Мехатроника, автоматизация, управление. 2011. № 3. С. 35-39.
9. Осипов В. Ю. Нейронная сеть с прошедшим, настоящим и будущим временем // Информационно-управляющие системы. 2011. № 4. С. 30-33.