155 lines
6.2 KiB
Markdown
155 lines
6.2 KiB
Markdown
---
|
|
status: seed
|
|
type: concept
|
|
tags: []
|
|
created: 2026-05-14
|
|
updated: 2026-05-14
|
|
title: КР - Хэмминг
|
|
---
|
|
|
|
# КР - Хэмминг
|
|
|
|
## Что могут спросить
|
|
|
|
1. Что такое сеть Хэмминга и для чего она нужна?
|
|
2. Что такое расстояние Хэмминга?
|
|
3. Какая архитектура у сети Хэмминга?
|
|
4. Как задаются веса первого слоя?
|
|
5. Зачем нужен второй слой?
|
|
6. Как работает взаимное торможение нейронов?
|
|
7. Почему сеть Хэмминга экономнее сети Хопфилда?
|
|
8. Чем сеть Хэмминга отличается от сети Хопфилда?
|
|
|
|
## Краткий ответ
|
|
|
|
**Сеть Хэмминга** - нейронная сеть ассоциативной памяти, которая выбирает ближайший эталонный образ. Она не восстанавливает образ полностью, а определяет, какому эталону или классу соответствует вход.
|
|
|
|
Идея: найти эталон с минимальным расстоянием Хэмминга до входного вектора.
|
|
|
|
## Расстояние Хэмминга
|
|
|
|
Расстояние Хэмминга - число позиций, в которых два бинарных вектора отличаются.
|
|
|
|
Пример:
|
|
|
|
$$
|
|
X=(1,0,1,1),\quad Y=(1,1,0,1)
|
|
$$
|
|
|
|
Отличаются 2 позиции, значит:
|
|
|
|
$$
|
|
d_H(X,Y)=2
|
|
$$
|
|
|
|
Для бинарных векторов:
|
|
|
|
$$
|
|
d_H(X,Y)=\sum\limits_{i=1}^{n}[x_i\neq y_i]
|
|
$$
|
|
|
|
## Архитектура
|
|
|
|
Сеть состоит из двух слоёв:
|
|
|
|
1. **Первый слой** - сравнивает входной образ со всеми эталонами.
|
|
2. **Второй слой** - реализует конкуренцию между эталонами и оставляет одного победителя.
|
|
|
|
Если есть $m$ эталонов, то в первом и втором слоях по $m$ нейронов.
|
|
|
|
Нейроны первого слоя имеют $n$ входов, где $n$ - размерность образа.
|
|
|
|
Во втором слое:
|
|
|
|
- связь нейрона с самим собой имеет вес $+1$;
|
|
- связи с другими нейронами имеют отрицательный вес $-\varepsilon$;
|
|
- параметр $\varepsilon$ выбирают так:
|
|
|
|
$$
|
|
0<\varepsilon<\frac{1}{m}
|
|
$$
|
|
|
|
## Инициализация
|
|
|
|
Пусть $x_i^k$ - $i$-й элемент $k$-го эталонного образа.
|
|
|
|
Веса первого слоя:
|
|
|
|
$$
|
|
w_{ik}=\frac{x_i^k}{2}
|
|
$$
|
|
|
|
Порог:
|
|
|
|
$$
|
|
T_k=\frac{n}{2}
|
|
$$
|
|
|
|
где:
|
|
|
|
- $i=0,\dots,n-1$;
|
|
- $k=0,\dots,m-1$;
|
|
- $n$ - размерность входного образа;
|
|
- $m$ - число эталонов.
|
|
|
|
## Алгоритм функционирования
|
|
|
|
1. На вход подаётся неизвестный вектор:
|
|
|
|
$$
|
|
X=\{x_i:i=0,\dots,n-1\}
|
|
$$
|
|
|
|
2. Первый слой вычисляет начальную близость входа к каждому эталону:
|
|
|
|
$$
|
|
y_j^{(1)}=s_j^{(1)}=\sum\limits_{i=1}^{n-1}w_{ij}x_i+T_j
|
|
$$
|
|
|
|
3. Эти значения передаются во второй слой:
|
|
|
|
$$
|
|
y_j^{(2)}=y_j^{(1)}
|
|
$$
|
|
|
|
4. Во втором слое запускается конкуренция:
|
|
|
|
$$
|
|
s_j^{(2)}(p+1)=y_j^{(2)}(p)-\varepsilon\sum\limits_{\substack{k=0\\k\neq j}}^{m-1}y_k^{(2)}(p)
|
|
$$
|
|
|
|
5. Затем применяется пороговая функция:
|
|
|
|
$$
|
|
y_j^{(2)}(p+1)=f(s_j^{(2)}(p+1))
|
|
$$
|
|
|
|
6. Итерации продолжаются, пока выходы второго слоя не стабилизируются.
|
|
|
|
В конце активным должен остаться один нейрон. Его номер соответствует ближайшему эталону.
|
|
|
|
## Смысл второго слоя
|
|
|
|
Второй слой нужен для выбора победителя. Нейроны взаимно тормозят друг друга: чем сильнее активен один кандидат, тем сильнее он подавляет остальных.
|
|
|
|
В итоге остаётся нейрон, соответствующий эталону с наибольшей похожестью и минимальным расстоянием Хэмминга.
|
|
|
|
## Почему первый слой условный
|
|
|
|
Первый слой используется только один раз - чтобы посчитать начальные значения похожести. После этого сеть работает только со вторым слоем.
|
|
|
|
Поэтому первый слой можно заменить матрицей весов и обычным вычислением близости.
|
|
|
|
## Отличие от сети Хопфилда
|
|
|
|
| Сеть | Что делает | Результат |
|
|
|---|---|---|
|
|
| Хопфилда | восстанавливает образ | полный эталонный вектор |
|
|
| Хэмминга | сравнивает с эталонами | номер ближайшего эталона |
|
|
|
|
Сеть Хэмминга обычно требует меньше памяти и вычислений, потому что ей не нужно восстанавливать весь образ через полную рекуррентную динамику.
|
|
|
|
## Мини-ответ на контрольной
|
|
|
|
Сеть Хэмминга - сеть ассоциативной памяти для выбора ближайшего эталонного образа. Она основана на расстоянии Хэмминга, то есть числе несовпадающих битов. Первый слой вычисляет близость входа к каждому эталону, второй слой через отрицательные обратные связи подавляет слабые варианты. В результате активным остаётся один выходной нейрон, соответствующий ближайшему образцу.
|