Архитектура сетей Кохонена

Сети Кохонена (Kohonen T.) [3–4, 9] относятся к самоорганизующимся нейронным сетям. Самоорганизующаяся сеть позволяет выявлять кластеры (группы) входных векторов, обладающих некоторыми общими свойствами. При этом выделяют сети с неупорядоченными нейронами (часто называемые слоями Кохонена) и сети с упорядочением нейронов (часто называемые картами Кохонена). Карты Кохонена отражают структуру данных таким образом, что близким кластерам данных на карте соответствуют близко расположенные нейроны.

Сеть Кохонена — это однослойная сеть, каждый нейрон которой соединен со всеми компонентами Архитектура сетей Кохонена - student2.ru ‑мерного входного вектора. Количество нейронов

В качестве нейронов сети Кохонена применяются линейные взвешенные сумматоры. Для обучения сети применяются механизмы конкуренции. Если обозначить вектор весов Архитектура сетей Кохонена - student2.ru ‑го нейрона сети Кохонена как Архитектура сетей Кохонена - student2.ru , то сеть работает следующим образом. При подаче на вход сети вектора Архитектура сетей Кохонена - student2.ru побеждает тот нейрон, веса которого в наименьшей степени отличаются от соответствующих компонентов входного вектора. Для нейрона‑победителя выполняется соотношение

Архитектура сетей Кохонена - student2.ru ,

где Архитектура сетей Кохонена - student2.ru — количество нейронов, Архитектура сетей Кохонена - student2.ru — номер нейрона‑победителя, Архитектура сетей Кохонена - student2.ru — расстояние (в смысле выбранной метрики) между векторами Архитектура сетей Кохонена - student2.ru и Архитектура сетей Кохонена - student2.ru .

Чаще всего в качестве меры расстояния используется эвклидова мера

Архитектура сетей Кохонена - student2.ru .

Используются и другие меры расстояния (метрики) [2].

Веса нейрона-победителя подвергаются обучению (адаптации) по правилу Кохонена [1, 2]

Архитектура сетей Кохонена - student2.ru

где Архитектура сетей Кохонена - student2.ru — коэффициент скорости обучения Архитектура сетей Кохонена - student2.ru ‑го нейрона.

В пакете Neural Network Toolbox системы MATLAB принято следующее обозначение сети Кохонена (рис. 3.1). Сеть Кохонена — это слой конкурирующего типа (Competitive Layer), поскольку в нем применена конкурирующая функция активации. Здесь использован блок ndist для вычисления отрицательного евклидова расстояния между вектором входа p и строками матрицы весов IW11 (строка матрицы весов — это веса одного нейрона сети). Отрицательное евклидово расстояние вычисляется функцией negdist по формуле z = -sqrt(sum(w-p)^2)

Архитектура сетей Кохонена - student2.ru

Рис. 3.1. Архитектура слоя Кохонена

Вход функции активации n1 — это результат суммирования отрицательного евклидова расстояния с вектором смещения b. Если все смещения нулевые, максимальное значение n1 не может превышать 0. Нулевое значение n1 возможно только, когда вектор входа p оказывается равным вектору веса одного из нейронов. Если смещения отличны от 0, то возможны и положительные значения для элементов вектора n1.

Конкурирующая функция активации (блок C на рис. 3.1) анализирует значения элементов вектора n1 и формирует выходы нейронов, равные 0 для всех нейронов, кроме одного "нейрона-победителя", имеющего на входе максимальное значение. Таким образом, вектор выхода имеет единственный элемент, равный 1, который соответствует нейрону-победителю, а остальные равны 0. Таким образом, в сети Кохонена используются нейроны типа WTA (Winner Takes All — победитель получает все). Номер активного нейрона определяет ту группу (кластер), к которой наиболее близок входной вектор.

Наши рекомендации