Опубликован: 27.07.2006 | Доступ: свободный | Студентов: 5718 / 1224 | Оценка: 4.37 / 4.06 | Длительность: 13:49:00
ISBN: 978-5-9556-0049-9
Специальности: Программист
Лекция 6:

Сети встречного распространения

Нормальное функционирование

Слои Кохонена

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

Ассоциированное с нейронами Кохонена множество весов связывает каждый нейрон с каждым входом. Например, на рис. 6.1 нейрон Кохонена K_1 имеет веса w_{11}, w_{21}, \ldots, w_{m1}, составляющие весовой вектор W_1. Они соединяются через входной слой с входными сигналами x_1, x_2, \ldots, x_m, составляющими входной вектор \bf X. Подобно нейронам большинства сетей, выход NET каждого нейрона Кохонена является просто суммой взвешенных входов. Это может быть выражено следующим образом:

NET_j=\sum_i x_i w_{ij}

где NET_j — это выход NET нейрона Кохонена j, или, в векторной записи,

N=XW,

где N — вектор выходов NET слоя Кохонена.

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

Слой Гроссберга

Слой Гроссберга функционирует в сходной манере. Его выход NET является взвешенной суммой выходов k_1, k_2, \ldots, k_n слоя Кохонена, образующих вектор K. Вектор соединяющих весов, обозначенный через V, состоит из весов v_{11}, v_{12},
\ldots, v_{\text{np}}. Тогда выход NET каждого нейрона Гроссберга есть

NET_j=\sum_i k_i v_{ij},

где NET_j — выход j -го нейрона Гроссберга, или, в векторной форме,

Y = KV,

где Y — выходной вектор слоя Гроссберга, K — выходной вектор слоя Кохонена, Vматрица весов слоя Гроссберга.

Если слой Кохонена функционирует таким образом, что лишь у одного нейрона величина NET равна единице, а у остальных равна нулю, то всего один элемент вектора K отличен от нуля и вычисления очень просты. Фактически каждый нейрон слоя Гроссберга лишь выдает величину веса, который связывает этот нейрон с единственным ненулевым нейроном Кохонена.

Обучение слоя Кохонена

Слой Кохонена классифицирует входные векторы в группы схожих. Это достигается с помощью такой подстройки весов слоя Кохонена, что близкие входные векторы активируют один и тот же нейрон данного слоя. Затем задачей слоя Гроссберга является получение требуемых выходов.

Обучение Кохонена является самообучением, протекающим без учителя. Поэтому трудно (и не нужно) предсказывать, какой именно нейрон Кохонена будет активироваться для заданного входного вектора. Необходимо лишь гарантированно добиться, чтобы в результате обучения разделялись несхожие входные векторы.