Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
Мерой коррелированности образов будем называть следующую величину:
Зависимость работы сети Хопфилда от степени коррелированности образов можно легко продемонстрировать на следующем примере. Пусть даны три эталона x1, x2, x3 таких, что
(4)
Для любой координаты существует одна из четырех возможностей:
В первом случае при предъявлении сети q-го эталона в силу формулы (3) получаем
так как все скалярные произведения положительны по условию (4). Аналогично получаем в четвертом случае x'j = -1.
Во втором случае рассмотрим отдельно три варианта
так как скалярный квадрат любого образа равен n, а сумма двух любых скалярных произведений эталонов больше n, по условию (4). Таким образом, независимо от предъявленного эталона получаем x'j = 1. Аналогично в третьем случае получаем x'j = -1.
Окончательный вывод таков: если эталоны удовлетворяют условиям (4), то при предъявлении любого эталона на выходе всегда будет один образ. Этот образ может быть эталоном или «химерой», составленной, чаще всего, из узнаваемых фрагментов различных эталонов (примером «химеры» может служить образ, приведенный на рис. 1 г). Рассмотренный ранее пример с буквами детально иллюстрирует такую ситуацию.
Приведенные выше соображения позволяют сформулировать требование, детализирующие понятие «слабо коррелированных образов». Для правильного распознавания всех эталонов достаточно (но не необходимо) потребовать, чтобы выполнялось следующее неравенство
Более простое и наглядное, хотя и более сильное условие можно записать в виде
Из этих условий видно, что, чем больше задано эталонов, тем более жесткие требования предъявляются к степени их коррелированности, тем ближе они должны быть к ортогональным.
Рассмотрим преобразование (3) как суперпозицию двух преобразований:
(5)
Обозначим через
— линейное пространство, натянутое на множество эталонов. Тогда первое преобразование в (5) переводит векторы из Rn в L({xi}). Второе преобразование в (5) переводит результат первого преобразования Px в одну из вершин гиперкуба образов. Легко показать, что второе преобразование в (5) переводит точку Px в ближайшую вершину гиперкуба. Действительно, пусть a и b две различные вершины гиперкуба такие, что a — ближайшая к Px, а b = x'.
Из того, что a и b различны следует, что существует множество индексов, в которых координаты векторов a и b различны. Обозначим это множество через I = {i : ai = -bi}. Из второго преобразования в (5) и того, что b = x', следует, что знаки координат вектора Px всегда совпадают со знаками соответствующих координат вектора b. Учитывая различие знаков i-х координат векторов a и Px при i ∈ I можно записать |ai-(Px)i| = |ai|+|(Px)i| = 1+|(Px)i|. Совпадение знаков i-х координат векторов b и Px при i ∈ I позволяет записать следующее неравенство |bi-(Px)i| = ||bi|-|(Px)i| < 1+|(Px)i|. Сравним расстояния от вершин a и b до точки Px
Полученное неравенство противоречит тому, что a — ближайшая к Px. Таким образом, доказано, что второе преобразование в (5) переводит точку Px в ближайшую вершину гиперкуба образов.
Ортогональные сети
Для обеспечения правильного воспроизведения эталонов вне зависимости от степени их коррелированности достаточно потребовать, чтобы первое преобразование в (5) было таким, что xi = Pxi [67]. Очевидно, что если проектор является ортогональным, то это требование выполняется, поскольку x = Px при x ∈L({xi}), а xj ∈L({xi}) по определению множества L({xi}).
Для обеспечения ортогональности проектора воспользуемся дуальным множеством векторов. Множество векторов V({xi}) называется дуальным к множеству векторов {xi}, если все векторы этого множества vj удовлетворяют следующим требованиям:
1. (xi, vi) = ςij; ςij = 0, при i ≠ j; ςij = 1 при i = j;
2. vj ∈L({xi}).
Преобразование
является ортогональным проектором на линейное пространство L({xi}).
Ортогональная сеть ассоциативной памяти преобразует образы по формуле
(6)
Дуальное множество векторов существует тогда и только тогда, когда множество векторов {xi} линейно независимо. Если множество эталонов {xi} линейно зависимо, то исключим из него линейно зависимые образы и будем рассматривать полученное усеченное множество эталонов как основу для построения дуального множества и преобразования (6). Образы, исключенные из исходного множества эталонов, будут по-прежнему сохраняться сетью в исходном виде (преобразовываться в самих себя). Действительно, пусть эталон x является линейно зависимым от остальных m эталонов. Тогда его можно представить в виде
Подставив полученное выражение в преобразование (6) и учитывая свойства дуального множества получим:
(7)
Рассмотрим свойства сети (6) [67]. Во-первых, количество запоминаемых и точно воспроизводимых эталонов не зависит от степени их коррелированности. Во-вторых, формально сеть способна работать без искажений при любом возможном числе эталонов (всего их может быть до 2n). Однако, если число линейно независимых эталонов (т. е. ранг множества эталонов) равно n, сеть становится прозрачной — какой бы образ не предъявили на ее вход, на выходе окажется тот же образ. Действительно, как было показано в (7), все образы, линейно зависимые от эталонов, преобразуются проективной частью преобразования (6) сами в себя. Значит, если в множестве эталонов есть n линейно независимых, то любой образ можно представить в виде линейной комбинации эталонов (точнее n линейно независимых эталонов), а проективная часть преобразования (6) в силу формулы (7) переводит любую линейную комбинацию эталонов в саму себя.
Если число линейно независимых эталонов меньше n, то сеть преобразует поступающий образ, отфильтровывая помехи, ортогональные всем эталонам.
Отметим, что результаты работы сетей (3) и (6) эквивалентны, если все эталоны попарно ортогональны.
Остановимся несколько подробнее на алгоритме вычисления дуального множества векторов. Обозначим через Γ({xi}) матрицу Грама множества векторов {xi}.
Элементы матрицы Грама имеют вид γij = (xi, xj) (ij-ый элемент матрицы Грама равен скалярному произведению i-го эталона на j-ый). Известно, что векторы дуального множества можно записать в следующем виде:
(8)
где γij-1 — элемент матрицы Γ-1({xi}). Поскольку определитель матрицы Грама равен нулю, если множество векторов линейно зависимо, то матрица, обратная к матрице Грама, а следовательно и дуальное множество векторов существует только тогда, когда множество эталонов линейно независимо.
Для работ сети (6) необходимо хранить эталоны и матрицу Γ-1({xi}).
Рассмотрим процедуру добавления нового эталона к сети (6). Эта операция часто называется дообучением сети. Важным критерием оценки алгоритма формирования сети является соотношение вычислительных затрат на обучение и дообучение. Затраты на дообучение не должны зависеть от числа освоенных ранее эталонов.
Для сетей Хопфилда это, очевидно, выполняется — добавление еще одного эталона сводится к прибавлению к функции H одного слагаемого (x, xm+1)², а модификация связей в сети — состоит в прибавлении к весу ij-й связи числа xim+1xjm+1 — всего n² операций.