Кластеризация данных однослойными импульсными нейронными сетями с динамически формируемыми синаптическими терминалами
Автор: Краснощков Александр Александрович
Журнал: Вестник Донского государственного технического университета @vestnik-donstu
Рубрика: Физико-математические науки
Статья в выпуске: 3 (46) т.10, 2010 года.
Бесплатный доступ
Предложен усовершенствованный метод построения и обучения однослойных импульсных нейронных сетей. Разработанный метод позволяет применять однослойные импульсные нейронные сети, кодирующие каждое измерение входных данных одним нейроном входного слоя, для распознавания разномасштабных и пересекающихся кластеров при обучении «без учителя». Представленный подход позволяет получить приемлемую точность классификации и способность распознавания сложных кластеров данных при значительно упрощённой структуре нейронной сети.
Импульсные нейронные сети, классификация данных, хеббовское обучение, обучение "без учителя"
Короткий адрес: https://sciup.org/14249360
IDR: 14249360
Текст научной статьи Кластеризация данных однослойными импульсными нейронными сетями с динамически формируемыми синаптическими терминалами
Введение. В классических [1, 2] моделях построения искусственных нейронных сетей значение функции активации нейрона ϕ (выходной сигнал) ассоциируется с частотой генерации импуль- сов. Таким образом, значение y функции активации нейрона k (рис.1), являясь нелинейным пре-
m
образованием взвешенной суммы его
входных значений укФ
Е w j xi
, определяет частоту
V j= 1
генерации импульсов данным нейроном в ответ на входной вектор x = ( x 1 ,x2,...,x m ) .

Рис.1. Модель нейрона: x j , j е [ 1, m ] - входные сигналы;
W j j е [ 1, m ] - веса синапсов; V k - взвешенная сумма X j ; ф - функция активации
Описанный подход к определению принципа функционирования нейрона применяется в первых двух поколениях нейронных сетей [3] (1-е поколение: многослойный персептрон, сети
Хопфилда, машины Больцмана; 2-е поколение: сети прямого распространения, рекуррентные сети, радиально-базисные сети).
В настоящее время нарастающей тенденцией становится использование импульсных нейронных сетей [2, 4, 5] ( spiking neural networks ), сетей 3-го поколения, являющихся более адекватными с точки зрения нейробиологического моделирования [4, 6]. В рамках этого типа сетей вычисления производятся уже на уровне отдельных импульсов, а не средней частоты их генерации. Таким образом, понятие функции активации заменяется понятием модели импульсного ответа (spike response function) , модели изменения потенциала нейрона во времени.
Итак, импульсная сеть представляет собой сеть прямого распространения с несколькими терминалами в каждой синаптической связи (рис.2).

Рис.2. Каждый синапс состоит из множества терминалов с различной задержкой, таким образом, влияние нейрона i на потенциал нейрона j в момент времени t равен 11^(t -(t +d”)), где m — коли- чество терминалов; wk – вес терминала k; d k – задержка терминала k, ti – время генерации импульса нейроном i; ε(Δt) – функция изменения потенциала (spike response function) нейрона [7]
Входной вектор кодируется во времени и подаётся на вход сети в виде импульсов, которые, следуя по синаптическим связям, передаются сети с разными временными задержками. Каждый полученный импульс может повысить или понизить потенциал нейрона. Нейрон, получив определённое количество импульсов и достигнув заданного уровня активации (значения внутренней переменной - потенциала), генерирует импульс, который передаётся далее по сети.
Таким образом, вычисления проводятся на уровне отдельных импульсов, а механизм взаимодействия нейронов основывается на временном домене. Более подробно импульсные сети описаны в работах [4,5,7].
Идея использования импульсных нейронных сетей для классификации данных «без учителя» была предложена Хопфилдом [8]. В [9] был предложен обучающий алгоритм, который использует временное кодирование входного вектора в задержки синаптических терминалов для нахождения центров многомерных кластеров данных. В работе Бохте [7]. доказывается, что данный метод имеет ряд недостатков и предлагается его следующая итерация с использованием концепции локальных полей ( local respective fields ), основанная на принципах действия биологических нейронов.
В данной работе рассмотрен частный случай применения импульсных сетей – однослойная импульсная нейронная сеть для кластеризации данных. Предложен алгоритм построения и обучения этого типа сети, основанный на динамически формируемых синаптических терминалах и адаптивном Хеббовском обучении [1]. Целью создания алгоритма является получение соизме- римой алгоритму Бохте точности классификации при значительно меньшем количестве используемых нейронов.
Постановка задачи. Рассмотрим принцип кодирования входных векторов данных в однослойной импульсной нейронной сети, в частности, случай кодирования векторов напрямую во временной домен и случай кодирования с применением концепции локальных полей.
При обоих типах кодирования входных данных (рис.3) используется однослойная сеть прямого распространения со множеством терминалов на каждый синапс. Как уже было сказано во введении, нейрон генерирует импульс, когда его потенциал (внутреннее состояние) пересекает определённый предел υ. Соотношение между полученными импульсами и изменением потенциала нейрона описывается моделью импульсного ответа ( spike response model ).

Рис.3. Структура сети: a – нейросеть, проецирующая 4-мерные входные данные на три кластера; б – нейросеть, выполняющая то же преобразование с использованием концепции локальных полей; в – функция импульсного ответа; г – функция обучения
Потенциал нейрона j (см.рис.2) представляется в общем виде m
Xj(t) - ZZ wy. (t), igrj k-1 ij ij
где Гj – множество нейронов, предшествующих j; w k – вес терминала k синапса между нейронами i и j; y k – невзвешенный вклад терминала k в состояние потенциала нейрона, y X1)=8 (t - ti - dk), 1
d k – задержка терминала k; t i – время генерации импульса нейроном i; ε – функция импульсного ответа (см.рис.3,в),
t
8(t ) = —e T , (3)
τ t>0, τ – константа, определяющая время угасания импульса.
Входные векторы данных кодируются в веса синапсов (терминалов) с применением временного варианта обучения Хебба, после чего время генерации импульса конкретным нейроном отражает расстояние между входным вектором и вектором, на который настроен нейрон (тем самым реализуя временной вариант радиально-базисного нейрона). Для схемы обучения “без учителя” используется правило “победитель получает всё” - на каждой итерации изменяются веса только одного нейрона, первым сгенерировавшего импульс.
Временной вариант обучения Хебба предполагает положительное изменение веса терминала, если он передал нейрону входной импульс непосредственно перед генерацией выходного импульса, т.е. повлиял на него, и отрицательное – в противном случае. Вес каждого терминала, предшествующего нейрону-победителю, изменяется по следующей формуле (см.рис.3,г):
- ( At - c ) 2
k
Aw = nL ( At ) = n ( 1 - b ) e в ij
+b
,
где Δw k – изменение веса k после обучения нейрона i; η – температура обучения; β – ширина положительной части функции; b – максимальное значение уменьшения веса терминала; c – центр обучающей функции.
Таким образом, сеть синхронизируется, и каждый нейрон настраивается на определённый кластер.
При кодировании входного вектора напрямую во временной домен каждый его компонент отображается на дискретный временной интервал T={1,2,...,n} и подаётся на входной нейрон в момент времени t g T. Этот простой способ кодирования применим в случае распознавания не- пересекающихся кластеров данных.
Для выявления пересекающихся кластеров в работе [7] предлагается кодировать компоненты вектора популяциями нейронов. Целью данного подхода является повышение точности распознавания за счёт преодоления минимальной дискретной разрешающей способности терминалов.
Оптимально стимулированный нейрон в популяции, отвечающий за определённый компонент входного вектора, генерирует импульс в момент времени, близкий к 0, его соседи - с большей задержкой, а наименее стимулированные нейроны произведут импульс только в момент времени 9 (рис.4).

Рис.4. Графическое представление концепции локальных полей: T n (A) – время генерации импульса нейроном входного слоя (на рис. представлены 8 нейронов, остальные отмечены как other)
n
Для компонента входного вектора n с минимальным значением I и максимальным значением
n
I и m нейронов популяции время генерации импульса нейроном н е [1..m] определяется с по-
{I — I }
1 max min c=
Y m — 2
Данный метод точно распознаёт сложные кластеры, например, на наборе данных Фишера достигнута средняя точность классификации в 92,6% [7].
Для получения соизмеримой точности при распознавании сложных кластеров без усложнения архитектуры (применения локальных полей нейронов, использования многослойной архитектуры) предлагается следующий алгоритм построения сети.
Метод решения. Разберём процесс на уровне пары нейронов: входного нейрона i и выходного j .
Используем прямое кодирование входных векторов во временной интервал, но, в отличие от кодирования входного вектора напрямую во временной домен, не привязываем их к дискретному набору значений. Получаем относительное временное значение t компонента xi вектора X из формулы xi
n x i — I m n
n I
— I
max m n
nn где I и I - минимальное и максимальное значения для компонента xi .
В результате преобразования получаем t i на интервале [0, 1] и подаём в это время импульс на нейрон i . В начале обучения синапс s ij нейросети инициализируется случайным образом, т.е. наполняется определённым количеством терминалов с произвольными весами [0, w max ] и задержками [0, 1] .
Так как каждый синапс имеет разный начальный набор терминалов, различные нейроны выходного слоя получают различные временные серии импульсов от нейрона i и, соответственно, изменения их потенциалов принимают различные формы, следуя (1). Для эмуляции локальных полей нейрона без применения кодирования входных компонентов популяциями нейронов предлагается использовать следующую модель импульсного ответа нейрона:
x 2
S ( t ) = e 2c2 ,
она позволяет достичь эффекта, сходного с применением концепции локальных полей нейрона, но с переносом на более низкий уровень – уровень терминалов.
Нейрон, потенциал которого первым превышает предел, является победителем, и терминалы, предшествующие ему, подвергаются обучению. При этом перед началом обучения предла- гается добавлять терминал с нулевым весом в каждую синаптическую связь и задержкой, совпадающей с центром обучающей функции и равной tj-ti. В процессе обучения вновь созданный терминал получает максимальное положительное изменение веса. Остальные веса терминалов из- меняются, следуя
- ( ^t - c ) 2
k βk
^w = nL ( ^t ) = n ( 1 — b ) e ij
+ b ,
где ширина положительного окна является уже динамической величиной, зависящей от количества терминалов, находящихся в радиусе r от терминала k,
βk=
β
где β – эталонная ширина обучающей функции; Dr – количество терминалов синапса t p, отве чающих Idp-d *1 < r; r- радиус.
Введение новой переменной придаёт обучающей функции адаптивность, т.е. для каждого кластера обучающая функция принимает различную ширину. После обучения терминалы с нулевыми и отрицательными весами удаляются из синапса.
Важным аспектом метода является ограничение, накладываемое на суммарный импульс, полученный нейроном от синапса s p в момент времени t :
E w k8 ( t - t ) lεT
< a—,
n
где T – множество терминалов синапса; α – предполагаемая степень корреляции компонентов входного вектора.
Для моделирования представленного метода была создана программа для ЭВМ на языке программирования python. Программа распространяется под лицензией MIT и доступна по адресу Результаты выполнения программы представлены на сайте проекта.
В результате проведённых компьютерных экспериментов было показано, что представленный метод даёт среднюю точность в 81,56% при классификации набора данных Фишера, содержащего сложные кластеры. Полученные результаты показывают, что с помощью представленного метода можно получить 5-кратное уменьшение количества нейронов при потере точности классификации в 11%.
Выводы
Предложенный в данной работе метод основан на применении концепции локальных полей нейрона на терминальном уровне. Важным аспектом данного метода является применение концепции динамической реструктуризации терминалов синаптических связей.
Представленный метод позволяет перенести вычислительную нагрузку на синапсы сети, тем самым упростить её структуру за счёт уменьшения количества нейронов. Из полученных экспериментальных данных следует, что применение предложенного метода позволяет снизить вычислительную нагрузку при моделировании (фаза обучения и фаза тестирования) однослойной импульсной сети на 67,2 %.
Полученные импульсные сети имеют адаптивное поведение и являются помехоустойчивыми. То есть динамически добавленные во время обучения кластеры входных данных будут успешно классифицированы.
Метод применим для широкого круга систем, в том числе для систем, требующих высокой скорости обработки данных, близких к системам реального времени.
Список литературы Кластеризация данных однослойными импульсными нейронными сетями с динамически формируемыми синаптическими терминалами
- Хайкин С. Нейронные сети. Полный курс/С. Хайкин. -М.: Вильямс, 2006. -С.43-48, 95.
- Henk A.K. Mastebroek, Johan E. Vos Plausible neural networks for biological modelling.//Kluwer Academic Publishers, 2001. -С.23-33.
- Olivier B., Manuel C. A survey on continuous time computations.//Springer, 2008, -С. 5,6.
- Maass W. Networks of Spiking Neurons: The Third Generation of Neural Network Models//Neural Networks, 1997, Vol. 10, Issue 9. -С. 1659-1671.
- Терехин А.Т. Нейросетевое моделирование когнитивных функций мозга: обзор основных идей/А.Т. Терехин, Е.В. Будилова, Л.М. Качалова, М.П. Кариенко//Психологические исследования: электрон. журн. -2009. -№ 2(4). URL: http://psystudy.ru (01.12.09). 20-22.
- Maass W., Natschläger T. Associative memory with networks of spiking neurons in temporal coding//Neuromorphic Systems: Engineering Silicon from Neurobiology. Amsrerdam: World Scientific, 1998. -С. 21-32.
- Bohte S.M., La Poutré H., Kok J.N. Unsupervised classification in a layered network of spiking neurons//2002, IEEE Transactions on Neural Networks, 13(2), March 2002. -С. 426-435.
- Hopfield, J. Pattern recognition computation using action potential timing for stimulus repre-sentation//Nature 376, 1995. -С.33-36.
- Natschlager T., Ruf, B. Spatial and temporal pattern analysis via spiking neurons//Network: Computational Neural Systems. 9(3), 1998. -C. 319-338..