Нейрокомпьютерная техника. Теория и практика
bf1271d8

КОДИРОВАНИЕ АССОЦИАЦИЙ


Обычно сеть обучается распознаванию множества образов. Обучение производится с использованием обучающего набора, состоящего из пар векторов A и B. Процесс обучения реализуется в форме вычислений; это означает, что весовая матрица вычисляется как сумма произведении всех векторных пар обучающего набора. B символьной форме

                                              

Предположим, что все запомненные образы представляют собой двоичные векторы. Это ограничение покажется менее строгим, если вспомнить, что все содержимое Библиотеки Конгресса может быть закодировано в один очень длинный двоичный вектор. В работе [11] показана возможность достижения более высокой производительности при использовании биполярных векторов. При этом векторная компонента, большая чем 0, становится +1, а компонента, меньшая или равная 0, становится –1.

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



Исходный вектор

Ассоциированный вектор

Бинарная версия

A1 = (1,0,0)

B1 = (0,0,1)

A’1 = (1,–1,–1)

B’1 = (–1,–1,1)

A2 = (0,1,0)

B2 = (0,1,0)

A’1 = (–1,1,–1)

B’1 = (–1,1,–1)

A3 = (0,0,1)

B3 = (1,0,0)

A’1 = (–1,–1,1)

B’1 = (1,–1,–1)

Вычисляем весовую матрицу

                                               W = A’1t B’1 + A’2t B’2 + A’3t B’3

–1

–1

1

+

1

–1

1

+

–1

1

1

=

–1

–1

3

1

1

–1

–1

1

–1

–1

–1

1

–1

3

–1

1

1

–1

1

–1

1

1

–1

–1

3

–1

–1

Далее прикладывая входной вектор А = (1,0,0), вычисляем выходной вектор О

O = A1t W = (1,0,0) x

1

–1

3

=

(–1,–1,3)

–1

3

–1

3

–1

–1

 

Используя пороговое правило


                          bi

= 1, если oi > 0,

                          bi

= 0, если oi < 0,

                          bi

= 0, не изменяется, если oi = 0

вычисляем

                                               B’1 = (0,0,1),

что является требуемой ассоциацией. Затем, подавая вектор В1 через обратную связь на вход первого слоя к Wt получаем

O = B’1 Wt = (0,0,1) x

1

–1

3

=

(3,–1,–1)

–1

3

–1

3

–1

–1

что дает значение (1,0,0) после применения пороговой функции, образуя величину вектора A1.

Этот пример показывает, как входной вектор A с использованием матрицы W производит выходной вектор B. В свою очередь вектор B с использованием матрицы Wt производит вектор A, таким образом в системе формируется устойчивое состояние и резонанс.

ДАП обладает способностью к обобщению. Например, если незавершенный или частично искаженный вектор подается в качестве A, сеть имеет тенденцию к выработке запомненного вектора B, который в свою очередь стремится исправить ошибки в A. Возможно, для этого потребуется несколько проходов, но сеть сходится к воспроизведению ближайшего запомненного образа.

Системы с обратной связью могут иметь тенденцию к колебаниям; это означает, что они могут переходить от состояния к состоянию, никогда не достигая стабильности. В [9] доказано, что все ДАП безусловно стабильны при любых значениях весов сети. Это важное свойство возникает из отношения транспонирования между двумя весовыми матрицами и означает, что любой набор ассоциаций может быть изучен без риска возникновения нестабильности.

Существует взаимосвязь между ДАП и рассмотренными в гл. 6 сетями Хопфилда. Если весовая матрица

W является квадратной и симметричной, то W=Wt. В этом случае, если слои 1 и 2 являются одним и тем же набором нейронов, ДАП превращается в автоассоциативную сеть Хопфилда.


Содержание раздела