Сети Хопфилда
Наиболее известной сетью ассоциативной памяти является сеть Хопфилда [8.1]. В основе сети Хопфилда лежит следующая идея - запишем систему дифференциальных уравнений для градиентной минимизации "энергии" H (функции Ляпунова). Точки равновесия такой системы находятся в точках минимума энергии. Функцию энергии будем строить из следующих соображений:
- Каждый эталон должен быть точкой минимума.
- В точке минимума все координаты образа должны иметь значения
Функция
не удовлетворяет этим требованиям строго, но можно предполагать, что первое слагаемое обеспечит притяжение к эталонам (для вектора x фиксированной длины максимум квадрата скалярного произведения
достигается при x=xi), а второе слагаемое - приблизит к единице абсолютные величины всех координат точки минимума. Величина характеризует соотношение между этими двумя требованиями и может меняться со временем.Используя выражение для энергии, можно записать систему уравнений, описывающих функционирование сети Хопфилда:
(1) |
Сеть Хопфилда в виде (1) является сетью с непрерывным временем. Это, быть может, и удобно для некоторых вариантов аналоговой реализации, но для цифровых компьютеров лучше воспользоваться сетями, функционирующими в дискретном времени - шаг за шагом.
Построим сеть Хопфилда с дискретным временем. Сеть должна осуществлять преобразование входного вектора
так, чтобы выходной вектор был ближе к тому эталону, который является правильным ответом. Преобразование сети будем искать в следующем виде:(2) |
где
- вес -го эталона, характеризующий его близость к вектору - нелинейный оператор, переводящий вектор с координатами в вектор с координатами .Функционирование сети. Сеть работает следующим образом:
- На вход сети подается образ а на выходе снимается образ
- Если то полагаем и возвращаемся к шагу 1.
- Полученный вектор является ответом.
Таким образом, ответ всегда является неподвижной точкой преобразования сети (2) и именно это условие (неизменность при обработке образа сетью) и является условием остановки.