В сети Хопфилда есть обратные связи и из-за этого нужно решать проблему устойчивости. Веса между нейронами в сети Хопфилда могут рассматриваться в виде матрицы взаимодействий
. Было показано, что сеть с обратными связями является устойчивой, если ее матрица симметрична и имеет нули на главной диагонали. Имеется много устойчивых систем, например, все сети прямого распространения, а так же современные рекуррентные сети Джордана и Элмана, для которых не обязательно выполнять условие на симметрию. Но это происходит вследствие того, что на обратные связи наложены другие ограничения. В случае сети Хопфилда условие симметричности является необходимым, но не достаточным, в том смысле, что на достижение устойчивого состояния влияет еще и режим работы сети. Ниже будет показано, что только асинхронный режим работы сети гарантирует достижение устойчивого состояния сети, в синхронном случае возможно бесконечное переключение между двумя разными состояниями (такая ситуация называется динамическим аттрактором, в то время как устойчивое состояние принято называть статическим аттрактором).Запоминаемые векторы должны иметь бинарный вид. После этого происходит расчет весовых коэффициентов по следующей формуле :
(5) |
где
- размерность векторов, – число запоминаемых выходных векторов; – номер запоминаемого выходного вектора; – i-я компонента запоминаемого выходного j-го вектора.Это выражение может стать более ясным, если заметить, что весовая матрица W может быть найдена вычислением внешнего произведения каждого запоминаемого вектора с самим собой и суммированием матриц, полученных таким образом. Это может быть записано в виде
(6) |
где
– i-й запоминаемый вектор-строка.Расчет этих весовых коэффициентов и называется обучением сети.
Как только веса заданы, сеть может быть использована для получения запомненного выходного вектора по данному входному вектору, который может быть частично неправильным или неполным. Для этого выходам сети сначала придают значения этого начального вектора. Затем сеть последовательно меняет свои состояния согласно формуле:
(7) |
где F — функция активации,
и - текущее и следующее состояния сети, до тех пор, пока состояния и не совпадут (или, в случае синхронного режима работы, не совпадут состояния с и одновременно с ). Именно этот процесс называется конвергенцией сети. Полученное устойчивое состояние Xi (статический аттрактор), или, возможно, в синхронном случае пара (динамический аттрактор), является ответом сети на данный входной образ.Для сети Хэмминга на стадии инициализации весовым коэффициентам первого слоя и порогу активационной функции присваиваются следующие значения:
(8) |
Здесь
– i-ый элемент k-ого образца.Весовые коэффициенты тормозящих синапсов во втором слое берут равными некоторой величине
. Синапс нейрона, связанный с его же аксоном имеет вес +1.Так как сети с обратными связями имеют пути, передающие сигналы от выходов к входам, то отклик таких сетей является динамическим, т. е. после приложения нового входа вычисляется выход и, передаваясь по сети обратной связи, модифицирует вход. Затем выход повторно вычисляется, и процесс повторяется снова и снова. Для устойчивой сети последовательные итерации приводят к все меньшим изменениям выхода, пока в конце концов выход не становится постоянным. Для некоторых сетей процесс никогда не заканчивается, такие сети называют неустойчивыми. Проблема устойчивости будет рассмотрена в следующем разделе, а здесь мы рассмотрим основной цикл работы сети.
Как только веса заданы, сеть может быть использована для получения запомненного выходного вектора по данному входному вектору, который может быть частично неправильным или неполным. Для этого выходам сети сначала придают значения этого начального вектора. Затем сеть последовательно меняет свои состояния согласно формуле:
(9) |
где
- функция активации, и - текущее и следующее состояния сети, до тех пор, пока состояния и не совпадут (или, в случае синхронного режима работы, не совпадут состояния с и одновременно с X(t)). Именно этот процесс называется конвергенцией сети.Это же можно описать так называемым локальным полем
действующим на нейрон со стороны всех остальных нейронов сети: (10) |
После расчета локального поля нейрона
это значение используется для расчета значения выхода через функцию активации, которая в данном случае является пороговой (с нулевым порогом). Соответственно, значение выхода нейрона i в текущий момент времени рассчитывается по формуле: (11) |
, где
- весовой коэффициента между нейронами i и j, - значения выходов нейрона j в предыдущий момент времени.Во время работы сети Хопфилда признаком нахождения решения является момент, когда достигается аттрактор, статический (когда на каждом следующем шаге повторяется устойчивое состояние
) или, возможно, динамический (когда до бесконечности чередуются два разных состояния ). Это конечное состояние сети и является ее реакцией на данный образ.Обычно ответом является такое устойчивое состояние, которое совпадает с одним из запомненных при обучении векторов, однако при некоторых условиях (в частности, при слишком большом количестве запомненных образов) результатом работы может стать так называемый ложный аттрактор ("химера"), состоящий из нескольких частей разных запомненных образов, а также в синхронном режиме сеть может прийти к динамическому аттрактору. Обе эти ситуации в общем случае являются нежелательными, поскольку не соответствуют ни одному запомненному вектору - а соответственно, не определяют класс, к которому сеть отнесла входной образ.
Идея работы сети Хэмминга состоит в нахождении расстояния Хэмминга от тестируемого образа до всех образцов. Расстоянием Хэмминга называется число отличающихся битов в двух бинарных векторах. Сеть должна выбрать образец с минимальным расстоянием Хэмминга до неизвестного входного сигнала, в результате чего будет активизирован только один выход сети, соответствующий этому образцу.