5.6 KiB
status, type, tags, created, updated, title
| status | type | tags | created | updated | title |
|---|---|---|---|---|---|
| seed | concept | 2026-05-14 | 2026-05-14 | КР - Хопфилд |
КР - Хопфилд
Что могут спросить
- Что такое сеть Хопфилда и для чего она нужна?
- Почему сеть Хопфилда относится к ассоциативной памяти?
- Какая у неё архитектура?
- Как кодируются входные и эталонные образы?
- Как рассчитываются веса?
- Как сеть восстанавливает искажённый образ?
- Какие есть ограничения?
- Чем сеть Хопфилда отличается от сети Хэмминга?
Краткий ответ
Сеть Хопфилда - однослойная рекуррентная нейронная сеть ассоциативной памяти. Она хранит набор эталонных образов и по искажённому или неполному входу пытается восстановить ближайший эталон.
Если вход похож на один из запомненных образов, сеть в процессе итераций приходит к устойчивому состоянию, соответствующему этому образу.
Архитектура
- один слой нейронов;
- каждый нейрон связан с другими нейронами;
- выходы нейронов возвращаются на входы;
- связей нейрона с самим собой обычно нет;
- веса задаются один раз по эталонным образам;
- состояние сети пересчитывается до стабилизации.
Входной и выходной векторы имеют одинаковую размерность:
X=(x_1,\dots,x_n),\quad x_i \in \{-1,1\}
Эталонный образ:
X^k=(x_1^k,\dots,x_n^k),\quad k=1,\dots,m
где:
n- число нейронов и размерность образа;m- число запоминаемых эталонов;k- номер эталонного образа.
Инициализация весов
Веса рассчитываются по эталонным образам:
w_{ij}=\sum\limits_{k=1}^{m}x_i^kx_j^k,\quad i\neq j
Связь нейрона с самим собой исключается:
w_{ii}=0
Смысл: если два признака часто имеют одинаковый знак в эталонах, связь между ними усиливается; если разные знаки - связь становится отрицательной.
Алгоритм функционирования
- На вход подаётся неизвестный или искажённый образ.
Начальное состояние сети:
y_i(0)=x_i,\quad i=0,\dots,n-1
- Для каждого нейрона считается новое состояние:
s_j(p+1)=\sum\limits_{i=1}^{n-1}w_{ij}y_i(p)
- Значение нейрона обновляется через пороговую функцию:
y_j(p+1)=f(s_j(p+1))
где обычно:
f(s)=
\begin{cases}
1, & s \ge 0 \\
-1, & s < 0
\end{cases}
- Шаги повторяются, пока выходы не перестанут изменяться.
Если распознавание успешно:
Y=X^k
То есть сеть восстановила один из эталонных образов.
Ограничения
Сеть Хопфилда может ошибиться, если:
- запомнено слишком много образов;
- эталоны слишком похожи друг на друга;
- вход слишком сильно искажён;
- сеть пришла к ложному устойчивому состоянию.
Оценка ёмкости:
m \approx 0.15n
где m - число запоминаемых образов, n - число нейронов.
Отличие от сети Хэмминга
| Сеть | Что выдаёт | Когда нужна |
|---|---|---|
| Хопфилда | восстановленный образ | нужно восстановить полный эталон |
| Хэмминга | номер ближайшего образа | нужно выбрать класс/эталон |
Главная фраза для ответа: сеть Хопфилда восстанавливает образ, а сеть Хэмминга выбирает ближайший образец по расстоянию Хэмминга.
Мини-ответ на контрольной
Сеть Хопфилда - рекуррентная сеть ассоциативной памяти для восстановления эталонного бинарного образа по искажённому входу. Веса рассчитываются один раз по эталонам:
w_{ij}=\sum\limits_{k=1}^{m}x_i^kx_j^k,\quad w_{ii}=0
После подачи входа сеть итеративно пересчитывает состояния нейронов через пороговую функцию, пока выходной вектор не стабилизируется. Если всё прошло успешно, устойчивое состояние совпадает с одним из эталонов.