Россия, Москва |
Рекуррентные сети как ассоциативные запоминающие устройства
Сеть Хемминга
Сеть Хемминга включает в себя три слоя (рис.2).
Первый слой имеет однонаправленное распространение сигналов от входа к выходу и фиксированные значения весов.
Второй слой состоит из нейронов, связанных обратными связями по принципу
"каждый с каждым", при этом в каждом нейроне слоя существует
автосвязь
(связь входа нейрона со своим собственным выходом). Разные нейроны в слое
связаны отрицательной (тормозящей) обратной связью с весом , при этом
величина
обычно обратно пропорциональна количеству
образов. С
собственным входом нейрон связан положительной (возбуждающей) обратной
связью с весом, равным +1. Пороговые веса нейронов приняты
равными нулю.
Нейроны этого слоя функционируют в режиме
, при котором в
каждой
фиксированной ситуации активизируется только один нейрон, а остальные
пребывают в состоянии покоя.
Выходной однонаправленный слой формирует выходной вектор, соответствующий входному вектору.
Сеть Хемминга считается гетероассоциативным запоминающим устройством с
парой связанных между собой векторов , где
и
- входной и выходной
биполярные векторы сети.
Веса первого слоя соответствуют векторам , т.е.
![\begin{align*}
w_{ij}^{(1)}=x_{ij}.
\end{align*}](/sites/default/files/tex_cache/93f423ab3653f75d7caad8e7cb1d6a5c.png)
Аналогично, веса выходного слоя соответствуют векторам образов ,
связанных с
:
![\begin{align*}
w_{ij}^{(3)}=y_{ij}.
\end{align*}](/sites/default/files/tex_cache/d084afbfbc4731940769dc06268765f0.png)
Во втором слое (MAXNET), функционирующем в режиме WTA (Winner Takes ALL - "Победитель забирает все"), каждый нейрон должен усиливать собственный сигнал и ослаблять сигналы остальных нейронов. Для этого принимается
![\begin{align*}
w_{ij}^{(2)}=1,
\end{align*}](/sites/default/files/tex_cache/97c075f527d249e06bf57d90d5930782.png)
а также
![\begin{align*}
-1/(p-1) < w_{ij}^{(2)} < 0,\quad i\neq j.
\end{align*}](/sites/default/files/tex_cache/c5820bc1503de3000d4ab7f2d4b47ebf.png)
Для обеспечения сходимости итерационного процесса во втором слое веса
![\begin{align*}
w_{ij}^{(2)}= - 1/(p-1)+ \xi,
\end{align*}](/sites/default/files/tex_cache/85fe373ce8cc3f108d84532c18cb97c2.png)
где - достаточно малая случайная величина,
.
Нейроны первого слоя рассчитывают расстояния Хемминга
между
поданным на вход сети вектором
и векторами весов
нейронов этого слоя. Значения выходных сигналов нейронов первого слоя
определяются по формуле
![\begin{align*}
y_i^{(1)}=1- d_H(x,y)/N,
\end{align*}](/sites/default/files/tex_cache/07b8259f65d2e143979911658f10dd8b.png)
где - число компонент вектора
.
Сигналы становятся начальными состояниями нейронов
второго слоя.
Этот слой определяет "победителя", т.е. нейрон, выходной сигнал
которого
близок к 1. Такой нейрон указывает на вектор образа с минимальным
расстоянием
Хемминга до входного вектора
. Функция активации для нейронов
второго слоя
задается выражением
![\begin{align*}
f(y)=
\left \{
\begin{array}{rcl}
y, \mbox{ если } y>0, \\
0, \mbox{ если } y < 0. \\
\end{array}
\right.
\end{align*}](/sites/default/files/tex_cache/70c3488fee7a923fc45fe5f057571011.png)
Итерационный процесс во втором слое завершается, когда активным остается
только один нейрон (победитель), тогда как остальные нейроны пребывают в
нулевом состоянии. Победитель через веса линейных
нейронов
выходного слоя представляет вектор
, который соответствует
вектору
,
признанному вторым слоем ближайшим к входному вектору
.
Достоинством сети Хемминга считается небольшое количество взвешенных связей между нейронами. Многочисленные эксперименты доказали, что сеть Хемминга дает лучшие результаты, чем сеть Хопфилда. Единственная проблема, связанная с сетью Хемминга, проявляется в случае, когда зашумленные образы находятся на одинаковом (в смысле Хемминга) расстоянии от двух или более эталонов. В этом случае выбор сетью Хемминга одного из эталонов становится случайным.