Открыть сервис

Сеть Хопфилда

Сеть Хопфилда — это рекуррентная искусственная нейронная сеть, служащая моделью ассоциативной памяти. Она способна восстанавливать целостные образы (паттерны) по их фрагментам или зашумленным версиям, а также решать задачи оптимизации. Сеть была предложена американским физиком Джоном Хопфилдом в 1982 году и стала одной из первых моделей, продемонстрировавших связь между нейронными сетями и физическими системами, в частности, спиновыми стеклами.

История

Идея использования нейронных сетей для моделирования памяти восходит к работам Уоррена Маккаллока и Уолтера Питтса (1943), а также к модели линейной ассоциативной памяти Тэво Кохонена (1972). Однако ключевой прорыв произошел в 1982 году, когда Джон Хопфилд, физик из Калифорнийского технологического института, опубликовал статью «Neural networks and physical systems with emergent collective computational abilities». В ней он показал, что простая рекуррентная сеть с симметричными связями может быть описана с помощью энергетической функции, аналогичной функции Гамильтона в физике. Это позволило строго математически доказать сходимость сети к устойчивым состояниям (аттракторам), которые соответствуют запомненным образам. Работа Хопфилда вызвала значительный интерес и способствовала возрождению исследований в области нейронных сетей после периода «зимы искусственного интеллекта».

Архитектура и принцип работы

Структура

Сеть Хопфилда состоит из одного слоя нейронов, каждый из которых соединен со всеми остальными, но не с самим собой. Количество нейронов N определяет размерность пространства состояний сети. Состояние i-го нейрона в дискретный момент времени t обозначается как \( S_i(t) \) и может принимать значения +1 (активен) или -1 (неактивен). В непрерывных версиях сети состояния могут быть действительными числами, например, в диапазоне от 0 до 1.

Связи между нейронами являются симметричными: вес связи от нейрона i к нейрону j равен весу связи от j к i (\( w_{ij} = w_{ji} \)). Диагональные элементы (связи нейрона с самим собой) обычно полагаются равными нулю (\( w_{ii} = 0 \)), чтобы избежать тривиальных устойчивых состояний.

Динамика и обновление

Сеть работает в дискретном времени. На каждом шаге нейроны обновляют свои состояния по правилу: \[ S_i(t+1) = \text{sign}\left( \sum_{j=1}^{N} w_{ij} S_j(t) - \theta_i \right) \] где \( \theta_i \) — порог активации i-го нейрона (часто принимается равным 0). Функция sign возвращает +1, если аргумент положителен, и -1, если отрицателен. При нулевом аргументе состояние нейрона может остаться неизменным.

Обновление может быть синхронным (все нейроны обновляются одновременно) или асинхронным (нейроны обновляются по одному, например, в случайном порядке). Асинхронное обновление гарантирует сходимость к локальному минимуму энергетической функции.

Энергетическая функция

Ключевым свойством сети Хопфилда является существование функции Ляпунова, называемой энергией сети: \[ E = -\frac{1}{2} \sum_{i=1}^{N} \sum_{j=1}^{N} w_{ij} S_i S_j + \sum_{i=1}^{N} \theta_i S_i \] При асинхронном обновлении энергия сети монотонно убывает или остается неизменной, что гарантирует сходимость к одному из локальных минимумов. Эти минимумы и являются запомненными образами (аттракторами). Каждому образу соответствует определенная конфигурация состояний нейронов, для которой энергия минимальна.

Обучение и запоминание образов

Обучение сети Хопфилда заключается в настройке весов связей таким образом, чтобы запомнить набор из M эталонных образов (паттернов). Каждый образ представляет собой вектор длины N из значений +1 и -1. Наиболее распространенным методом является правило Хебба, основанное на гипотезе Дональда Хебба (1949): «нейроны, которые возбуждаются вместе, связываются вместе». Формула для вычисления веса связи между нейронами i и j: \[ w_{ij} = \frac{1}{N} \sum_{\mu=1}^{M} \xi_i^\mu \xi_j^\mu \] где \( \xi_i^\mu \) — состояние i-го нейрона в μ-м образе. Для обеспечения симметричности и нулевых диагональных элементов веса вычисляются для всех i ≠ j.

Свойства и ограничения

Емкость памяти

Максимальное количество образов M, которое может надежно хранить сеть Хопфилда, приблизительно равно 0,14N (для случайных, некоррелированных образов). При превышении этого предела сеть начинает генерировать ложные аттракторы (спуриозные состояния), которые являются линейными комбинациями запомненных образов, и теряет способность к правильному восстановлению. Для коррелированных образов емкость может быть еще меньше.

Ассоциативная память

Сеть способна восстанавливать образ по его искаженной или неполной версии. Если подать на вход сети состояние, близкое к одному из запомненных образов, динамика приведет к ближайшему аттрактору. Это свойство называется конвергенцией к прототипу.

Локальные минимумы

Сеть сходится к локальному, а не глобальному минимуму энергии. Это означает, что если начальное состояние находится далеко от всех запомненных образов, сеть может «застрять» в ложном аттракторе, не соответствующем ни одному из эталонов.

Применение

Восстановление изображений и распознавание образов

Сеть Хопфилда использовалась для восстановления зашумленных или поврежденных изображений, таких как буквы, цифры или простые геометрические фигуры. Однако из-за низкой емкости и чувствительности к корреляции образов она неэффективна для сложных задач распознавания.

Решение задач оптимизации

В 1985 году Джон Хопфилд и Дэвид Тэнк показали, что сеть Хопфилда может быть использована для решения комбинаторных задач оптимизации, таких как задача коммивояжера. Энергетическая функция в этом случае строится так, чтобы ее минимум соответствовал оптимальному решению. Однако метод часто находит лишь локальные оптимумы, а не глобальный минимум.

Моделирование памяти в нейробиологии

Сеть Хопфилда служит упрощенной моделью ассоциативной памяти в мозге. Она демонстрирует такие феномены, как конкуренция паттернов, забывание и образование ложных воспоминаний.

Критика и развитие

Основные недостатки классической сети Хопфилда — малая емкость памяти, склонность к ложным аттракторам и чувствительность к корреляции образов. Для преодоления этих ограничений были разработаны модификации:

  • Машина Больцмана — стохастическая версия сети Хопфилда, использующая вероятностное обновление нейронов для выхода из локальных минимумов.
  • Сеть Хопфилда с непрерывным временеммодель, в которой состояния нейронов изменяются непрерывно, что позволяет моделировать динамику более реалистично.
  • Модель с разреженными связями — сети, где не все нейроны соединены друг с другом, что повышает емкость.
  • Современные архитектуры (например, сети на основе трансформеров) вытеснили сеть Хопфилда из практических приложений, но она остается важной теоретической моделью.

Интересные факты

  • Работа Хопфилда 1982 года считается одной из самых цитируемых в области нейронных сетей.
  • Сеть Хопфилда стала первой моделью, в которой была введена энергетическая функция, что позволило применить методы статистической физики для анализа нейронных сетей.
  • В 1986 году Хопфилд и Тэнк продемонстрировали решение задачи коммивояжера для 10 городов с помощью сети, что вызвало большой резонанс, хотя впоследствии выяснилось, что метод не гарантирует нахождения оптимального маршрута.

Источники

  • Hopfield, J. J. (1982). Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences, 79(8), 2554–2558.
  • Hopfield, J. J., & Tank, D. W. (1985). “Neural” computation of decisions in optimization problems. Biological Cybernetics, 52(3), 141–152.
  • Хайкин, С. (2006). Нейронные сети: полный курс. 2-е издание. М.: Вильямс.
  • Амосов, Н. М. (1992). Нейрокомпьютеры и интеллектуальные роботы. Киев: Наукова думка.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →