Искусственная нейронная сеть Хемминга

Искусственная нейронная сеть Хемминга (рис.1) была предложена в 1987 г. Р. Липманом [1,2]. Она представляет собой сеть с двумя обрабатывающими слоями: первый слой - слой Хемминга, второй слой - немного изменённая сеть Хопфилда.

нейронная сеть Хемминга

На вход нейронной сети подаётся картинка в формате BMP, размером 17 x 31 точек, представляющая собой матрицу 51 x 31 байт, таким образом входной (или распределительный) слой сети (слой 0 на рис.1) состоит из 51 x 31 = 1581 нейронов.

Размерность скрытого слоя ( слой 1 на рис.1) определяется количеством идеальных образцов, хранимых сетью, т.е. 10 нейронов. Размерность выходного слоя равна размерности скрытого слоя нейронной сети, т.е. так же 10 нейронов.

На выходе получаем вектор y(y0...y9) . Номер j , для которого yj[2]> 0, соответствует номеру класса входного образца.

1.1 Параметры сети

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

Для этого слоя используется линейная функция активации. Состояние и выходное значение нейрона i слоя 1 определяется следующим образом:


где
yi[1] - выходное значение нейрона i слоя 1;
si[1] - состояние нейрона i слоя 1;
yj[0] - вход нейронной сети номер j ;
wij[1] - весовой коэффициент синаптической связи, соединяющей вход j нейронной сети и нейрон i слоя 1;

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

Начальное состояние нейронов слоя 2 определяется выходом первого слоя:

si[2](0)=yi[1]

Отношение переходов между состояниями нейронов слоя 2 определяется следующим образом: (1)

где
si[2](t) - состояние нейрона i слоя 2 в момент времени t;
yi[2](t) - выходное значение нейрона i слоя 2 в момент времени t;
c - коэффициент торможения, 0< c < 0.1;

Легко видеть, что отношение переходов (1) эквивалентно обычному определению состояния нейрона (сумма взвешенных входов) с постоянной матрицей весов(2).


В качестве функции активации слоя 2 будем использовать следующую функцию :

1.2 Метод обучения

Для нейронной сети Хемминга используется метод обучения "без учителя". Весовые коэффициенты слоя 1 определяются следующим образом:
wji[1]=0.5 * xi j (3)
где
wji[1] - весовой коэффициент синаптической связи, соединяющей вход i нейронной сети и нейрон j слоя 1;
xi j - компонента номер i идеального (учебного) вектора номер j;

Весовые коэффициенты слоя 2 фиксированы отношением переходов(1).

Алгоритм обучения нейронной сети сводится к начальной инициализации матрицы весов слоя 1 по (3).

Powered by Drupal - Design by artinet